openlayers
文章平均质量分 50
lala_shine
1111
展开
-
openlayers3-经纬度坐标系转平面坐标系算法--米勒投影
地图组件是前端数据可视化非常重要的一个组成部分,根据geoJSON这种通用数据格式来生成地图是比较便捷的做法。不过对于地图坐标转换的算法,还是了解一些比较好,对于设定高阶地图组件会有帮助。这里介绍一下在米勒投影的地图上,如何将经纬度转换为平面坐标的算法,这个算法在生成世界地图的时候比较常见。(维基百科-米勒投影)// lon 经度,西经为负数// lat 纬度,南纬是负数functio原创 2017-12-01 11:09:44 · 8279 阅读 · 2 评论 -
openlayers获取一个图形的中心区域
在项目中需要做到点击一个市下面的不同区县,然后定位到该区县的中心位置,已知每个区县的多边形边界,从opanlayers API上找到方法ol.extent.getCenter()貌似可以解决这个问题,具体代码如下所示:var extent = ol.extent.boundingExtent(feature.getGeometry().getCoordinates()[0]); //获取一个坐标...原创 2018-10-24 17:49:16 · 11580 阅读 · 0 评论 -
openlayers给要素加文字注记
在项目中,需要给每个行政市区的中心加上该行政区的name,我之前的实现方法都是用一个新的图层,专门来加文字注记,但是有一点,需要知道这个图形的中心位置,如果是规则的图形的话,可以很方便的找出中心位置,知道左下角和右上角坐标即可,假设记为coordinate,该方法的代码如下所示:// 添加监测值var anchor_value = new ol.Feature({ geometr...原创 2018-10-31 15:02:57 · 14769 阅读 · 2 评论 -
openlayers中监听地图缩放级别事件moveend
在实际需求中需要做到刚进入首页加载一个图层,但是在地图扩大或者缩小到某个级别后需要隐藏图层,因此我们需要对地图的缩放级别进行监听,用到的是moveend事件:map.on("moveend",function(e){ var zoom = map.getView().getZoom(); //获取当前地图的缩放级别 console.log(zoom); if(zoom ...原创 2018-10-19 17:17:09 · 18944 阅读 · 4 评论 -
openalyers为自定义覆盖物overlay添加点击事件
在项目的实际需求中,勾选某个小区的地址,需要在地图上定义小区的位置,即在地图上添加overlay覆盖物,点击overlay覆盖物展示该小区的三维场景,刚开始的实现方法点击事件不生效,详细代码如下所示: <div id="map" style="width: 100%"> <div id="anchor"> <img s...原创 2018-06-15 15:19:04 · 4028 阅读 · 1 评论 -
使用openlayers3加载png格式图片
1.官方实例 tiff是图片的一种格式,与png相比,主要有以下区别:PNG,图像文件存储格式,其目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。...转载 2018-06-11 21:52:15 · 4757 阅读 · 1 评论 -
openlayers4获取一个图形的边界
由于项目需求问题,需要在地图上绘制多边形要素,由于这个要素可以是不规则的,然后在要素的内部填充文字信息,尽量在多边形的中心绘制,所以要获取多边形的边界,就用到了openlayers框架中的ol.extent.boundingExtent()...原创 2018-05-23 17:06:49 · 6441 阅读 · 1 评论 -
GIS开发-天地图按照地名搜索定位
在做GIS开发的时候,常常需要输入地名,地图自动定位到当前的地方,因为百度地图和谷歌地图中有类似的功能,但是在公司开发的时候,底图却用的是OpenStreetMap,没有百度地图和谷歌地图,不能调用百度地图定位的方法,并且接口也不是开源的。为了定位的准确性,所以就在官网上查看了OSM官网的文档,参考网址如下:https://developer.mapquest.com/documentatio...原创 2018-05-21 11:15:10 · 8854 阅读 · 4 评论 -
OpenStreetMap按照地名自动定位
在做GIS开发的时候,常常需要输入地名,地图自动定位到当前的地方,因为百度地图和谷歌地图中有类似的功能,但是在公司开发的时候,底图却没有百度地图和谷歌地图,所以就在官网上查看了OSM官网的文档,参考网址如下:https://developer.mapquest.com/documentation/open/nominatim-search/search/在地址栏输入http://nom原创 2017-09-29 11:04:11 · 2912 阅读 · 0 评论 -
openlayers4判断一个点是否在闭合图形的内部
在opanlayers4官方API已经有一个方法:intersectsCoordinate(coordinate),用于判断一个点coordinate是否在闭合图形的内部,返回值为布尔类型的,true表示点在多边形的内部,false表示点不在多边形的内部。 详细代码如下所示:var geo = feature.getGeometry();//feture是几何元素var isIn = ...原创 2018-05-11 11:27:12 · 7248 阅读 · 3 评论 -
jquery事件委托的回调函数中调用全局变量的简单方法
问题:在用openlayers3开发GIS系统时,出现一个问题,代码片段如下://鼠标右键添加点击事件 $(map.getViewport()).on("contextmenu", function(event){ map.removeInteraction(draw); var pixel = map.getEventPixel(event.originalEv...原创 2017-09-04 14:33:34 · 2239 阅读 · 0 评论 -
openlayers加载百度地图作为底图坐标偏移的解决办法
openlayers加载天地图作为底图,在网上找了公开的服务资源,要做到百度地图与天地图之间切换,同样也从网上找到百度地图的服务资源但是在地图上坐标总是有偏差,最初的代码是这样的:var projection = ol.proj.get(&amp;quot;EPSG:3857&amp;quot;); //加载百度地图采用3857坐标系var resolutions = [];for(var i=0; i&amp;amp;lt;19...原创 2018-11-12 10:36:36 · 14865 阅读 · 26 评论