当前位置:网站首页>Cesium load vector data

Cesium load vector data

2022-07-07 09:11:00 FOR. GET

Vector data introduction

stay GIS in , For the classification of data formats , We generally divide it into two types: raster data and vector data . raster data ( Image data ) It is to regard space as discrete pixels , Expressed by two-dimensional array or other data organization . Vector data is just the opposite , It regards space as continuous , Use elements ( spot 、 Line 、 Noodles ) To express . stay GIS The most familiar vector data in application is Shpfile, More about vector data viewing .

Cesium Vector data formats that can be directly supported include :geojson、topojson、kml And with time characteristics czml

Online tool recommendation

  • JSON Online parsing and formatting :https://www.json.cn/
  • Online generation GeoJSON:http://geojson.io/
  • shp Data transfer GeoJSON and TopoJSON:http://mapshaper.org/
  • GeoJson and TopopJson Online conversion :http://jeffpaine.github.io/geojson-topojson/

One 、 load GeoJSON & TopoJSON

【 The official sample 】GeoJSON & TopoJSON

1.1 GeoJSON & TopoJSON brief introduction

Local shp Files are exported on this website , But not recommended ( Data security issues ). You can also use Cesium Laboratory to carry out data conversion ,ArcMap It's OK , It is best to ArcMap turn , The safest . Remember to turn shp Change the coordinate system to wgs-84 Oh ! Or Mercator

 Insert picture description here
 Insert picture description here

1.2 load GeoJSON & TopoJSON

【 Official loading GeoJSON file 】GeoJSON

The following code is through Django Framework to achieve , Combined with official examples

  • GeoJSON
    <script>
        var viewer = new Cesium.Viewer('cesiumContainer');
        viewer.dataSources.add(Cesium.GeoJsonDataSource.load('{% static "GIS/json/china.json" %}', {
    
            stroke: Cesium.Color.HOTPINK,
            fill: Cesium.Color.PINK.withAlpha(0.5),
            strokeWidth: 3
        }));
    </script>

 Insert picture description here

  • TopoJSON
 var dataSource = viewer.dataSources.add(
       Cesium.GeoJsonDataSource.load("/static/data/ne_10m_us_states.topojson")
     );

 Insert picture description here

Two 、 load KML

KML (keyhole markup language) It's based on XML Syntax format file , Used to describe and store geographic information data ( spot 、 Line 、 Noodles 、 polygon 、 Polyhedron and model, etc ), Usually applied to Google Earth software , It goes with XML The biggest difference between files is KML It describes geographic information data , meanwhile KML Has been officially OGC use , Become OGC One of many specifications .KML The file has two file extensions :.KML and .KMZ( One or more KML Compressed set of files , use zip Format compression )

var options = {
    
      camera: viewer.scene.camera,
      canvas: viewer.scene.canvas,
    };
var dataSource = Cesium.KmlDataSource.load(
       "/static/data/kml/gdpPerCapita2008.kmz",
       options
     );
     viewer.dataSources.add(dataSource);
     viewer.camera.flyHome(0);

 Insert picture description here

3、 ... and 、 load CZML

CZML It's a kind of JSON Format string , Used to describe time-related animation scenes ,CZML Include a point 、 Line 、 landmark 、 Models and other graphical elements , It also shows how these elements change over time .Cesium Have a set of rich clients API, adopt CZML Adopt a data-driven approach , Without writing code, I can use general Cesium viewer Build rich scenes . More about CZML Check out the links

    var dataSource = Cesium.CzmlDataSource.load("/static/data/Vehicle.czml");

 Insert picture description here

原网站

版权声明
本文为[FOR. GET]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202130628112591.html