如何在铯版本1.52.0中使用Polyline连接点与Rhumb线?

问题描述 投票:0回答:1

我目前正在使用Cesium 1.52.0版,目前无法升级。但我的目标是在地图上以rhumb格式显示折线。在版本1.54.0中,arcType: Cesium.ArcType.RHUMB是获取直线的属性。如何在1.52.0版本中获得相同的结果?

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


viewer.entities.add({
    polyline: {
        positions: Cesium.Cartesian3.fromDegreesArrayHeights([-112.3268785,29.1673139,1000,139.1652182,9.6235915,1000,11.4423255,50.0235941,1000,-41.2873034,-5.1132736,1000]),
        width: 8,
        arcType: Cesium.ArcType.RHUMB,
        material: new Cesium.PolylineOutlineMaterialProperty({
            color: Cesium.Color.YELLOW,
            outlineWidth: 4,
            outlineColor: Cesium.Color.BLACK
        })
    }
});
html, body, #cesiumContainer {
  width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;
  font-family: sans-serif;
}
<link href="http://cesiumjs.org/releases/1.54/Build/Cesium/Widgets/widgets.css" 
      rel="stylesheet"/>
<script src="http://cesiumjs.org/releases/1.54/Build/Cesium/Cesium.js">
</script>
<div id="cesiumContainer"></div>
javascript maps geojson cesium
1个回答
0
投票

这可以通过Turf.js在1.52版本中实现 - 特别是greatCircle function

您只需要为折线的每个段调用此函数 - 传入开始和结束坐标。

每个函数调用都会为您提供特定段的GeoJSON - 将这个GeoJSON链接在一起(Turf为这种操作提供了更多的帮助)并且瞧 - 您现在可以通过Cesium.GeoJsonDataSource将其上传到Cesium中了。 。

© www.soinside.com 2019 - 2024. All rights reserved.