Я пытаюсь использовать библиотеку javascript Cesium для загрузки карты WMS в dart. Я могу загрузить правильную карту из файла .html, используя этот код:
<script>
var widget = new Cesium.CesiumWidget('cesiumContainer', {
imageryProvider : new Cesium.WebMapServiceImageryProvider({
url: "http://10.1.10.74:8080/geoserver/wms",
layers : 'planet_osm_roads,planet_osm_polygon,planet_osm_line,planet_osm_point'
})
});
</script>
Однако, когда я пытаюсь загрузить его из файла .dart, CesiumWidget, кажется, отступает и использует BingMapsImageryProvider по умолчанию вместо поставщика WebMapService. Вот код, который я использую в .dart
void main() {
final ces_widget = context['Cesium']['CesiumWidget'];
final wms = context['Cesium']['WebMapServiceImageryProvider'];
String url = "http://10.1.10.74:8080/geoserver/wms";
var provider = new JsObject(wms, [url, 'planet_osm_roads,planet_osm_polygon,planet_osm_line,planet_osm_point']);
if(provider['ready'] == true) {
var widget = new JsObject(ces_widget, ['cesiumContainer', {'imageryProvider' : provider}]);
}
}
Все свойства провайдера пусты, кроме tileHeight, tileWidth и ready. У кого-нибудь есть идеи, почему не создается WMS-провайдер?
Создается виджет Cesium и загружается карта, она просто загружается из поставщика Bing по умолчанию.