-
Notifications
You must be signed in to change notification settings - Fork 0
Conversation
WalkthroughAdds a PotreeConverter project with C++20 build, point-cloud chunking/refinement, octree hierarchy construction, multiple samplers, concurrent/writer and monitor utilities, LAS attribute handling, debug exporters, and integrates a complete Brotli compression subtree (encoder, decoder, build scripts, and support libraries). Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Main as main.cpp
participant Chunker as Chunker
participant Refiner as ChunkRefiner
participant Indexer as Indexer
participant Writer as ConcurrentWriter
participant Monitor as Monitor
Main->>Chunker: doChunking(sources, targetDir, bounds)
Chunker->>Chunker: read headers and write chunk files
Chunker->>Refiner: refine(targetDir, state)
Refiner->>Refiner: getChunks(pathIn) -> select large chunks
Refiner->>Refiner: refineChunk() (parallel Morton grid counting)
Refiner->>Indexer: submit refined chunkParts
Indexer->>Indexer: build octree nodes & hierarchy (async flush)
Indexer->>Writer: writeAndUnload(node)
Writer->>Writer: batch & flush files to disk (multi-threaded)
Monitor->>Main: periodic status updates (progress, throughput, RAM)
sequenceDiagram
autonumber
participant Stream as CompressedInput
participant Decoder as BrotliDecoder
participant BitReader as BrotliBitReader
participant Huffman as HuffmanBuilder
participant Output as RingBuffer
Stream->>Decoder: BrotliDecoderDecompressStream()
Decoder->>BitReader: BrotliInitBitReader / Warmup
BitReader->>BitReader: fill bit window
Decoder->>Huffman: build/load Huffman tables for metablock
Huffman->>Decoder: provide decode symbols
Decoder->>Output: emit literals & copies into ring buffer
Decoder->>Decoder: repeat per metablock until finished
Estimated code review effort🎯 5 (Critical) | ⏱️ ~120+ minutes Areas needing focused review:
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Free 📒 Files selected for processing (1)
Note 🎁 Summarized by CodeRabbit FreeYour organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login. Comment |
33301a3 to
b8500e0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I get the following error when trying to run ../cmake:
CMake Error at Converter/libs/brotli/CMakeLists.txt:5 (cmake_minimum_required):
Compatibility with CMake < 3.5 has been removed from CMake.
Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
to tell CMake that the project requires at least <min> but has been updated
to work with policies introduced by <max> or earlier.
Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
I remember previously having to change cmake_minimum_required(VERSION 2.8.6)to cmake_minimum_required(VERSION 3.16) in PotreeConverter/Converter/libs/brotli/CMakeLists.txt when running PotreeConverter previously, but when I do now I get:
-- Build type is 'Release'
-- Compiler is not EMSCRIPTEN
CMake Warning at Converter/libs/brotli/CMakeLists.txt:319 (message):
Test file tests/testdata/alice29.txt does not exist.
CMake Warning at Converter/libs/brotli/CMakeLists.txt:319 (message):
Test file tests/testdata/asyoulik.txt does not exist.
CMake Warning at Converter/libs/brotli/CMakeLists.txt:319 (message):
Test file tests/testdata/lcet10.txt does not exist.
CMake Warning at Converter/libs/brotli/CMakeLists.txt:319 (message):
Test file tests/testdata/plrabn12.txt does not exist.
CMake Error at CMakeLists.txt:58 (find_package):
By not providing "FindTBB.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "TBB", but
CMake did not find one.
Could not find a package configuration file provided by "TBB" with any of
the following names:
TBBConfig.cmake
tbb-config.cmake
Add the installation prefix of "TBB" to CMAKE_PREFIX_PATH or set "TBB_DIR"
to a directory containing one of the above files. If "TBB" provides a
separate development package or SDK, be sure it has been installed.
Co-authored-by: Adrian Haabpiht Solberg <adriahso@stud.ntnu.no>
Co-authored-by: Adrian Haabpiht Solberg <adriahso@stud.ntnu.no>
I get the exact same issue, but me and Adrian both have mac, could be something to investigate |
1fc2892 to
4c159ed
Compare
It should be resolved with the latest commit |
81f9e2b to
054fd4c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, works well now!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Added Script that runs the PotreeConverter on all H3 cells
Updated Readme to reflect these changes
Added PotreeConverter Package to the repo
Summary by CodeRabbit
New Features
Chores