Does geoserver host offline elevation data?

197 views
Skip to first unread message

nigamr...@gmail.com

unread,
May 22, 2017, 5:55:03 AM5/22/17
to cesium-dev
Hi,

Does geoserver host 'offline' elevation terrain data for cesium or 'online'?
I mean will I still require internet connectivity while hosting/accessing geoserver from my cesium project?

Thanks.

Rachel Hwang

unread,
May 22, 2017, 2:36:45 PM5/22/17
to cesium-dev
Hi there,

Cesium can handle terrain datasets streamed from a url, or hosted locally. See our tutorial on terrain for more information: http://cesiumjs.org/tutorials/Terrain-Tutorial/

Hope that helps!
- Rachel

Rachel Hwang

unread,
May 22, 2017, 2:39:01 PM5/22/17
to cesium-dev
Also here's a brief guide about offline data: https://github.com/AnalyticalGraphicsInc/cesium/wiki/Offline-Guide

Best,
- Rachel

farouk abdou

unread,
May 23, 2017, 12:57:57 AM5/23/17
to cesium-dev
Hello,
You can display elevation terrain data and use it in Cesium by using this plugin. Nevertheless it use the Height Map terrain model and not quantized mesh terrain model. Also there is a known issue with serrated display when the camera is near the terrain.

nigamr...@gmail.com

unread,
May 23, 2017, 5:31:36 AM5/23/17
to cesium-dev
Hi,
When i write below code:
        terrainProvider : new Cesium.CesiumTerrainProvider({
})

I can see map on the globe , but when i write below code:
 
var terrainProvider = new Cesium.GeoserverTerrainProvider({
      layerName: "SRTM90",
      styleName: "grayToColor",
      waterMask: true
})

Then i cant see neither map nor globe. Whole screen becomes black when i from switch from ol3 to ol3cesium using below code:
this.map = new ol.Map({

});

this.ol3d = new olcs.OLCesium({ map: this.map });

Why is it coming as black!

nigamr...@gmail.com

unread,
May 23, 2017, 8:18:37 AM5/23/17
to cesium-dev
Hi,

I solved the blank black screen problem by changing the code as below:

var globe = new Cesium.Globe(Cesium.Ellipsoid.WGS84);    
    var terrainProvider = new Cesium.GeoserverTerrainProvider({      
      //layerName: "SRTM90",
      //styleName: "grayToColor",
      waterMask: false
    });
    globe.terrainProvider = terrainProvider;

Am not sure if this is the correct way though.

BUT, i cant see any elevations ! What am i missing?
Please guide.

farouk abdou

unread,
May 24, 2017, 1:19:25 AM5/24/17
to cesium-dev
var terrainProvider = new Cesium.GeoserverTerrainProvider({
      layerName: "SRTM90",
      styleName: "grayToColor"
})

nigamr...@gmail.com

unread,
May 24, 2017, 8:25:49 AM5/24/17
to cesium-dev
Hi Farouk,

But i will need to put srtm90 data in geoserver, right?

I have downloaded srtm data, which has the below structure:
srtm_51_08
    srtm_51_08.hdr
    srtm_51_08.tfw
    srtm_51_08.tif


Now inside geoserver folder where do i copy-paste this "srtm_51_08" folder ?
I am using geoserver version 2.11.1.
When i pasted it inside \data_dir\workspaces\ folder, the geoserver started up with the warning:

" WARN [org.geoserver] - Ignoring workspace directory workspaces/srtm_51_08 "

How do i include it, so that it is not ignored by geoserver, as i want to use it in my app as below:

var globe = new Cesium.Globe(Cesium.Ellipsoid.WGS84);
var terrainProvider = new Cesium.GeoserverTerrainProvider({      
    layerName: "srtm_51_08",      
});    
globe.terrainProvider = terrainProvider;

farouk abdou

unread,
May 24, 2017, 9:45:50 AM5/24/17
to cesium-dev
You should follow the readMe of geoserverTerrain Provider.
At the end, there is some links amongs other things, this link.

nigamr...@gmail.com

unread,
May 26, 2017, 12:01:53 AM5/26/17
to cesium-dev
Hi,

I have got the elevations of a particular region by hosting the .terrain files on a local server on my machine by below code:

var terrainProvider = new Cesium.CesiumTerrainProvider({
    });
    this.scene.terrainProvider = terrainProvider;

But now i dont want it from "server", but read directly from the local filesystem without server then what should be the code ?
Reply all
Reply to author
Forward
0 new messages