.. index:: single: Point Clouds Point Clouds ============ IQcad can import, display, and export large point cloud datasets (hundreds of millions of points). Point cloud data is stored in an octree spatial index for efficient LOD (Level of Detail) rendering. .. index:: single: Importing a Point Cloud Importing a Point Cloud ----------------------- Use **Point Cloud › Import Point Cloud** or the ``IMPORTPOINTCLOUD`` command. Supported import formats: .. list-table:: :header-rows: 1 :widths: 15 85 * - Format - Description * - **LAS** - ASPRS LAS 1.0–1.4. XYZ, intensity, classification, RGB, return number. * - **LAZ** - LASzip-compressed LAS. Requires ``laszip.dll`` (Windows) or ``liblaszip.so`` (Linux) next to the executable. * - **XYZ / CSV / TXT** - Delimited text: X Y Z [R G B] [Intensity] [Classification]. * - **PTS / PTX** - Leica interchange formats. Header with point count, then X Y Z I R G B. * - **PLY** - Stanford PLY (ASCII and binary little-endian). Vertex x y z [red green blue]. * - **E57** - ASTM E2807 / libE57Format. Multi-scan files with XYZ, RGB and intensity. Requires the ``libE57CWrapper`` dynamic library next to the executable; if absent the format is silently disabled and does not appear in the import dialog. After import, an ``.iqpc`` octree cache file is created next to the source file. Subsequent opens load from cache in seconds instead of re-processing. .. index:: single: Attaching a Cache Attaching a Cache ----------------- Use **Point Cloud › Attach Point Cloud Cache** or ``ATTACHPOINTCLOUD`` to load an existing ``.iqpc`` file directly, without the original source file. .. index:: single: Exporting a Point Cloud Exporting a Point Cloud ----------------------- Use **Point Cloud › Export Point Cloud** or ``EXPORTPOINTCLOUD``. Supported export formats: LAS, LAZ, XYZ, PTS, PLY, E57. The export runs in a background thread with a progress bar and cancel support. E57 export emits a single scan with XYZ plus RGB and intensity (when the source cloud carries them). Intensity is normalised to the 0..1 Double range required by the E57 spec. As with import, E57 export needs the ``libE57CWrapper`` library at runtime. .. index:: single: Elevation Clipping Elevation Clipping ------------------ Use **Point Cloud › Elevation Clip** or the ``PCCLIP`` command to filter the visible points by elevation (Z) range. - ``PCCLIP 80 160`` — show only points with Z between 80 and 160. - ``PCCLIP OFF`` — disable clipping, show all points. - ``PCCLIP`` — display current clip state and cloud Z range. This is useful for viewing specific floor levels in building scans, isolating terrain from vegetation, or inspecting horizontal cross-sections. The clip range is saved with the drawing (IQZ file). .. index:: single: Point Cloud Display Point Cloud Display ------------------- Six colour modes are available (set via Object Inspector): - **True Colour** — uses RGB stored in each point. - **By Elevation** — maps Z to a blue→red colour ramp. - **By Intensity** — maps sensor return intensity to greyscale. - **By Classification** — LAS classification codes with standard colours. - **Single Colour** — flat colour for all points. - **By Return Number** — first/second/third returns in red/green/blue. Point size and attenuation are configurable. The adaptive LOD system automatically reduces detail at zoom-out to maintain interactive frame rates (default 5 million point budget). For a live Z readout of the nearest point under the cursor as you move the mouse — the point cloud counterpart of the surface Elevation Tracker — see the **Elevation Tracker** section (``PCELEVTRACK`` command) in :doc:`../civil/03_surfaces`. .. index:: single: Prospector Integration Prospector Integration ---------------------- The Civil Toolspace shows a **Point Clouds** node. Right-click on an individual point cloud for: - **Show / Hide** — toggle visibility. - **Zoom To** — fit the viewport to the point cloud bounds. - **Delete** — remove the point cloud from the drawing (with confirmation, undoable via Ctrl+Z).