Skip to content

Size-Based Geometry Prioritization for Tile Generation#244

Open
bertt wants to merge 62 commits intomasterfrom
md5_implementation
Open

Size-Based Geometry Prioritization for Tile Generation#244
bertt wants to merge 62 commits intomasterfrom
md5_implementation

Conversation

@bertt
Copy link
Member

@bertt bertt commented Jan 29, 2026

No description provided.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements size-based geometry prioritization for tile generation, where the largest geometries are rendered first at each tile level. The approach uses MD5 hashing to track which geometries have already been processed at higher levels, preventing duplicate rendering in child tiles.

Changes:

  • Adds MD5 hash-based geometry tracking to avoid duplicate rendering across tile hierarchy levels
  • Implements size-based prioritization using ORDER BY ST_Area(ST_Envelope(geom)) DESC
  • Updates spatial index recommendations and test expectations to reflect the new tiling algorithm

Reviewed changes

Copilot reviewed 12 out of 13 changed files in this pull request and generated 17 comments.

Show a summary per file
File Description
src/wkb2gltf.core/GeometryRecord.cs Adds Hash property to track geometry identity
src/b3dm.tileset/GeometryRepository.cs Implements MD5 hash generation, filtering, and size-based ordering for geometry queries
src/b3dm.tileset/FeatureCountRepository.cs Updates feature counting to exclude already-processed geometries
src/b3dm.tileset/QuadtreeTiler.cs Refactors tiling algorithm to create tiles for largest geometries first, then recurse with filtered sets
src/b3dm.tileset/OctreeTiler.cs Applies same size-based prioritization approach to 3D octree tiling
src/b3dm.tileset/TileCreationHelper.cs Extracts tile writing logic into reusable helper method
src/b3dm.tileset/SpatialIndexChecker.cs Updates spatial index detection pattern (with critical bug)
src/pg2b3dm/Program.cs Updates spatial index recommendation in warning message (with critical bug)
src/pg2b3dm.database.tests/UnitTest1.cs Updates test expectations to match new tile counts and adds useImplicitTiling parameter
README.md Updates spatial index creation example (with critical bug)
md5_queries.md Documents the MD5-based query approach and performance considerations
src/pg2b3dm.sln Adds md5_queries.md to solution (with hard-coded paths issue)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI commented Feb 5, 2026

@bertt I've opened a new pull request, #247, to work on those changes. Once the pull request is ready, I'll request review from you.

Copilot AI and others added 2 commits February 5, 2026 08:21
…rator

Co-authored-by: bertt <538812+bertt@users.noreply.github.com>
Co-authored-by: bertt <538812+bertt@users.noreply.github.com>
Copy link
Contributor

Copilot AI commented Feb 5, 2026

@bertt I've opened a new pull request, #248, to work on those changes. Once the pull request is ready, I'll request review from you.

Copy link
Contributor

Copilot AI commented Feb 5, 2026

@bertt I've opened a new pull request, #249, to work on those changes. Once the pull request is ready, I'll request review from you.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 13 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

bertt and others added 5 commits February 5, 2026 13:25
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 13 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants