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

styling for models with 3DTILES_metadata but no EXT_mesh_features #10024

Open
ptrgags opened this issue Jan 20, 2022 · 0 comments
Open

styling for models with 3DTILES_metadata but no EXT_mesh_features #10024

ptrgags opened this issue Jan 20, 2022 · 0 comments

Comments

@ptrgags
Copy link
Contributor

ptrgags commented Jan 20, 2022

This is closely related to #10015 and #9884 but this has a few details that don't fully fit in either issue.

Suppose you have a tileset with 3DTILES_metadata, 3DTILES_content_gltf, but the glTF files do not use EXT_mesh_features.

Right now, no property tables will be created, so getFeature() would return undefined. When used in styling, any feature properties will result in undefined values which can cause problems like in this this local sandcastle (requires data from https://github.com/CesiumGS/3d-tiles-samples).

Not entirely sure if this is the right fix, but I think this requires:

  1. Even if there are no feature tables, an empty one should be created. Not sure if this should be a ModelFeatureTable with length 0, or perhaps create a new class EmptyFeatureTable. This idea of "empty" feature tables seems similar to Model EXT_mesh_features: handle feature IDs without a property table #9884, except instead of representing an arbitrary number of features without metadata, this is a table that represents no features. It would be good to consider both at once.
  2. We might want to consider a new type of XxxFeature that represents the whole model, and has a getProperty() that will look for tileset metadata (essentially Streamline the API for accessing tileset/tile metadata when picking #10015).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant