QGIS WGS84转其它坐标系并计算坐标

需求:

将带有经度、纬度(WGS84坐标系)坐标的文本(*.txt)转换成指定投影坐标系的shp文件并计算x,y坐标。

环境和工具:

WIN10、QGIS2.16、带有经纬度坐标的文本。格式如下图:

1、创建矢量图层

打开QGIS,选择Layer-->Add Layer-->Add Delimited Text Layer 菜单,如下图所示:

2、导入文本坐标

弹出创建图层对话框,选择带有坐标的文本文件,选择自定自定义分割符(Custom delimiters),选择空格(Space),在X field和 Yfield下拉框中选择对应的x、y坐标,然后点击确定,如下图所示:

3、选择坐标系

点击确定之后需要选择坐标系,这里选择WGS 84地理坐标系 在Filter搜索框中输入:WGS 84 选择EPSG:4326的坐标系,如下图所示:

4、另存矢量图层到本地计算机

这样数据就被导入进来了,然后另存数据,选中导入的图层,右键,选择Save As,如下图所示:

5、设置导出图层参数

打开另存为对话框,这里导出的格式为ShapeFile。填写好文件路径和坐标系之后,点击确定就可以导出了,导出后文件会自动加载到QGIS中,如下图所示:

6、打开属性表

右键打开shp图层的属性表,如下图所示:

7、打开字段计算器

打开属性表后开始计算X、Y坐标,点击属性表上面的:字段计算器(Calculator),如下图所示:

8、计算X投影坐标

打开字段计算器后开始计算要素的投影坐标,选择Create a new field,输入字段名称,字段类型和精度之后、在row_number目录树中选择Geometry节点下面的$x用来计算要素的x坐标。双击,将计算公式添加到左侧的计算框中,计算框下方会出现输出预览(Output preview),来查看输出结果是否正确,如果出现红色字体提示则出现了计算错误。然后点击确定即可得到计算结果。如下图所示:

计算结果如下图所示:

9、计算Y投影坐标

计算Y坐标同理,如下图所示:

PS:

这里说一下同样是x,y,为什么坐标不一样。

因为他们使用的坐标系不一样,文本里面的经纬度使用的是WGS 1984 地理坐标系,也是球面坐标系。而转换后的坐标系是墨卡托(Web Mercator)投影坐标系,是平面坐标系。他是将球面坐标经过一定的投影规则转化成平面坐标的。

想更加深入的了解坐标系可以自行百度,或者浏览以下博客:

Web Mercator 公开的小秘密

投影坐标系与地理坐标系的区别

地理坐标系、大地坐标系与地图投影与重投影详解

时间: 2024-07-28 18:26:00

QGIS WGS84转其它坐标系并计算坐标的相关文章

WGS84、Web墨卡托、火星坐标、百度坐标互转

转自:1.http://blog.csdn.net/wildboy2001/article/details/12031351 2.http://kongxz.com/2013/10/wgs-cgj/ 3.http://www.oschina.net/code/snippet_260395_39205 GCJ-02坐标系统(火星坐标)简介:http://blog.csdn.net/giswens/article/details/8775121(存档:http://mapbd.com/cms/201

2.cocos2d-x坐标体系(UI坐标系,GL坐标系,本地坐标,世界坐标,节点坐标)

 openGL & UI坐标体系 OpenGL坐标系:该坐标原点在屏幕左下角,x轴向右,y轴向上.这也就是cocos2dx中用到的坐标系. 屏幕坐标系:该坐标系的原点在屏幕左上角,x轴向右,y轴向下,其实和OpenGL坐标系的差别也就是y轴的方向.假设游戏场景的分辨率为(500,500),其中一个点坐标为(200,200),那么它在OpenGL坐标系中的坐标还是(200,200),在屏幕坐标系中则倒过来,则为(200,500-200).其实也就是6和9的差别. 图: UI坐标系 图: GL坐

for循环/计算坐标

for循环计算坐标 webqq里面有类似桌面的各种图标,是绝对定位的,这样可以拖动改变位置,用浮动的话,没法拖动. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> div{width:50px;height:50px;background:re

WGS84与CGCS2000坐标系

1.WGS84,WGS是世界大地测量系统World Geodetic System的缩写,84是说此坐标系是1984年建立的: Geodetic  :   英 [,d?i??(?)'det?k],adj. 大地测量学的:最短线的 2.它们都是地心坐标系: 3.WGS84和CGCS2000的初始参数都来源于GRS80椭球: 4.大地坐标系有4个主要几何参数,两者有3个相同,分别是长半轴 ,地心引力常数 ,自转角速度 .只有扁率f不同,CGCS2000是f=1/298.257222101,WGS84

php 腾讯 地图 计算 坐标 两点 距离 微信 网页

$r = https_request('http://apis.map.qq.com/ws/geocoder/v1/?address='.$addr['addr'].'&key=F2GBZ-SREWQ-A3K56-GSLK5-ELOHS-PRB2X'); if($r['status'] == 0){ $lng = $r['result']['location']['lng']; $lat = $r['result']['location']['lat']; $r2 = https_request

php实现 计算坐标点在某区域

项目需求:通过地图坐标和区域坐标点集合 判断当前坐标是否在坐标点集合区域中$area[array] 区域坐标点集合数组 $area = array( // 天通苑店 0 => array( array('x'=>116.38295, 'y'=>40.09416), array('x'=>116.44037, 'y'=>40.095898), array('x'=>116.448275,'y'=>40.083313), array('x'=>116.44845

php 计算坐标点方圆周围多少米的坐标算法

//地球半径 6371千米 const EARTH_ROUNT = 6371; /** * @param $distance 方圆多少千米 默认500米 */ private function _getAround($lng,$lat,$distance=0.5) { $dlng = 2 * asin(sin($distance / (2*self::EARTH_ROUNT) ) / cos(deg2rad($lat)) ); $dlng = rad2deg($dlng); $dlat = $d

[Selenium]计算坐标进行拖拽,重写dragAndDropOffset

//@author jzhang6 public void dragAndDropOffset(WebDriver driver,WebElement dragableEl, WebElement dropableEl, int offsetX, int offsetY){ Actions action = new Actions(driver); action.clickAndHold(dragableEl).build().perform(); action.moveByOffset(off

unity3d 坐标系

unity3d使用的是左手坐标系,即伸出左手,让拇指和食指成"L"形,大拇指向右,食指向上.其余的手指指向前方.这样就建立了一个左手坐标系.拇指.食指和其余手指分别代表x,y,z轴的正方向. 1.世界坐标系:unity3d中所有的gameobjet在视图中都是以世界坐标显示在场景中(左手坐标系,3d空间),由transform.position可以获得该位置坐标. 2.屏幕坐标系:以像素定义的,以屏幕左下角为(0,0)点,右上角(screen.width,screen.height),