specs
specs copied to clipboard
null in semantics values
If a surface does not have semantics, there is null
in the semantics.values
array instead of its index. The current specs suggests that for more complex geometries (Solid, CompositeSolid), one should fill the shell-array with null
for each surface, even the whole shell does not have semantics. Although, the example is a bit ambiguous, because the comment says a different thing than the example.
https://github.com/cityjson/specs/blob/fcd13ba921f81b666fab4960903f2f72758a75cf/specs/specs.bs#L979-L981
Previously, it was possible to declare the whole shell-array as null
, if none of the surfaces has semantics. However, this was changed in
https://github.com/cityjson/specs/commit/4f0a09b52d4025cc193e73c3dbc364103f277473?diff=unified#diff-279e2f6f8646211b27f70036bad53a9944da6634b50f77f18d5e05711f313154L919
The related explanation was removed much earlier, https://github.com/cityjson/specs/commit/a14406f88f3d7d13a0133c2b95cf92d2feafee51#diff-279e2f6f8646211b27f70036bad53a9944da6634b50f77f18d5e05711f313154L843-L848
But I couldn't find an explanation for these changes. Do you remember them @hugoledoux ?
- The comment should be updated, nice catch.
- I do remember: it was not that easy to implement this, and then to support CityJSON people would have had to code this. Having 2 trees having the same "shape" is way easier (at the cost of more storage, this is true).