У меня есть источник geosjon:
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
12.671038571165692,
55.64399279138965,
85.8672
],
[
12.685366241531373,
55.63688636891217,
85.8672
],
...
Я пробовал следующее
var ol3d = new olcs.OLCesium({ map: this.map}); // map is the ol.Map instance
var scene = ol3d.getCesiumScene();
ol3d.setEnabled(true);
let datasources = ol3d.getDataSources();
console.log(datasources);
let f = new ol.format.GeoJSON({ defaultDataProjection: "EPSG:4326", featureProjection: this.map.getView().getProjection() });
for (let feature of this._limModel.visualizationSource.getFeatures()) {
feature.set("altitudeMode","relativeToGround");
}
let geojson = JSON.parse(f.writeFeatures(this._limModel.visualizationSource.getFeatures()));
var dataSource = Cesium.GeoJsonDataSource.load(geojson, { clampToGround:false}).then(
function (dataSource) {
var p = dataSource.entities.values;
for (var i = 0; i < p.length; i++) {
p[i].polygon.perPositionHeight = true;
}
datasources.add(dataSource);
}
);
но и синхронизированный векторный слой, который olcesium преобразует из моей карты ol, и источник данных geojson рисуются на эллипсе/земле, а не на высоте координаты z в источнике geojson, показанном выше.
Что я должен сделать, чтобы показать мой многоугольник как поверхность в 3D.