版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_28459505/article/details/80402601
一、shp转换成json格式
第一步:使用ArcGIS将shp文件的地理坐标设置为WGS_1984并导出为shp数据。
1、打开ArcGIS的Toolbox工具箱,选择“定义投影”:
2、选择要转换的shp格式文件并选择地理坐标为 WGS_1984,单击确认。
3、将数据导出。
开始转换:
第一步:打开网站http://www.mapshaper.org/
第二步:点击select按钮,选择目标shp图层
第三步:确认,inport导入:
第四步:点击右上角的export,选择GeoJson ,输入encoding=utf8,点击export,方法一转换完成:
在cesium中添加GsoJSon数据,如下图所示:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>添加json数据</title>
<script src="../Build/Cesium/Cesium.js"></script>
<style>
@import url(../Build/Cesium/Widgets/widgets.css);
html, body, #cesiumContainer {
width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;
}
</style>
</head>
<body>
<div id="cesiumContainer"></div>
<script>
var viewer = new Cesium.Viewer('cesiumContainer',{
animation:false, //是否显示动画控件
homeButton:true, //是否显示home键
geocoder:true, //是否显示地名查找控件
baseLayerPicker:false, //是否显示图层选择控件
timeline:false, //是否显示时间线控件
fullscreenButton:true, //是否全屏显示
scene3DOnly:true, //如果设置为true,则所有几何图形以3D模式绘制以节约GPU资源
infoBox:true, //是否显示点击要素之后显示的信息
sceneModePicker:true, //是否显示投影方式控件 三维/二维
navigationInstructionsInitiallyVisible:false,
navigationHelpButton:false, //是否显示帮助信息控件
selectionIndicator:false,
imageryProvider: new Cesium.WebMapTileServiceImageryProvider({ //调用全球影响地图服务
url: "http://t0.tianditu.com/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles",
layer: "tdtBasicLayer",
style: "default",
format: "image/jpeg",
tileMatrixSetID: "GoogleMapsCompatible",
show: false
})
});
viewer._cesiumWidget._creditContainer.style.display = "none"; // 去除版权信息
viewer.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({ //调用影响中文注记服务
url: "http://t0.tianditu.com/cia_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=cia&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default.jpg",
layer: "tdtAnnoLayer",
style: "default",
format: "image/jpeg",
tileMatrixSetID: "GoogleMapsCompatible",
show: false
}));
var promise= viewer.dataSources.add(Cesium.GeoJsonDataSource.load('modeldata/Expor11.json', { //json文件路径
stroke: Cesium.Color.HOTPINK, //多边形轮廓的默认颜色
fill: Cesium.Color.PINK, //多边形内部的默认颜色。
markerColor: Cesium.Color.RED, //获取或设置为每个点创建的地图针脚的默认颜色
strokeWidth: 5, //线段或者多边形默认宽度
markerSymbol: 'name' //是被标注字段
}));
viewer.flyTo(promise); //飞入json文件所在位置
</script>
</body>
</html>