quantized mesh generator help

174 views
Skip to first unread message

Ziya Usta

unread,
Jul 10, 2018, 12:07:34 PM7/10/18
to cesium-dev

We are trying to develop pur own quantized mesh generator and visualize these terrain tiles on CesiumJS. As an input we use SRTM data that belongs to north parth of TURKEY. We generate contours on DEM, extract points from contours and triangulate points using Delanuay algorithm. Finally we tile data according to TMS specification and encode data to terrain files. When we attemp to visualize these terrain files on CesiumJS, we receive some errors. We tile data for zoom levels between 10 and 16 because our region is relatively small compared to world. But while we are zoom in to our region cesium requires tiles that are not in our zoom range and after a while when we keep zoom in everything disappears. We couldn't figure it out why this happens. Here is some pictures describe situation before and after a zoom. Any help would be appreciated.


Before some zoom


After one more zoom






Gabby Getz

unread,
Jul 16, 2018, 5:24:12 PM7/16/18
to cesium-dev
Hi Ziya,

Do you define every tile at every level? In order to display terrain data in Cesium, the tiles must be defined for every tile at every level.

If you need some base terrain to process your DEM's, you can take a look at Cesium ion for processing and hosting your terrain data.

Thanks,
Gabby

Ziya Usta

unread,
Jul 25, 2018, 6:03:01 AM7/25/18
to cesium-dev
yes we define every tile for every level. I am adding our own data set. Could you look at it ? It would be very helpful for us Here is the link

https://drive.google.com/file/d/1AtxjFz7MTSc7DfgiY3jOQyg-0s_jdzK8/view?usp=sharing

17 Temmuz 2018 Salı 00:24:12 UTC+3 tarihinde Gabby Getz yazdı:

Manuel Massing

unread,
Jul 25, 2018, 7:21:00 AM7/25/18
to cesiu...@googlegroups.com, Ziya Usta
Hi Ziya,

sounds like a culling problem, maybe this has something
to do with the horizon culling calculations?

AFAIR the occlusion point can be a bit tricky to implement.

Manuel



Am 25.07.2018 um 12:03 schrieb Ziya Usta:
> yes we define every tile for every level. I am adding our own data set.
> Could you look at it ? It would be very helpful for us Here is the link
>
> https://drive.google.com/file/d/1AtxjFz7MTSc7DfgiY3jOQyg-0s_jdzK8/view?usp=sharing
>
> 17 Temmuz 2018 Salı 00:24:12 UTC+3 tarihinde Gabby Getz yazdı:
>
> Hi Ziya,
>
> Do you define every tile at every level? In order to display terrain
> data in Cesium, the tiles must be defined for every tile at every level.
>
> If you need some base terrain to process your DEM's, you can take a
> look at Cesium ion for processing and hosting your terrain data
> <https://cesium.com/docs/tutorials/getting-started/>.
>
> Thanks,
> Gabby
>
> On Tuesday, July 10, 2018 at 12:07:34 PM UTC-4, Ziya Usta wrote:
>
> *We are trying to develop pur own quantized mesh generator and
> visualize these terrain tiles on CesiumJS. As an input we use
> SRTM data that belongs to north parth of TURKEY. We generate
> contours on DEM, extract points from contours and triangulate
> points using Delanuay algorithm. Finally we tile data according
> to TMS specification and encode data to terrain files. When we
> attemp to visualize these terrain files on CesiumJS, we receive
> some errors. We tile data for zoom levels between 10 and 16
> because our region is relatively small compared to world. But
> while we are zoom in to our region cesium requires tiles that
> are not in our zoom range and after a while when we keep zoom in
> everything disappears. We couldn't figure it out why this
> happens. Here is some pictures describe situation before and
> after a zoom. Any help would be appreciated.*
>
>
> Before some zoom
>
>
> <https://lh3.googleusercontent.com/-NhcmMD7mQyw/W0TZWkOJu4I/AAAAAAAAAp0/wuUcoWw0etoP7Z7wQgA3HPUW5lXWkqzvgCLcBGAs/s1600/sandcastle1.png>
>
> After one more zoom
>
> <https://lh3.googleusercontent.com/-7tPsCgu17ks/W0TZrFOgngI/AAAAAAAAAp8/2inZ8ELR9XogogIJQrq75AhBpSl-oTptQCLcBGAs/s1600/sandcastle2.png>
>
>
>
>
> *
> *
>
> --
> 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
> <mailto:cesium-dev+...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout.

Gabby Getz

unread,
Jul 27, 2018, 4:05:50 PM7/27/18
to cesium-dev
Yes, as Manuel suggests, this is most likely a culling problem. Quantized-mesh tiles contain a horizon culling point which determines when the camera culls a tile. I would suggest using Cesium ion to process your terrain data, see my link above.

Thanks!
Gabby

bilon...@gmail.com

unread,
Sep 27, 2018, 10:41:40 AM9/27/18
to cesium-dev
We recently open sourced C++ tool which is basically quantized-mesh generator https://github.com/heremaps/tin-terrain
It takes into account horizon occlusion point and it seems to work correct.

We also have example of rendering output tiles in Cesium.js https://github.com/heremaps/quantized-mesh-viewer
Note that we solved problem with missing tiles on a frontend rather then generating empty tiles;

Reply all
Reply to author
Forward
0 new messages