openlayers5实战--踩坑总结
1.接口返回圆心坐标和半径,直接通过new Circle(center,radius)添加圆形feature变小问题。
解决办法:
new Feature()的geometry参数不能直接赋值new Circel()得到的geometry,
要通过‘ol/geom/Polygon.js’中的fromCircle方法将new Circel()得到的geometry转化一遍然后赋值给new Feature()的geometry。
另:如果接口直接返回的坐标点画圆,则使用‘ol/geom/Polygon.js’中的circular方法。
- import {circular as circularPolygon, fromCircle as fromCirclePolygon} from CC;
- eg1:
let lng = parseFloat(d[0].lng);- let lat = parseFloat(d[0].lat);
- let radius = parseFloat(d[0].radius);
- let circle = new Circle(transform([lng, lat], 'EPSG:4326', 'EPSG:3857'), radius);
- feature = new Feature({
- position: transform([lng, lat], 'EPSG:4326', 'EPSG:3857'),
- radius: radius,
- type: 'circle',
- id: 'N',
- geometry: fromCirclePolygon(circle)
- })
- eg2:
- let lng = item.coordinateList[0].lng;
let lat = item.coordinateList[0].lat;
let radius = item.coordinateList[0].radius;
let circle4326 = circularPolygon([lng, lat],radius,64);
let circle3857 = circle4326.clone().transform('EPSG:4326', 'EPSG:3857');
feature = new Feature(circle3857);
2.测距不准问题。
解决办法:
使用'ol/sphere.js'中的getLength()方法计算。
- /*格式化测量长度
- *@params line: type geometry
- */
- formatLength (line) {
- //定义长度变量
- let length = getLength(line);
- let output;
- if (length > 100) {
- output = `${(Math.round(length / 1000 * 100) / 100)} 公里`;
- } else {
- output = `${(Math.round(length * 100) / 100)} 米`;
- }
- return output;
- },
openlayers5实战--踩坑总结的更多相关文章
- Android 上传开源项目到 jcenter 实战踩坑之路
本文微信公众号「AndroidTraveler」首发. 背景 其实 Android 上传开源项目到 jcenter 并不是一件新鲜事,网上也有很多文章. 包括我本人在将开源项目上传到 jcenter ...
- deno+mongo实战踩坑记
自从 deno 1.0 发布以来,有关 deno 的文章很多,大多数都是在讨论怎么安装 deno .deno 有哪些特点 .deno 和 node 有哪些异同.deno是不是 node 的替代品等.咱 ...
- swagger实战踩坑1
1.swagger error 有详细的错误信息 自己根据详细信息找问题 2.swagger error 无详细的错误信息 Controller是否重名=>重名,指定不同的 [Route(& ...
- nuxt.js实战踩坑记录
读万卷书不如行万里路,必须实践出真理! 看官方文档安装项目vue init nuxt-community/starter-template <project-name>注意:这是新手项目不 ...
- node+express第一次实战踩坑记录
读万卷书不如行万里路,必须实践出真理! 问题1:项目结构该搭建成什么样? 我一个node.js小白,完全没有想法!再见! 找找别人的项目看看别人放的什么项目结构,再结合自己的项目需求我来想想!
- Asp.Net Core 2.0 项目实战(5)Memcached踩坑,基于EnyimMemcachedCore整理MemcachedHelper帮助类。
Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...
- 新书推荐《再也不踩坑的Kubernetes实战指南》
<再也不踩坑的Kubernetes实战指南>终于出版啦.目前可以在京东.天猫购买,京东自营和当当网预计一个星期左右上架. 本书贴合生产环境经验,解决在初次使用或者是构建集群中的痛点,帮 ...
- NET Core2.0 Memcached踩坑,基于EnyimMemcachedCore整理MemcachedHelper帮助类。
DotNetCore2.0下使用memcached缓存. Memcached目前微软暂未支持,暂只支持Redis,由于项目历史原因,先用博客园开源项目EnyimMemcachedCore,后续用到的时 ...
- 微信小程序踩坑集合
1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教程:https://mp.weixin.qq.com/debu ...
随机推荐
- Spring Cloud学习笔记--Spring Boot初次搭建
1. Spring Boot简介 初次接触Spring的时候,我感觉这是一个很难接触的框架,因为其庞杂的配置文件,我最不喜欢的就是xml文件,这种文件的可读性很不好.所以很久以来我的Spring学习都 ...
- Java基础——网络编程(二)
一.套接字 Socket 网络驱动程序提供给应用程序编程的接口和一种机制,可以比喻成一个港口码头 应用程序只要把货放在这,就算完成了货物的运送.它在应用程序中创建,通过一种绑定机制与驱动程序建立关系, ...
- oracle上机实验内容
这是oracle实验的部分代码,我花了一中午做的. 第一次上机内容 实验目的:熟悉ORACLE11G的环境 实验内容: 第二次上机内容 实验目标:掌握oracle体系结构,掌握sqlplus的运行环境 ...
- Java JDBC MySQL
一.驱动 下载地址:https://dev.mysql.com/downloads/connector/j/ 二.数据库连接配置 jdbc:mysql://address:port/database? ...
- git 同步非master分支
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致: 建立本地分支和远程分支的关联,使用gi ...
- 安装apr-1.6.3报错[cannot remove `libtoolT’: No such file or directory]解决方法
发现有这个提示:cannot remove `libtoolT’: No such file or directory , 编辑 configure文件,查找 $RM "$cfgfile&q ...
- VMware Linux虚拟机与WIN7操作系统共享无线网络上网配置
Linux虚拟机与WIN7操作系统共享无线网络上网配置 by:授客 QQ:1033553122 测试环境: CentOS-7-x86_64-DVD-1503-01.iso Vmware 9 实践操作: ...
- WiFi 统一管理以及设备自动化测试实践
ATX 安卓设备 WiFi 统一管理以及设备自动化测试实践 (零散知识梳理总结) 此文为转载,感谢作者 目录 众所周知,安卓单台设备的UI自动化测试已经比较完善了,有数不清的自动化框架或者工具.但 ...
- zabbix系列之监控类型及方式
http://www.ttlsa.com/zabbix/how-to-chose-zabbix-item-type/ zabbix提供十几种监控类型: 监控类型 特性 备注 Zabbix agent ...
- Prometheus Node_exporter 之 Network Netstat ICMP
Network Netstat ICMP /proc/net/snmp 1. ICMP Errors 1 type: GraphUnit: shortLabel: Messages out (-) / ...