OptionaloriginOffset: readonly [number, number, number]
See decodeE57Packet's originOffset param. Applied to the decoded
cartesian ONLY when entry.pose is absent — a posed scan gets the
offset applied to the pose translation instead (by the caller, via
applyPoseInPlace's originOffset), so the un-rotated local cartesian
here is intentionally left unshifted when a pose is present.
Decode the binary section starting at
entry.binaryFileOffsetin the logical-bytes view. NOTE:binaryFileOffsethere must already point at the first DataPacket (i.e. AFTER the 32-byte CompressedVector section header) —decodeE57does this conversion viaresolveCompressedVectorDataOffset. Callers passing the raw XML offset directly will see a "bytestreamCount ≠ prototype length" mismatch.Supports Float (single/double), ScaledInteger (bit-packed integer with scale/offset), and Integer for cartesianX/Y/Z + colorRed/ Green/Blue + intensity. Other prototype fields are honoured for stride math but discarded.
Whole-file path: holds the entire scan in memory. The streaming
E57StreamingSourceshares the per-packet primitives above but reads the binary section incrementally so multi-GB files don't allocate the whole file at once.