What an E57 file actually holds
E57 (ASTM E2807) is the vendor-neutral exchange format for terrestrial laser scanning. Leica, Faro, Trimble, Riegl and Matterport all export it, which is why it is usually the file you get handed rather than the one you captured.
One E57 file is a project, not a single cloud. It holds a list of scans, each with its own points, its own sensor metadata, and its own pose — the rotation and translation that place it in a shared coordinate frame. A viewer that ignores the pose shows you one scan's worth of geometry with the rest stacked on top of it. This one applies it, which is why a 40-station building survey opens looking like a building.
Scans may store Cartesian X, Y and Z, or spherical range, azimuth and elevation — the form a rotating scanner measures in directly. Both are read here. Points can also be flagged invalid, which is how a scanner records a pulse that returned nothing; those are skipped rather than drawn as a spike at the scanner position, and the panel counts how many there were.
Measuring in an E57
Click any point and the panel beside the view reports its coordinates in the file's own frame — the scan's pose applied, the viewer's internal recentring removed — along with its intensity and RGB where the scan recorded them. Press M or hit Measure, click two points, and you get the 3D distance, the horizontal distance, the height difference and the slope. Metres or feet and inches. Measurements can be copied out as CSV, which is always written in metres whichever unit is on screen.
There is one thing worth understanding about what that number means, and the viewer states it rather than leaving you to find out. A multi-gigabyte project is drawn from a sample — every sixth point, or every five-hundredth — so a click selects the nearest point in the sample, not the nearest point in the file. The coordinates themselves are exact, straight out of the file. The uncertainty is in which point you got, and it is roughly the spacing between displayed points, which the panel shows alongside the stride. Measure a wall at 18 mm sample spacing and the answer is good to about that, not to the millimetre the numbers are printed to.
This is a property of E57 rather than a shortcut. The format stores points as a stream with no spatial index, so there is no way to ask "which point is under this pixel" without reading the entire file — which on a 20 GB project is not a click, it is a coffee break. For checking a ceiling height, a door width or a clearance, measuring against the sample is the right trade. Setting out is not: that needs every point, not a sample.
A horizontal slice through the scan
Press Floor plan, or P, and the view turns to look straight down through a thin horizontal slab of the scan. The camera switches to an orthographic lens, so a metre is the same length everywhere on screen. That is what makes the grid and the scale bar true rather than decorative, and it is the difference between a plan and a photo of a model taken from above.
The slice starts 1.2 m above the lowest floor in the file, which is where architectural plans cut: through doors and windows, above desks and most plant. Floors are found from the heights of the points themselves. A floor is thousands of points at one height and stands out against the walls, so the panel shows that height profile, marks the slice on it, and lists each level it found as a button. Cut height and thickness are sliders. The grid lands on whole metres of the file's own coordinates, so it agrees with the numbers a clicked point reports.
Measuring works inside the slice, and a click only reaches points that are drawn, so a wall-to-wall distance is taken between the walls rather than the floor beneath them. Drag to pan, scroll to zoom about the cursor, and shift-drag or right-drag to turn the drawing. What you are looking at is the scan's own points at that height, not a traced drawing. It shows where the walls are and how far apart; turning that into wall lines is a drafting job, and this is the reference to draft from.
The plan can be saved as a PNG, either the whole plan or the current view. Pick a ground resolution, such as 1 cm per pixel, or a print scale such as 1:100 at 300 dpi. The panel gives the size in pixels, and on paper, before anything is rendered. The image is rendered afresh at that resolution rather than screenshotted, and its footer states the cut height, the resolution and how sparsely the file was sampled. A PNG travels without this page, so it has to carry its own caveats. One of them is worth knowing in advance: pixels finer than the spacing between drawn points make the image bigger, not more detailed.
A vertical section
Section, or S, does the same thing standing up: a thin vertical slab, seen side-on through the same orthographic lens, with Z up the screen. It cuts across the file's X or Y axis, and a strip in the panel shows where the points are along that axis. Walls running across the cut are the spikes in it, so cutting between two of them shows the room and cutting through one shows its face. Other side turns round to look back the other way. Open it from the floor plan and it cuts through the middle of whatever the plan was showing.
It is where heights live: floor to ceiling, the depth of a beam, the clearance under a duct, the fall of a floor across a room. Measuring works inside the section exactly as it does in the plan. The grid sits on whole metres of the file's coordinates and of height, and the section exports as a PNG with the same footer, which states the axis, the cut position and which way it looks. It is a point-cloud section: the scan's points in a slab, not a drawn one.
What is in this file, before the points arrive
An E57's header and XML parse in milliseconds even when the point data runs to gigabytes, so the panel that says what you have received appears while the cloud is still loading: how many scan stations, how many points, whether it is registered, whether it is structured, whether it carries RGB, intensity, timestamps or imagery, and whether it names a coordinate system.
Those answers are the ones people actually need from a file somebody else produced. Registered means every scan carries a pose and the stations sit in one frame; unregistered means the file never said how they relate, and they will overlap. Structured means each scan kept its row and column grid, which some importers require and many exports drop. Each fact has a line explaining why it matters, and nothing is inferred — where the file does not say, the panel says the file does not say.
Why there is no classification option
The E57 standard defines no classification field. Not an optional one — none at all. Ground, vegetation and building codes are an ASPRS LAS concept, and nothing in an E57 file carries them.
So this viewer does not offer a classification colour mode, because a legend that shows ground, vegetation and building while shading every point identically is worse than no legend. Classification only becomes possible once a scan is in a format that has somewhere to record it — LAS or LAZ, where automatic classification can label ground, vegetation and buildings. Intensity is offered only where the scan recorded it, and RGB only where the scan was captured with imagery, for the same reason.
Checksums, and what "verified" means here
E57 is unusual among point cloud formats in being self-checking: the file is a sequence of 1 KB pages, each ending in a CRC-32C checksum. A corrupt transfer is therefore detectable rather than something you infer later from odd-looking geometry.
The header and the XML metadata are always verified, before any offset out of them is trusted. Verifying every page of point data costs real seconds per gigabyte, so it is a checkbox rather than a default — and the panel says which pages were checked instead of implying all of them were.
How large files are handled
The file is decoded in a Web Worker, streaming through it once. Points are taken at an even stride across every scan rather than from the beginning, so what you see is a fair sample of the whole project and not just its first station.
The display budget is 2 million points, shared across the scans in proportion to their size. Your file is never modified — this is a display limit, not a conversion.
Two details worth knowing, because they are where browser point cloud viewers usually go wrong. First, scan poses routinely put a cloud in projected coordinates hundreds of kilometres from the origin, where 32-bit floats resolve to decimetres and the cloud snaps to a visible lattice; every scan here is recentred on one shared origin before the cast, so the scans stay registered and stay smooth. Second, because every E57 attribute occupies a constant number of bits, subsampling is done by advancing bit cursors rather than by decoding and discarding — which is what makes striding a multi-gigabyte file cheap.
The imagery most tools throw away
An E57 file can carry the scanner's own photographs alongside the points, in a section called images2D, each with the pose that says where it was taken from. Terrestrial exporters fill it in as a matter of course and almost nothing reads it.
The viewer lists everything in that section — how many images, how they are projected, how large they are, and which scan each belongs to — and loads any one of them on request. Pixels are fetched only when asked for, because a scan project routinely carries more imagery than points: one 32-station export measured 110 MB of JPEG against 1.75 GB of points, and decoding all of it up front would be slower than the point cloud it sits beside.
What is in there varies by vendor, and the viewer reports what it finds rather than assuming. A Matterport sweep turns out to hold six 2048×2048 perspective faces at exactly 90° — a cubemap, in other words, a finished panorama per station. Faro, Leica and BLK files more often carry a single equirectangular image per station. And the standard also allows a visual reference image, which by definition has no projection parameters at all: those can be shown, but where they point cannot be recovered from the file, and the viewer says so instead of guessing.
Where the imagery is a cubemap, or any other perspective photo with a pose, the viewer can put you inside it. Enter a station's panorama and you stand exactly where the scanner stood, looking around through its own photographs; markers show the neighbouring stations and how far off each is, and a click walks you there. The first station is open to anyone; touring on from it asks you to sign in. Each photo is placed from its own pose rather than snapped to a tidy cube, which matters more than it sounds — every Matterport station measured so far sits a degree or so off level, and a cube that assumed otherwise would show the seams. A slider fades the point cloud in over the photographs, so whether the two agree is something you can see rather than take on trust.
What this viewer does not do
- No editing, registration or filtering. The floor-plan slice hides points on screen; the file itself is never cut.
- No traced wall lines or CAD output. The floor plan and the section are slices of the points, drawn to scale.
- No area or volume measurement, and no snapping to planes or edges. Distances are measured between two points you pick.
- No panorama tour for equirectangular imagery yet. Cubemap and perspective photos can be walked through; the single 360° image that Faro and Leica files usually carry is shown flat for now.
- No E57 export — this reads E57, it does not write it.
That list is deliberate. Reading and drawing is what lets this open a multi-gigabyte project in a browser tab in seconds, with no install and no upload — and each of those omissions is a thing that would have cost that. This is for the moment you have a scan, a browser, and one question about it.
It does not write E57 — but it does write LAS. Converting E57 to LAS or LAZ is a separate tool on this site: it applies each scan's pose, writes every station into one LAS 1.4 or LAZ file with the scan number kept as the point source ID, and carries colour and intensity across. What it cannot carry — the imagery, and the per-scan structure itself — it names before it runs, because flattening a scan project into a flat point list is a one-way trip.
Once the points are in LAS or LAZ, the rest of the toolbox applies: view them in 3D, label ground, vegetation and buildings, or read the header and coordinate system.