This is a standalone project to make viewing massive point clouds easy and convenient. It was build to serve the needs of the Cartographer project, but is useful in its own right.
The project consist of a root crate that can build and read octrees on disk and viewer binaries to visualize the data.
First, install Rust: curl https://sh.rustup.rs -sSf | sh
.
See https://rustup.rs for details.
In the root of the repo, run cargo build --release
.
Then use target/release/build_octree
to generate an octree out of a PLY file.
The web_viewer
consists of TypeScript code running in the browser and a web server binary.
To build,
- Change into the web viewer's client directory:
cd web_viewer/client
. - Install npm. We strongly suggest using nvm.
- Install javascript dependencies:
npm install
. - Build the client:
npm run build
.
Then build the server: cargo build --release
.
Serve up the octree using web_viewer/target/release/web_viewer <octree directory>
, open Chrome to http://localhost:5433, navigate with WASD and left-click-drag on the mouse.
The mouse wheel adjusts movement speed.
The client files (HTML and JavaScript) are embedded in the web_viewer
binary, so it is fully stand alone.
This is a native client using SDL2. It is a new tool and incomplete. For now, prefer the web viewer.
Build with cargo build --release
, run with target/release/sdl_viewer <octree directory>
.
This work was inspired through the following projects.