Elevation data from Cesium Terrain Providers is wrong?

535 views
Skip to first unread message

anran.ya...@gmail.com

unread,
Nov 7, 2014, 11:17:36 AM11/7/14
to cesiu...@googlegroups.com
Hi,

Recently I tried to visualize building blocks with terrain data on Cesium. The glTF models were nicely put onto the globe, but with the terrain data from both Cesium Terrain providers, the buildings "sinked" beyond the surface. I double-checked the building data and it was correct. Then I switched to the VT MÄK VR-TheWorld Server and everything worked perfectly. I trying to scale the height dimension of the building models and found if multiplied by nearly 1.5 they will fit the terrain from the Cesium providers well.

Following are two screenshots. The first is with VT MÄK VR-TheWorld Server, the second is with the Cesium providers, which is blank since I turned on depth check. Without the depth check I can see strange "drift" which indicates that the models are beyond the surface.

https://flic.kr/p/pFP8mv

https://flic.kr/p/pW9iZQ

Are there something wrong with the terrain providers, or did I miss something?

Greetings,
Anran

Alexander Wood

unread,
Nov 7, 2014, 3:39:29 PM11/7/14
to cesiu...@googlegroups.com
Hi Anran,
By chance are the elevation values you are using to position the buildings relative to sea level?  Mean sea level in the area of your screenshots is around 47m, what are the results if you boosted all of your buildings by that much?

Alex

--
You received this message because you are subscribed to the Google Groups "cesium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cesium-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

08t...@gmail.com

unread,
Nov 7, 2014, 3:56:46 PM11/7/14
to cesiu...@googlegroups.com
Hi Alex,

Many thanks for your reply! I have to check it tomorrow, but after some simple calculation based on memory, I think this is probably the case. So the elevation values Cesium provides are relative to the WGS 84 ellipse?

Do you have suggestions for this scenario?

Anran

在 2014年11月7日星期五UTC+1下午9时39分29秒,Alexander Wood写道:
Message has been deleted
Message has been deleted

anran.ya...@gmail.com

unread,
Nov 10, 2014, 4:03:29 AM11/10/14
to cesiu...@googlegroups.com
Hi Alex,

I tried to set a 47m offset and it surely seems correct, and also I found this issue which explained why VR-TheWorld Server is different with the Cesium server.

https://github.com/AnalyticalGraphicsInc/cesium/issues/526

I will try to calibrate my building models.

Many thanks again!

Anran

在 2014年11月7日星期五UTC+1下午9时39分29秒,Alexander Wood写道:

ale...@gmail.com

unread,
Apr 19, 2015, 1:04:08 PM4/19/15
to cesiu...@googlegroups.com
Hi Alexander,


Could you tell me the formula you used to figure out the 47m delta between sea level and the cesium representation of 0 elevation at the latitude of the specific area.

I need to be able to put buildings on the map at the visually correct elevation any where in the world so I need to factor the latitude into the calculation.

Thank you,
Alec.

Alexander Wood

unread,
Apr 20, 2015, 12:12:58 PM4/20/15
to cesiu...@googlegroups.com
Hi Alec,

The terrain elevations in Cesium are relative to the WGS84 ellipsoid.  You can use the EGM96 geoid for a global MSL approximation to sample geoid heights relative to the WGS84 ellispoid, see here:


Alex

ale...@gmail.com

unread,
Apr 20, 2015, 1:59:24 PM4/20/15
to cesiu...@googlegroups.com
Thank you for the response Alexander. It looks as though the elevation conversion requires a lookup table in a 3.3MB file rather than a stand-alone formula. I was hoping to implement the conversion entirely on the browser side which would mean always downloading the Geoid height file. Do you know if this is my only option?

Thanks,
Alec.
Message has been deleted

anran.ya...@gmail.com

unread,
Apr 20, 2015, 3:41:18 PM4/20/15
to cesiu...@googlegroups.com, ale...@gmail.com
在 2015年4月20日星期一 UTC+2下午7:59:24,ale...@gmail.com写道:
在 2015年4月20日星期一 UTC+2下午7:59:24,ale...@gmail.com写道:
Hi Alec,

I think the difference of elevation between geoid and sea level comes from the nature of earth itself (http://en.wikipedia.org/wiki/Geoid ), so it may not be possible to "calculate" it by formulas or so. If you worry about the 3.3MB extra downloads, preprocessing your data may be the best way to go. Another possible approach may be to set up a geoid server and just query for the area in the view dynamically.

Best,
Anran
Reply all
Reply to author
Forward
0 new messages