Comments (12)
Hello
from what I see, it seems you don't use a good configuration of the bil/dds plugin. Did you try different configurations? What is your process to generate your tiff files?
from cesium-geoserverterrainprovider.
I am not using the bil/dds plugin. I just loaded 90m terrain files from http://srtm.csi.cgiar.org/download into an ImageMosaic in GeoServer then I simply configured my layer to use the mySLD.xml style from this project's github.
What is the best way? Is it the bil/dds plugin or maybe the GeotiffTranslate script?
var terrainProvider = new Cesium.GeoserverTerrainProvider({
service : "WMTS",
url : "http://localhost:8080/geoserver/gwc/service/wmts",
layerName: "cite:srtm90",
styleName: "mySLD",
waterMask: true
});
from cesium-geoserverterrainprovider.
You should check the README.md. There is a comparison for each type and some hints for processing your data.
from cesium-geoserverterrainprovider.
Ok I got it to work for WMS in GeoServer 2.17 and Cesium 1.70.1 by doing the following:
-
installing dds plugin from https://docs.geoserver.org/latest/en/user/community/dds/index.html via https://build.geoserver.org/geoserver/2.17.x/community-latest/
-
using your example at https://github.com/kaktus40/Cesium-GeoserverTerrainProvider/blob/master/WMSParameters.md
-
In GeoserverTerrainProvider.js, changing Cesium.defineProperties to Object.defineProperties
-
In GeoserverTerrainProvider.js, changing "{Style}" to "{style}"
Thank you!
What is the way to get the best performance? Use service:"WMS" providing a gwc wms endpoint?
var terrainProvider = new Cesium.GeoserverTerrainProvider({
service: "WMS",
url : "http://localhost:8080/geoserver/cite/wms",
layerName: "srtm90",
heightMapWidth: 64,
heightMapHeight: 64,
offset: 0,
highest: 12000,
lowest: -500,
styleName: "mySLD",
hasStyledImage: true,
waterMask: true,
maxLevel: 11,
formatImage: {format : "image/png",extension: "png"},
formatArray: {
format : "image/bil",
postProcessArray : function(bufferIn, size,highest,lowest,offset) {
var resultat;
var viewerIn = new DataView(bufferIn);
var littleEndianBuffer = new ArrayBuffer(size.height * size.width * 2);
var viewerOut = new DataView(littleEndianBuffer);
if (littleEndianBuffer.byteLength === bufferIn.byteLength) {
// time to switch bytes!!
var temp, goodCell = 0, somme = 0;
for (var i = 0; i < littleEndianBuffer.byteLength; i += 2) {
temp = viewerIn.getInt16(i, false)-offset;
if (temp > lowest && temp < highest) {
viewerOut.setInt16(i, temp, true);
somme += temp;
goodCell++;
} else {
var val = (goodCell == 0 ? 1 : somme / goodCell);
viewerOut.setInt16(i, val, true);
}
}
resultat = new Int16Array(littleEndianBuffer);
}
return resultat;
}
}
});
from cesium-geoserverterrainprovider.
from cesium-geoserverterrainprovider.
Does GeoServer/GeoWebCache WMTS support .bil?
Whenever I try to use WMTS I get either blocky or spiky terrain using GeoserverTerrainProvider.js as it's just using .png or .jpeg and doesn't seem to go through the more accurate .bil pipeline.
from cesium-geoserverterrainprovider.
from cesium-geoserverterrainprovider.
I ran the GeotiffTranslate on the srtm4.1 dataset (90m). It looks decent but the .bil solution seems to have more accurate terrain especially when viewing near street level. By this I mean, visually the .bil solution looks better. Has this been your experience?
from cesium-geoserverterrainprovider.
from cesium-geoserverterrainprovider.
Do you believe the best solution could be this?
gdalbuildvrt mosaic.vrt c:\srtm90\*.tif
gdal_retile -ps 2048 2048 -overlap 0 -levels 6 -s_srs EPSG:4326 -r cubicspline -ot Int16 -co TILED=YES -co COMPRESS=DEFLATE -targetDir srtm90pyramid mosaic.vrt
The deploy srtm90pyramid as an ImagePyramid in GeoServer and use image/bil method?
from cesium-geoserverterrainprovider.
from cesium-geoserverterrainprovider.
I'm good with closing this Issue. Thanks for your advice!
from cesium-geoserverterrainprovider.
Related Issues (20)
- only half of the world map is rendered HOT 4
- loading DEM of larger area than given area. HOT 1
- Using latest version of cesium HOT 5
- conditions when zooming in on the terrain HOT 8
- How to solve ”Some tiffs are not int16 Gray images ? HOT 3
- Using with BIL DTM format ? HOT 1
- The speed of GeoserverTerrainProvider vs Cesium Terrain Format HOT 2
- Distorted terrain images HOT 11
- Stepped Terrain on Low Elevation Zooming HOT 1
- Transparent Globe instead of map HOT 4
- Stepped relief. Please help me understand my error HOT 3
- Authkey add in geoseerver wms Service HOT 2
- large dem file not able to show
- Dem showing issue
- issue in showing large dsm files showing spikes and cuts HOT 17
- import? HOT 1
- Not compatible to Cesium 1.105 HOT 5
- hello , the code cannot run , npm run dev failed ,
- Error: "DeveloperError: options.buffer is required."
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cesium-geoserverterrainprovider.