# Creating a 'sea level' layer set at a height of 0 / WGS84 ellipsoid not visualised at expected height

**URL:** <https://community.cesium.com/t/creating-a-sea-level-layer-set-at-a-height-of-0-wgs84-ellipsoid-not-visualised-at-expected-height/31588>\
**Category:** CesiumJS\
**Created:** [April 19, 2024, 5:13am UTC](https://community.cesium.com/t/creating-a-sea-level-layer-set-at-a-height-of-0-wgs84-ellipsoid-not-visualised-at-expected-height/31588 "2024-04-19T05:13:22Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![IsaE](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/isae/32/14037_2.png) [@IsaE](https://community.cesium.com/u/IsaE)\
**Post date:** [April 19, 2024, 5:13am UTC](https://community.cesium.com/t/creating-a-sea-level-layer-set-at-a-height-of-0-wgs84-ellipsoid-not-visualised-at-expected-height/31588/1 "2024-04-19T05:13:23Z")

</div>

Hi,

I have been trying to use the Bathymetry Terrain to create an underwater environment in Cesium Js. To make it more realistic I have been trying to create a sea surface layer, so that when I place models in the environment I can zoom in and see them sitting on the water layer or beneath it. The water layer doesn’t need to perfectly replicate real life, I just want it to match a height of 0 (approximating this as sea level) around the entire globe so that if I were to place a model anywhere at either a height of 0 or a negative height the model will sit on the water layer or below the water layer respectively.

I have created the following, see images 1 and 2 (also gives an idea of the visual I’m trying to achieve), using two large polygons that span the globe and are set at a height of 0, however, it doesn’t match the heights of the models placed at 0. I assumed that this was because of the way that the polygons were not rendering to correctly match the curvature of the Earth between the edges of the polygon (I tested a smaller polygon placed with edges at the locations of the models and this sat at the right height, but a model at height a of 0 midway between the polygon edges was higher than the polygon (also set at a height of 0)). I then also tested making the same visual by creating a large amount of smaller rectangles (combined into one primitive) that span the globe. This seemed to give a bit more accuracy of heights in some locations but not others (e.g. works alright for the eastern side of a country but not the west side).

 ![Screenshot 2024-04-19 145527](https://global.discourse-cdn.com/cesium/original/3X/2/7/27e038c83042315f574da4848e9af210746b03b4.jpeg)  
 ![Screenshot 2024-04-19 145637](https://global.discourse-cdn.com/cesium/original/3X/f/6/f6c562672c2e1447366915976c231ecbef0f1f7f.jpeg)

I then looked into using the base WGS84 ellipsoid as the sea level. I thought that since the height in cesium js is defined as relative to the ellipsoid, if I were to create a visual of the wgs84 ellipsoid, this should in theory sit perfectly at a height of 0 around the entire globe. However, (as seen in images 3 and 4) this sat far lower than the models placed at a height of 0, which I do not understand. I created this visual representation just by creating a primitive with the geometry of the Cesium.Ellipsoid.WGS84.

 ![Screenshot 2024-04-19 145910](https://global.discourse-cdn.com/cesium/original/3X/7/1/71579044e7a1461a4612143bd911793c96b0a332.jpeg)  
 ![Screenshot 2024-04-19 150000](https://global.discourse-cdn.com/cesium/original/3X/e/2/e244e0ee992d1dc6193d3bd734a32e4cf2877f75.jpeg)

Am I interpreting the height values wrong? Additionally, is there any other way I could achieve this sea surface layer placed at a height of 0?

Thanks!
