Application: mm-viewer
GUI application to visualize metric map files (.mm).
Supported input file types
Metric map files (
.mm): the native mp2p_icp format, containing one or more named layers of arbitrary map types.Binary point cloud files (
.bin): files containing an externally-storedmrpt::maps::CGenericPointsMap-derived object, serialized with MRPT’sCCompressedInputStream(supports uncompressed, gzip, and zstandard formats). The deserialized cloud is loaded as a single layer named after the file stem.
Usage
USAGE:
mm-viewer [-s <scene.3dscene>] ... [-t <trajectory.tum>] [-l
<foobar.so>] [--] [--version] [-h] <myMap.mm>
Where:
-s <scene.3dscene>, --add-3d-scene <scene.3dscene> (accepted multiple
times)
Adds an extra 3D scene file (*.3dscene) for visualization.
-t <trajectory.tum>, --trajectory <trajectory.tum>
Also draw a trajectory, given by a TUM file trajectory.
-l <foobar.so>, --load-plugins <foobar.so>
One or more (comma separated) *.so files to load as plugins
--, --ignore_rest
Ignores the rest of the labeled arguments following this flag.
--version
Displays version information and exits.
-h, --help
Displays usage information and exits.
<myMap.mm>
Load this metric map file (``*.mm``) or binary point cloud (``*.bin``)
Measuring distances
Press Measure in the Map viewer panel, then click two points in the 3D view.
Points are picked on the horizontal plane at the height given in the Z box (default: 0).
The distance (in map units, i.e. meters) is drawn as a double-headed arrow with its length,
and also shown in the panel together with its dx, dy components. Press Esc or
the clear button to remove it.
Camera fly-by videos
The Travelling panel defines a camera path from keyframes:
Move the camera to a desired view, set the keyframe time (seconds) and press Add current view. Repeat for each keyframe. Keyframes in the list can be selected and then moved to (Go to, or double-click), replaced by the current view (Update), or deleted. Save path… / Load path… store the path as a text file with one
t x y z azimuth_deg elevation_deg zoomline per keyframe.Play previews the path in real time.
Linearinterpolation moves at constant speed between keyframes, whileSpline(Catmull-Rom) passes through all of them with smooth velocity. The time slider moves the camera to any point of the path.Record renders every frame off-screen at the given size and FPS, and saves them as
frame_000000.png,frame_000001.png, … in the chosen folder. Encode them into a video with, for example:ffmpeg -framerate 30 -i mm-viewer-frames/frame_%06d.png -c:v libx264 -pix_fmt yuv420p video.mp4