File > Import > PTS Point Cloud (.pts).x y z), 4 (+ intensity), 6 (+ rgb), or 7 (+ intensity + rgb, Leica canonical).File > Export > PTS Point Cloud (.pts).x y z [intensity] [r g b] rows.File > Import > PCD Point Cloud (.pcd).normal_x/y/z), intensity, and other per-point scalar fields as point attributes.ascii and binary DATA modes. binary_compressed (LZF) raises a clear "convert first" error rather than failing silently.File > Export > PCD Point Cloud (.pcd).HEIGHT = 1) with x y z + optional normal_x/y/z, packed rgb, and intensity.binary_compressed (LZF) read and write support. A pure-Python LZF codec (formats/_lzf.py) handles both decompression on read and compression on write — no new wheels. The PCD exporter's previous ASCII tickbox is replaced with a Data Mode dropdown: Binary (default) / Binary Compressed (LZF) / ASCII.File > Import > XYZ Point Cloud (.xyz, .txt, .csv).extra_* FLOAT attributes).#-prefixed comment lines.File > Export > XYZ Point Cloud (.xyz)._common.build_point_cloud). PCL convention is that depth-camera pixels with invalid range get NaN coordinates; one of those slipping into the bbox computation poisoned suggest_radius (which then returned NaN), so the radius shown in the N-panel was NaN and the cloud rendered invisibly. Triggered most visibly by office1.pcd and other organized RGB-D PCDs.suggest_radius is now NaN-safe as a defense-in-depth — strays in scenes created by other paths (Geometry Nodes, scripts) no longer break the panel's Auto button either.Initial release.
File > Import > E57 Point Cloud (.e57).cartesianInvalidState.File > Export > E57 Point Cloud (.e57).N → Point Cloud tab).÷10 / ÷2 / Auto / ×2 / ×10. The Auto button picks a radius from the cloud's bounding-box diagonal and density.pye57 0.4.19 and pyquaternion 0.9.9 cp313 wheels for macOS arm64, Linux x86_64, and Windows x86_64.