Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validate that geometry is fully contained in bounding volumes #233

Open
javagl opened this issue Oct 17, 2022 · 1 comment
Open

Validate that geometry is fully contained in bounding volumes #233

javagl opened this issue Oct 17, 2022 · 1 comment

Comments

@javagl
Copy link
Contributor

javagl commented Oct 17, 2022

One aspect of the validation of content data should be to check that geometry is fully contained in the relevant bounding volumes. This refers to content.boundingVolume and each tile.boundingVolume on the path from the tile that contains the geometry, up to the root.

@javagl javagl mentioned this issue Dec 15, 2022
53 tasks
@javagl
Copy link
Contributor Author

javagl commented Feb 27, 2024

A small update here: When this issue was opened, it would have been a lot of effort to actually implement this, because there was no functionality for computing the bounding volume of the tile content in the first place. In the meantime, there are some functionalities in the 3d-tiles-tools, surrounding the https://github.com/CesiumGS/3d-tiles-tools/blob/ac192defb95fde7c93a06897bf68228bd3ad87ce/src/tools/tilesetProcessing/ContentBoundingVolumes.ts#L25 class, which may allow implementing this check with reasonable effort.

It would likely be computationally expensive, so should probably be disabled by default via a validation config flag. And it could be difficult to make this check "perfect" - for example, some really clever and expensive implementation could compute a bounding volume for an I3DM that is tighter than the one that is computed with the 3D Tiles Tools. But it could at least be implemented as a preview feature, maybe even with some "threshold" so that small deviations would only be a WARNING. In any case, the building blocks are now there.

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

No branches or pull requests

1 participant