Modelling of Australia geoid surfaces

I’m completing a research project looking at the difference between geoid models we have in Australia. I’d like to present a 3D model of Australia showing the relationship between the GRS80 ellipsoid, geoids and the terrain. I know that the ellipsoid is below the terrain in the south west of the country and above the terrain in the rest of the county. Our current geoid model for GNSS heights is becoming problematic for large scale works eg LiDAR. We have an alternate gravimetric quasigeoid model but is only used for scientific work. I want to be able to model these surfaces on a large scale, then be able to cut through section in places where there are anomalies to provide an argument of altering how we measure height in Australia. Ihave Tiff files of the geoids but not of the ellispoid. With the ellipsoid the terrain could be generated using the geoids.

Hi @ZManteufel, welcome to the community!

I saw you posed a similar question to the folks at Terria, and I discussed it a bit with them. The answer will be largely the same between CesiumJS and TerriaJS (which is built on CesiumJS). First of all, is it true that you’re targeting the web? I ask because the answer will be a little bit different for our native rendering engine (Unreal Engine, Unity, Ominiverse) integrations.

In any case, the short answer here is that there’s nothing pre-made in either product that will just do this with minimal effort. You’re talking about some development effort. But CesiumJS and Cesium ion can definitely help!

You can create a terrain surface representing AHD, AusGeoid2020, or whatever else you want just by populating a GeoTIFF with height values using QGIS or whatever, and then uploading it to Cesium ion.

This will create a terrain that you can easily visualize in CesiumJS. Unfortunately, it’s not possible to show two terrains simultaneously in CesiumJS currently (unlike in the native rendering engines, where this is supported). So the next step is to convert this terrain to 3D Tiles so you can visualize it alongside a terrain. One way to do this is with the “Cesium Clips” feature that was recently added to Cesium ion. This will work well for small areas, but not for the whole of Australia. For larger areas, Cesium has an internal tool that convert terrain to 3D Tiles, so perhaps we could do that conversion for you.

Once that is in place, you can display the terrain surface plus the geoid model simultaneously. The geoid model can either by translucent (so you can see where it’s above the terrain), or you could use the CesiumJS classification feature to color the areas of terrain below the geoid. I think to really indicate height differences, you might try a translucent surface combined with drop lines connecting the two surfaces at intervals.

CesiumJS doesn’t typically render terrain cross-sections, so you’d likely need to develop that part yourself.