arcpy投影(一)——prj、gtf文件定义、路径及解析(arcmap,arcpro)

arcpy投影这一个专题从文件位置、文件含义、空间参照获取、转换关系查询、投影定义、自定义转换关系、投影变换这几个角度上系统的进行了介绍,整理出了:

arcpy投影(一)——prj、gtf文件定义、路径及解析(arcmap,arcpro)

arcpy投影(二)——基准面变换概念及参数、空间参考对象获取、变换关系获取方法梳理与解析(Spatial Reference、ListTransformations)

arcpy投影(三)——定义投影、地理变换关系自定义和投影变换Project_managemen(含基准面/椭球体转换参数使用方法,arcpro/arcmap)
三篇文章,本文为第一篇:

一、投影坐标prj文件,转换gtf文件

ArcGIS的prj文件是一个专门用来描述坐标系投影的文件,里面定义了坐标系的名称、长短半轴、基准面、投影参数等一些其他重要的信息。
gtf文件是专门用来描述坐标转换关系的文件,在你自定义转换关系(Create Custom Geographic Tramsformation)后均会在默认路径下生成,该文件中包含了转换关系名称、原始坐标系名称及相应参数、目标坐标系名称及相应参数,以及两个坐标系统转换的方法与参数。

二、文件路径

无论是ArcMap还是Arcpro,这两种文件都是放在C盘用户文件夹在的AppData文件夹中,要注意的是AppData文件夹为隐藏文件夹,如果找不到的话可以勾选文件夹“查看”中的“隐藏的项目”选项。

(一)ArcMAP路径

ArcMap中自定义坐标系和投影关系分别放在Coordinate System和CustomTransformations文件夹中

(1)自定义坐标系

若Coordinate System文件夹不存在,则在第一行路径下进行创建,若存在prj文件直接放入到文件夹中

C:\User\Administrator\AppData\Roaming\Esri\Desktop10.6\ArcMap\
C:\User\Administrator\AppData\Roaming\Esri\Desktop10.6\ArcMap\Coordinate System
(2)转换关系

同上

C:\User\Administrator\AppData\Roaming\Esri\Desktop10.6\ArcToolbox\
C:\User\Administrator\AppData\Roaming\Esri\Desktop10.6\ArcToolbox\CustomTransformations
(二)ArcPro路径
(1)自定义坐标系

在pro中进行了测试,新建Coordinate System文件夹等方式都不可以识别到,通过收藏的方式可以进行识别,自己弄的投影可以放到这个路径下,但是经测试目前pro在这个路径下只能识别出来全英文名的prj文件,如果使用Arcpy进行处理时,可以直接通过路径进行指认。

C:\User\Administrator\AppData\Local\ESRI\ArcGISPro\Favorites
(2)转换关系

同ArcMap,注意如果要使用Arcpro的Arcpy进行投影关系的变换,一定要检查该路径下是否已经存在对应的转换关系,没有的话要进行生成或从他处拷贝,否则函数会报参数错误,这部分后面的文章中会提到。

C:\User\Administrator\AppData\Roaming\Esri\ArcGISPro\ArcToolbox \
C:\User\Administrator\AppData\Roaming\Esri\ArcGISPro\ArcToolbox\CustomTransformations

三、文件内容解析

(一)投影坐标系prj文件
PROJCS[
    "Ain_el_Abd_UTM_Zone_38N"
        ,GEOGCS[
            "GCS_Ain_el_Abd_1970"
                ,DATUM["D_Ain_el_Abd_1970"
                ,SPHEROID["International_1924",6378388.0,297.0]]
            ,PRIMEM["Greenwich",0.0]
            ,UNIT["Degree",0.0174532925199433]
             ]
    ,PROJECTION["Transverse_Mercator"]
    ,PARAMETER["False_Easting",500000.0]
    ,PARAMETER["False_Northing",0.0]
    ,PARAMETER["Central_Meridian",45.0]
    ,PARAMETER["Scale_Factor",0.9996]
    ,PARAMETER["Latitude_Of_Origin",0.0]
    ,UNIT["Meter",1.0]
    ,AUTHORITY["EPSG",20438] 
]

这是一个投影坐标系。
PROJCS:代表的是其投影坐标系。
投影名称是:Ain_el_Abd_UTM_Zone_38N
基准面信息:D_Ain_el_Abd_1970
椭球体:SPHEROID[“International_1924”,6378388.0,297.0]-长半轴和反扁率
单位:UNIT[“Degree”,0.0174532925199433]
PARAMETER:代表投影重要的参数信息

(二)地理坐标prj文件
GEOGCS[
    "GCS_Beijing_1954"
        ,DATUM[
            "D_Beijing_1954"
                ,SPHEROID["Krasovsky_1940",6378245.0,298.3]
              ]
    ,PRIMEM["Greenwich",0.0]
    ,UNIT["Degree",0.0174532925199433]
    ,AUTHORITY["EPSG",4214]
]

这是一个经纬度坐标系。
GEOGCS:代表是其地理坐标系
基准面:D_Beijing_1954
椭球体:Krasovsky_1940
长半轴:6378245.0
反扁率:298.3
中央经线:PRIMEM[“Greenwich”,0.0] - 格林威治
单位:UNIT[“Degree”,0.0174532925199433]

(三)变换关系gtf文件
GEOGTRAN["CGS2000_TO_BJ1954",                            #转换关系名称
	GEOGCS["GCS_China_Geodetic_Coordinate_System_2000",  #数据原始坐标系名称
		DATUM["D_China_2000",                            #原始坐标系椭球体名称及参数
			SPHEROID["CGCS2000",6378137.0,298.257222101]],
			PRIMEM["Greenwich",0.0],
			UNIT["Degree",0.0174532925199433]
			],
	GEOGCS["GCS_Beijing_1954",                           #数据目标坐标系名称
		DATUM["D_Beijing_1954",                          #目标坐标系椭球体名称及参数
			SPHEROID["Krasovsky_1940",6378245.0,298.3]],
			PRIMEM["Greenwich",0.0],
			UNIT["Degree",0.0174532925199433]
			],
	METHOD["Geocentric_Translation"],                    #转换方法及参数
	PARAMETER["X_Axis_Translation",0.0],
	PARAMETER["Y_Axis_Translation",0.0],
	PARAMETER["Z_Axis_Translation",0.0]
	]

四、其他说明

1.以上是ArcGIS中投影文件和转换关系文件的含义、所在路径、内容结构和含义解释。
2.由于ArcMap所带的Arcpy为2.7版本,存在编码问题,同时很多三方库无法兼容,使用起来不是很友好,而Arcpro所带的Arcpy为python3.6版本,编码问题较少,同时能够更好的使用第三方库文件,Esri将大部分函数在老版本中的参数设定及命名直接搬到了新版本上,给用户带来很多便利,但仍存在部分细节性问题,目前网上资料较少,博主结合目前在做的工作,对投影转换部分进行梳理,欢迎大家一同交流进步。
3.文件参数解析部分参考了文章ArcGIS的.prj文件生成proj4格式的字符串,对博主的整理表示感谢。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值