openlayer4中使用geojson数据
来源:互联网 发布:飞控算法 编辑:程序博客网 时间:2024/06/07 18:33
<!DOCTYPE html><html><head> <title>GeoJSON</title> <link rel="stylesheet" href="https://openlayers.org/en/v4.5.0/css/ol.css" type="text/css"> <!-- The line below is only needed for old environments like Internet Explorer and Android 4.x --> <script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList,URL"></script> <script src="https://openlayers.org/en/v4.5.0/build/ol.js"></script></head><body><div id="map" class="map"></div><script> var image = new ol.style.Circle({ radius: 5, fill: null, stroke: new ol.style.Stroke({color: 'red', width: 1}) }); var styles = { 'Point': new ol.style.Style({ image: image }), 'LineString': new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'green', width: 1 }) }), 'MultiLineString': new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'green', width: 1 }) }), 'MultiPoint': new ol.style.Style({ image: image }), 'MultiPolygon': new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'yellow', width: 1 }), fill: new ol.style.Fill({ color: 'rgba(255, 255, 0, 0.1)' }) }), 'Polygon': new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'blue', lineDash: [4], width: 3 }), fill: new ol.style.Fill({ color: 'rgba(0, 0, 255, 0.5)' }) }), 'GeometryCollection': new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'magenta', width: 2 }), fill: new ol.style.Fill({ color: 'magenta' }), image: new ol.style.Circle({ radius: 10, fill: null, stroke: new ol.style.Stroke({ color: 'magenta' }) }) }), 'Circle': new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'red', width: 2 }), fill: new ol.style.Fill({ color: 'rgba(255,0,0,0.2)' }) }) }; var styleFunction = function(feature) { return styles[feature.getGeometry().getType()]; }; var geojsonObject = //geojson数据 var vectorSource = new ol.source.Vector({ features: (new ol.format.GeoJSON({featureProjection: 'EPSG:3857'})).readFeatures(geojsonObject),//将EPSG:4326坐标系修改为EPSG:3857(根据数据格式来) }); var vectorLayer = new ol.layer.Vector({ source: vectorSource, style: styleFunction }); var map = new ol.Map({ layers: [ new ol.layer.Tile({ source: new ol.source.OSM() }), vectorLayer ], target: 'map', controls: ol.control.defaults({ attributionOptions: /** @type {olx.control.AttributionOptions} */ ({ collapsible: false }) }), view: new ol.View({ center: ol.proj.transform([117.2736, 31.8646], 'EPSG:4326', 'EPSG:3857'), //地图中心为117.2736, 31.8646,并把坐标投影转换为3857(web 墨卡托投影) zoom: 5 // 并且定义地图显示层级为5 }) });</script></body></html>
注意:ol.format.GeoJSON默认参考坐标系为 EPSG:4326.,根据实际需要进行更改。
阅读全文
0 0
- openlayer4中使用geojson数据
- OpenLayer4叠加geojson数据增加监听事件获取该geojson数据的相关属性
- openlayers中获得geojson格式数据
- 使用openlayer4 测试(6)
- openlayers加载geojson数据 *
- openlayer4中获取地图坐标的方法
- openlayer4中加载瓦片图层
- 对geojson数据的加载
- echarts 获取geojson中的数据
- GeoJSON
- GeoJSON
- Gdal中SHP转GeoJson
- 使用GeoJson 文件可视化中国地图
- openlayer 加载geojson数据不显示问题
- geoJson——地理数据编码格式
- [Mapbox GL]绘制GeoJSON数据点
- Arcgis for js,Openlayers中加载GeoJSON
- echarts地图扩展文件使用geoJson格式。
- 深度学习课程资源整理
- Java获取本机外网ip地址的方法
- Oracle dbms_output 报ORA-00900错误SP2-0734错误
- SQL
- Java并发学习(十八)-并发工具Exchanger
- openlayer4中使用geojson数据
- 火墙——firewalld and iptables
- 深度学习-卷积理解
- hdoj 1014 Uniform Generator
- 博客 I'am coming
- Springmvc + Jquery 项目Select下拉选中点击调用发
- firewall
- 第四次实验
- Springboot与Quartz用数据库管理集成遇到的坑!Service无法注入 null