【问题标题】:Cant get (can't find proper url) for Tile's layer on Geoserver using Cesium使用 Cesium 在 Geoserver 上无法获取(找不到正确的 url)Tile 层
【发布时间】:2015-12-25 17:39:40
【问题描述】:

首先,我最近在使用 OpenLayers 和 Cesium。

我将我的地理服务器设置在:

localhost:8200/geoserver

在我的地理服务器上,我的工作区名称为:

SrbijaAdmGranice

并以名称分层到该工作区:

SRB_AdministrativneGranice_Level2_3909

问题是什么,当我尝试使用此代码添加 WMS 层 - WebMapServiceImageryProvider 时:

var viewer = new Cesium.Viewer('cesiumContainer');

// Add a WMS imagery layer
var imageryLayers = viewer.imageryLayers;
imageryLayers.addImageryProvider(new Cesium.WebMapServiceImageryProvider({
    url : 'http://localhost:8200/geoserver/wms',
    layers : 'SrbijaAdmGranice:SRB_AdministrativneGranice_Level2_3909',
    parameters : {
    transparent : true,
    format : 'image/png'
    }
}));

我得到了很好的结果 - 图片如下: Result Picture

有什么问题。

问题是,我在我的 Geoserver 中访问了 Tile Layers,并在适当的网格集中找到了 SEED 切片。 当转到 Tile Layers 时,我会得到带有可能网格集的图层。 当我去预览时,我得到这个链接:

http://localhost:8200/geoserver/gwc/demo/SrbijaAdmGranice:SRB_AdministrativneGranice_Level2_3909?gridSet=EPSG:4326&format=image/png

结果如下: Result Picture

问题是,当我想添加 WebMapTileServiceImageryProvider 时,我在控制台中得到了无法获取 Tile 的结果。

这是我使用的代码:

imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({
    url : 'http://localhost:8200/geoserver/gwc/service/wms?',
    layer : 'SrbijaAdmGranice:SRB_AdministrativneGranice_Level2_3909',
    style : 'default',
    format : 'image/jpeg',
    tileMatrixSetID : '4326', // is this a GridSet Atribute? 
    maximumLevel: 19,
    credit : new Cesium.Credit('U. S. Geological Survey')
    })
);

我的问题是 - 什么是正确的 URL 值? 以及其他参数。

我尝试了所有可能的组合。

请帮忙。

【问题讨论】:

  • 我找到了解决方案。事实上,不需要任何并发症。我在 openlayers 3 上看到了一些关于平铺地图的示例。整个故事只是在一个参数 tiled : true, gridset = 'proper grid set' in parameters object
  • var imageryLayers = viewer.imageryLayers; imageryLayers.addImageryProvider(new Cesium.WebMapServiceImageryProvider({ url : 'http://localhost:8200/geoserver/SrbijaAdmGranice/wms', layers : 'SrbijaAdmGranice:SRB_AdministrativneGranice_Level2_3909', parameters : { transparent : true, format : 'image/png', tiled : true, gridSet : 'Serbia 3909' } }));
  • 您应该将您的评论更改为答案。
  • @emackey 怎么做?
  • 只需复制并粘贴到答案框中。如果您愿意,您可以在发布后删除评论。

标签: tiles geoserver wms cesium


【解决方案1】:

我找到了解决方案。事实上,不需要任何并发症。我在 openlayers 3 上看到了一些关于平铺地图的示例。整个故事只是在一个参数 tiled 中:true, gridset = 'proper grid set' in parameters object

var imageryLayers = viewer.imageryLayers; imageryLayers.addImageryProvider(new Cesium.WebMapServiceImageryProvider({ url : 'http://localhost:8200/geoserver/SrbijaAdmGranice/wms', layers : 'SrbijaAdmGranice:SRB_AdministrativneGranice_Level2_3909', parameters : { transparent : true, format : 'image/png', tiled : true, gridSet : 'Serbia 3909' } }));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-01
    • 2015-09-08
    • 1970-01-01
    • 1970-01-01
    • 2012-01-07
    • 2023-03-15
    • 2023-02-21
    • 1970-01-01
    相关资源
    最近更新 更多