CesiumGS / cesium-native

Apache License 2.0
391 stars 200 forks source link

Fully support specifying a custom ellipsoid #890

Closed azrogers closed 3 weeks ago

azrogers commented 1 month ago

cesium-native already allows specifying a custom ellipsoid with most of its operations. This change removes the few places where the WGS84 ellipsoid was hardcoded, allowing all of cesium-native to be used with other ellipsoids. This is necessary to support CesiumGS/cesium-unreal#366.

kring commented 1 month ago

One clarifying question from me, do we still need CESIUM_DISABLE_DEFAULT_ELLIPSOID? If not, can we remove it? And if so, is it useful enough to put in our release notes so that other developers can use it?

I asked Ashley to add this because I think it's very useful, such as when adding alternate ellipsoid support to a new product that uses cesium-native. Adding it to the release notes seems like a good idea.

azrogers commented 1 month ago

@kring Updated the PR based on the review. BoundingRegion, S2CellBoundingVolume and Tileset no longer store copies of the ellipsoid, which required a good number of changes.

kring commented 3 weeks ago

Thanks @azrogers!