MCPcopy Create free account
hub / github.com/ColmapView/Colmapview.github.io / writeFramesBinary

Function writeFramesBinary

src/parsers/colmapBinaryWriters.ts:153–180  ·  view source on GitHub ↗
(frames: Map<FrameId, Frame>)

Source from the content-addressed store, hash-verified

151 * Write frames.bin.
152 */
153export function writeFramesBinary(frames: Map<FrameId, Frame>): ArrayBuffer {
154 const writer = new BinaryWriter();
155
156 writer.writeUint64FromNumber(frames.size);
157
158 for (const frameId of sortedKeys(frames)) {
159 const frame = frames.get(frameId)!;
160
161 writer.writeUint32(frameId);
162 writer.writeUint32(frame.rigId);
163 writer.writeFloat64(frame.rigFromWorld.qvec[0]);
164 writer.writeFloat64(frame.rigFromWorld.qvec[1]);
165 writer.writeFloat64(frame.rigFromWorld.qvec[2]);
166 writer.writeFloat64(frame.rigFromWorld.qvec[3]);
167 writer.writeFloat64(frame.rigFromWorld.tvec[0]);
168 writer.writeFloat64(frame.rigFromWorld.tvec[1]);
169 writer.writeFloat64(frame.rigFromWorld.tvec[2]);
170 writer.writeUint32(frame.dataIds.length);
171
172 for (const dataMapping of frame.dataIds) {
173 writer.writeInt32(dataMapping.sensorId.type);
174 writer.writeUint32(dataMapping.sensorId.id);
175 writer.writeUint64FromNumber(dataMapping.dataId);
176 }
177 }
178
179 return writer.toArrayBuffer();
180}

Calls 7

writeUint64FromNumberMethod · 0.95
writeUint32Method · 0.95
writeFloat64Method · 0.95
writeInt32Method · 0.95
toArrayBufferMethod · 0.95
sortedKeysFunction · 0.90
getMethod · 0.80

Tested by

no test coverage detected