Introduction: and Folder/ModelRef support

Greetings from Texas.
I’m new to this forum and a bit of an old dog in 3D Geospatial vizsim interoperability.

I just wanted to introduce myself to the forum and possibly spin up a discussion on support for hierarchy and model instancing.

First let me say that you guys are doing an incredible job here with czml, glTF bringing 3D/Geospatial into the browser/WebGL platform.

I also must admit that I am a bit new to producing czml/gltTF for Cesium apps but have lots of experience with producing kml.

I have been involved with some prior art in this area that kind of gives a bit of a history (kml, kmltree, and way back… OpenFlight/MetaFlight)

Hopefully not too tainted history…anyway

I would like to focus on Cesium support for (kml Folder, kml Model, and kml ListStyle) and specifically the use case of loading and viewing large model/part assemblies.

It seems glTF/Czml has the 3D geometry “Drawables” worked out well and there are some hints to child/parent relationships.

However, I do not see czml classes specifically related to scene assembly and list views…

things like regions, folders, folder visibility, open on load flag, or open when region in view…

Here are the relevant kml classes for reference.

https://developers.google.com/kml/documentation/kmlreference#folder

https://developers.google.com/kml/documentation/kmlreference#model

https://developers.google.com/kml/documentation/kmlreference#liststyle

https://developers.google.com/kml/documentation/kmlreference#link

I would like to see where these concepts apply in czml and if we need to extend that part of the czml data model in places.

or is czml the wrong place for these concepts?

Should this scene assembly stuff just stay in a KML file and have the kml model link point to a glTF file?

For example… would it make sense to expand czml model to allow kml model altitudeMode

so that a model reference can say “clamp me to the ground” and load this glTF?

https://github.com/AnalyticalGraphicsInc/czml-writer/blob/master/Schema/Model.jsonschema

I see External Links are on the road map which I assume would hit on some of this use case.

https://github.com/AnalyticalGraphicsInc/cesium/wiki/External-links

Or can czml already describe a folder hierarchy with the parent id that is on all czml objects/Packets?

https://github.com/AnalyticalGraphicsInc/czml-writer/blob/master/Schema/Packet.jsonschema

notice also that kml ListStyle can style a folder and tell the viewer “don’t not expand my children”

or “present my children as a radio selector”.

I’m looking forward to learning who is working on this stuff and where it fits on the Cesium road map.

Thanks for listening…

Best Regards, Reed