How 360-geo/copc-converter works
copc_converter converts one or more LAS/LAZ files into COPC point-cloud files, with a typestate pipeline also exposed as a library. The documented workflow scans inputs, validates shared metadata, counts and partitions points, distributes scratch data, builds the octree, and writes the output. The map also includes documented memory budgeting, Extra Bytes/CRS handling, optional temporal indexing, and analysis tools. Stage ordering and tool capabilities come from the README; some internal calls are unsampled, so only indexed or documented relationships are shown.
Main entry points: lib.rs Typestate pipeline · writer.rs COPC writer · main.rs CLI entry point · octree.rs Octree build
Components 18
Conversion pipeline
- CLI entry point
src/main.rs - Typestate pipeline
src/lib.rs - Input scan
src/octree.rs - Metadata validation
src/validate.rs - Extra Bytes handling
src/extra_bytes.rs
Point processing
- Chunk planning
src/chunking.rs - Octree build
src/octree.rs - Node scratch storage
src/node_store.rs
COPC output
- COPC structures
src/copc_types.rs - COPC writer
src/writer.rs
Runtime controls
- Memory budgeting
src/memory_limit.rs
Analysis tools
- COPC inspection
src/bin/inspect_copc.rs - Local/HTTP source
src/tools/source.rs - HTTP range reader
src/tools/http_source.rs - Chunking preview
src/bin/preview_chunking.rs
Other components
- Converter user
- LAS/LAZ inputs
- COPC file
Connections 18
- Converter user → CLI entry point: runs
README.md - Converter user → Typestate pipeline: calls
README.md - LAS/LAZ inputs → Input scan: scanned from
README.md - CLI entry point → Typestate pipeline: configures and runs
src/main.rs - Typestate pipeline → Input scan: scans
README.md - Typestate pipeline → Metadata validation: validates
README.md - Metadata validation → Extra Bytes handling: uses
src/validate.rs - Typestate pipeline → Chunk planning: counts and plans
README.md - Typestate pipeline → Octree build: distributes and builds
README.md - Octree build → Node scratch storage: stores node data
src/octree.rs - Typestate pipeline → COPC writer: writes
README.md - COPC writer → Octree build: uses node hierarchy
src/writer.rs - COPC writer → COPC structures: serializes structures
src/writer.rs - COPC writer → COPC file: produces
README.md - CLI entry point → Memory budgeting: detects limits
README.md - COPC inspection → Local/HTTP source: reads local or remote
README.md - Local/HTTP source → HTTP range reader: delegates HTTP reads
src/tools/source.rs - Chunking preview → Chunk planning: analyzes chunks
README.md