坐标转换

各地图坐标转换工具类

左心房为你撑大大i 提交于 2020-01-19 19:02:17
/** * 坐标转换工具类 * WGS84坐标系:即地球坐标系,国际上通用的坐标系。Earth (GPS坐标系) * GCJ02坐标系:即火星坐标系,WGS84坐标系经加密后的坐标系。Mars (谷歌地图(中国)、高德地图、腾讯地图) * BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系。 Bd09 (百度地图) * 搜狗坐标系、图吧坐标系等,估计也是在GCJ02基础上加密而成的。 (该类地图使用较少) */ public class CoordinateConvert { /** * 元周率 */ private static final double PI = Math . PI ; /** * 卫星椭球坐标投影到平面地图坐标系的投影因子 */ private static final double AXIS = 6378245.0 ; /** * 椭球的偏心率 (a^2 - b^2) / a^2 */ private static final double OFFSET = 0.00669342162296594323 ; private static final double X_PI = PI * 3000.0 / 180.0 ; /** * 地球半径,单位 km */ private static final double EARTH_RADIUS =

坐标初学01

南笙酒味 提交于 2020-01-10 21:16:27
地图坐标转换 坐标的定义以及分类 坐标转换方法 发现在使用百度地图API和高德API的时候,有时候会定位总是有偏移! 坐标的定义以及分类 坐标转换方法 因为定位总是有偏移,所以需要进行转换坐标。 学习所整理,如有雷同,纯属巧合,请联系本人。 学习来源网址: https://www.jianshu.com/p/c39a2c72dc65?from=singlemessage 来源: CSDN 作者: 哈哈哈蜗牛修仙之路 链接: https://blog.csdn.net/weixin_43970021/article/details/103926960

JavaScript实现坐标转换

蓝咒 提交于 2020-01-09 16:41:03
/** * 经纬度转墨卡托 * @param poi 经纬度 * @returns {{}} * @private */ function _getMercator ( poi ) { //[114.32894, 30.585748] var mercator = { } ; var earthRad = 6378137.0 ; // console.log("mercator-poi",poi); mercator . x = poi . lng * Math . PI / 180 * earthRad ; var a = poi . lat * Math . PI / 180 ; mercator . y = earthRad / 2 * Math . log ( ( 1.0 + Math . sin ( a ) ) / ( 1.0 - Math . sin ( a ) ) ) ; // console.log("mercator",mercator); return mercator ; //[12727039.383734727, 3579066.6894065146] } /** * 墨卡托转经纬度 * @param poi 墨卡托 * @returns {{}} * @private */ function _getLngLat ( poi ) { var lnglat

坐标转换7参数计算工具——arcgis 地理处理工具案例教程

烈酒焚心 提交于 2019-12-18 19:01:17
坐标转换7参数计算工具——arcgis 地理处理工具案例教程 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 不接受个人免费咨询。 提供API,独立GUI程序和arcgis工具调用三种形式。 arcgis地理处理工具提供3种使用方式: 1. 手动输入控制点坐标 2. 读取表格(excel,txt)等坐标 3. 读取空间数据(shp、mdb、gdb等)的坐标。 手动输入控制点坐标使用方法: 分别输入控制点坐标,输入格式为二维矩阵(可以用元组、列表格式等任意python兼容格式表示) p0表示原坐标系的坐标 p1表示目标坐标系(转换后的坐标) 输出包括转换参数和转换精度(中误差) 系统提供默认值,便于测试。 案例: 结果: 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 不接受个人免费咨询。 来源: https://www.cnblogs.com/xiexiaokui/p/12061390.html

坐标转换矩阵

[亡魂溺海] 提交于 2019-12-09 12:01:42
参考:《Robotics,Vision and Control》、《鱼雷航行力学》、其他学位论文 书上直接给出了分别绕x,y,z轴旋转sita角度的矩阵,而且这三个矩阵也经常见到。但值得注意的是,这三个矩阵其实是坐标系的转换矩阵,公示为 原坐标=[坐标转换矩阵]新坐标 而我们通常是希望等式坐标是新坐标系里的坐标,所以此处的矩阵需要求逆,又因为是正交矩阵,所以求逆即转置。 看了一些论文,虽然最后总的坐标转换矩阵是对的,但描述上缺少了将各坐标轴的转换矩阵的转置操作,让人摸不着头脑,如下: 除此之外,也有的书籍和论文,把前面的推导过程省略,直接给出了点对点的坐标转换矩阵,让人感觉很奇怪,甚至怀疑结论的正确性。于此同时,根据建立的坐标系的不同,旋转顺序也有差异,但有一定的标准。 下面《鱼雷航行力学》书上的旋转顺序,是因为建立了“东-天-南”的地面坐标系,即x轴指东,y轴指天,z轴指南,与之对应的雷体坐标系也是按照“东-天-南”来使用,其旋转顺序为y-z-x,分别旋转了航向-俯仰-翻滚角。 而上面的旋转矩阵来自于某些航空类的书籍和论文,因为是z轴在垂直方向(有的是z轴指天,有的是z轴指地),常用的导航角旋转顺序是z-y-x,同样是按照航向-俯仰-翻滚的顺序。 来源: https://www.cnblogs.com/j-c-y/p/12010152.html

svg坐标转换

本小妞迷上赌 提交于 2019-12-04 04:10:15
本文内容转自 how-to-translate-from-dom-to-svg-coordinates-and-back-again svg coordinate system Why we need Coordinate Translation This is the tricky part. Presume you click an SVG and want to create or position an SVG element at that point. The event handler object will give you the DOM .clientX and .clientY pixel coordinates but these must be translated to SVG units. It’s tempting to think you can calculate the x and y coordinates of an SVG point by applying a multiplication factor to the pixel location. For example, if a 1000 unit-width SVG is placed in a 500px width container, you can multiply

批量调用百度地图API获取地址经纬度坐标

六眼飞鱼酱① 提交于 2019-12-03 12:23:25
1 申请密匙 注册百度地图API: http://lbsyun.baidu.com/index.php?title=webapi 点击左侧 “获取密匙” ,经过填写个人信息、邮箱注册等,成功之后在开放平台上点击“创建应用”,填写相关信息,在这里特别说明的是,在IP白名单框里,如果不清楚自己的IP地址,最好设置为:*。提交后,在你创建应用的访问应用(AK)那一栏就是你的密钥。 2 构造经纬度获取函数 使用百度Web服务API下的Geocoding API接口来获取你所需要地址的经纬度坐标 接口文档见: http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding 导入所需的库 from urllib.request import urlopen,quote import requests,csv import pandas as pd #导入库 根据服务文档中的请求格式写出获取经纬度的函数: def getlnglat(adress): url = 'http://api.map.baidu.com/geocoder/v2/?address=' output = 'json' ak = 'wP5GAKovGHI7UGgfKI4lzyu7qK2k9zph' add = quote(adress)

OpenCV-坐标转换

匿名 (未验证) 提交于 2019-12-03 00:18:01
在目标检测中,图像标注一般是4个顶点坐标或者是bbox的中心坐标、宽高和旋转角度,在特定的处理函数中会用到不同的标注方法,这时就需要对坐标进行转换,具体方法如下 # -*- coding: utf-8 -*- from __future__ import absolute_import from __future__ import division from __future__ import print_function import cv2 import numpy as np def forward_convert (coordinate, with_label=True) : """ :param coordinate: format [y_c, x_c, h, w, theta] :return: format [y1, x1, y2, x2, y3, x3, y4, x4] """ boxes = [] if with_label: for rect in coordinate: box = cv2.boxPoints(((rect[ 1 ], rect[ 0 ]), (rect[ 3 ], rect[ 2 ]), rect[ 4 ])) box = np.reshape(box, [- 1 , ]) boxes.append([box[ 1 ], box[ 0 ],

无人驾驶软件开发工具

匿名 (未验证) 提交于 2019-12-03 00:17:01
1.系统:ubuntu 14.04 2.IDE:VSCode,Qt 3.可视化库: OpenCV 。封装了大量的可应用于无人驾驶研究的函数,包括各种滤波器算法、特征点提取、矩阵运算、投影坐标转换、机器学习算法等。(Learning OpenCV3) libQGLViewer。OpenGL 适配 qt 的一个库。官网及压缩包内的 example。 Boost 库。相关的(电子或纸质)书,把目录读一遍。 QCustomplot。对照着 example 中的例程写代码,可以快速把自己的数据变成可视化图像。 4.通信机制:Ros,LCM 5.Git & Github。廖雪峰的 Git 教程,浅显易懂,而且还配合图文+视频,简直良心。 参考:https://mp.weixin.qq.com/s/cvnQaS6lsSGljt1IiUU7tA 来源:博客园 作者: 寒江小筑 链接:https://www.cnblogs.com/yrm1160029237/p/11796817.html

UGUI在两个UI间坐标转换

匿名 (未验证) 提交于 2019-12-03 00:14:01
在UGUI中,在两个Canvas之间进行坐标转换,从CanvasA下的坐标转换到CanvasB下。 或者在同一个界面下,从不同的节点下,转成相同的坐标。 函数定义 public static bool ScreenPointToLocalPointInRectangle ( RectTransform rect , Vector2 screenPoint , Camera cam , out Vector2 localPoint ); 解释: rect: 目标界面的节点 screenPoint: 要转换的节点屏幕坐标,如果worldCamera为空就返回 vector2.zero cam: 目标界面的camera,如果 Canvas 的模式为Screen Space - Overlay mode, the cam parameter should be null. localPoint: 转换后的坐标点 返回值: 判断此点是否在Rect所在的平面上 最后算出来的结果使用:rectTransform.anchoredPosition = localPoint 要转的节点屏幕坐标 var screenPoint = canvas.worldCamera.WorldToScreenpoint(obj.transform.position) 通过查看ugui的Slider(滑块)源码