界址坐标转换器-帮助
本程序已获得软件著作权登记(证书号:软字登字第10749511号)
2024年6月21日更新
下载链接:
链接:https://pan.baidu.com/s/1CxxLQEKyIN2t63kOe7V-Xw?pwd=9999
提取码:9999
界址坐标转换器帮助
因工作原因,常常需要对界址坐标数据进行处理后格式转换输出,而完成这一目的,需要用到ArcGis、AutoCad、Excel、Notepad++等专业软件进行一系列操作方能实现,为减少这些繁琐的操作,特采用C#编写了这个工具。
一、程序功能:
1、读取.shp、.dwg、.txt坐标格式文件;
2、导出.shp、.dwg、.txt、.kml坐标格式文件;
3、计算几何面要素的面积、周长、质心坐标;
4、查看地块拐点坐标;修改坐标带号、坐标整体偏移;
5、属性表数据编辑(创建、删除、修改、复制、粘贴)、导出表数据到Excel;
6、表数据排序(字段排序,图形排序);
7、表数据统计分析;
8、投影变换、查看投影定义;
9、导出图斑图形图片;
二、运行环境:windows平台,.net Framework 4(请确保电脑安装了.net Framework 4或以上版本,如未安装请前往https://www.microsoft.com/zh-CN/download/details.aspx?id=17851下载进行安装),Teigha4.0类库(已附程序目录,用于读写cad的dwg格式文件)。
三、操作说明
(一)程序安装:1、下载程序安装包 “界址坐标转换器setup”, 2、双击 “界址坐标转换器setup”安装程序,3、运行程序,如果提示错误,则需要安装.net Framework 4
以文件形式导入坐标,点击按钮【导入坐标数据】
②
(三)数据导出
保存后的文件,在AutoCad中打开时会提示“此DWG文件由非Autodesk开发或许可的应用程序保存。希望执行什么操作?”
→继续打开DWG文件
txt输出功能基于模板,可以自由定义文本输入格式,方括号表示字段或图形属性数据,如果数据不存在则输出为空,相关字段属性说明可以点击对话框右上角“说明”按钮进行查看:
聚合输出:所有图斑输出到一个单独的txt文件
地块输出:每个图斑按命名规则生成Txt文件。
文本编码:utf-8、带Bom的utf-8、GB2312
单击“预览”按钮可以查看生成文件的部分图斑内容
Txt模板编辑,作者精力有限没有写模板编辑功能,在这里大概说一下如何编辑模板,编辑模板最好备份,以便出错后可以恢复。
①用txt文件编辑类软件打开安装目录下的TxtTemplate.config文件
②修改<template>标签内容
1 <?xml version="1.0" encoding="utf-8" ?> 2 <!-- 3 [Date]=当前日期(加载时以前日期(yyyy-MM-dd)进行替换 4 [*行序]=对应左侧属性表行头的行序号 5 [FID*]=Shape的图斑序号,对应属性表中[FID*]列 6 [Shape*]=地块类型(点、线、面…)对应属性表中[Shape*]列 7 [*PointsCount]=地块总点数 8 [DKMJ]=地块面积 9 [DKBH]=地块编号 10 [DKMC]=地块名称 11 [TFH]=图幅号 12 [DKYT]=地块用途 13 [DLBM]=地类编码 14 [PATCHTYPE]=项目类型(新增、提质、耕地提质…) 15 [LANDTYPE]=地块类型(旱地、水浇地、水田…) 16 [AVGGRADE1]=提质前耕地等别 17 [AVGGRADE2]=提质后耕地等别 18 [Point_NO]=点序号 19 [Ring_NO]=点圈号 20 [y]=横坐标(包括度带信息) 21 [x]=纵坐标 22 --> 23 <configuration> 24 <template name="转界址坐标格式(&J)" single="true" encoding="utf-8"> 25 <property mark="[属性描述]"> 26 格式版本号= 27 数据产生单位= 28 数据产生日期=[Date] 29 坐标系=2000国家大地坐标系 30 几度分带=3 31 投影类型=高斯克吕格 32 计量单位=米 33 带号= 34 精度= 35 转换参数=,,,,,, 36 </property> 37 <fields mark="[地块坐标]" count_closed_vertex="true"> 38 [*PointsCount],[DKMJ],[DKBH],[DKMC],[Shape*],[TFH],[DKYT],[DLBM],@ 39 </fields> 40 <points round="3" point_start_NO="1"> 41 J[Point_NO],[Ring_NO],[x],[y] 42 </points> 43 <filesNameRule>[*行序]_[DKMC]</filesNameRule> 44 <descript> 45 [*行序]=对应左侧属性表行头的行序号 46 [FID*]=Shape的图斑序号,对应属性表中[FID*]列 47 [Shape*]=地块类型(点、线、面…)对应属性表中[Shape*]列 48 [*PointsCount]=地块总点数 49 [DKMJ]=地块面积 50 [DKBH]=地块编号 51 [DKMC]=地块名称 52 [TFH]=图幅号 53 [DKYT]=地块用途 54 [DLBM]=地块编码 55 [Point_NO]=点序号 56 [Ring_NO]=点圈号 57 [x]=纵坐标 58 [y]=横坐标(包括度带) 59 </descript> 60 </template> 61 <template name="转耕地提质改造格式(耕地核查系统)(&K)" single="true" encoding="utf-8"> 62 <property mark="[属性描述]"> 63 格式版本号= 64 数据产生单位= 65 数据产生日期=[Date] 66 坐标系=2000国家大地坐标系 67 几度分带=3 68 投影类型=高斯克吕格 69 计量单位=米 70 带号=[Zone] 71 精度=0.01 72 转换参数=0,0,0,0,0,0,0 73 </property> 74 <fields mark="[地块坐标]" count_closed_vertex="true"> 75 [*PointsCount],[DKMJ],[DKBH],[DKMC],[Shape*],[TFH],[DKYT],[DLBM],[PATCHTYPE],[LANDTYPE],[AVGGRADE1],[AVGGRADE2],@ 76 </fields> 77 <points round="3" point_start_NO="1"> 78 J[Point_NO],[Ring_NO],[x],[y] 79 </points> 80 <filesNameRule>[*行序]_[DKMC]</filesNameRule> 81 <descript> 82 [*行序]=对应左侧属性表行头的行序号 83 [FID*]=Shape的图斑序号,对应属性表中[FID*]列 84 [Shape*]=地块类型(点、线、面…)对应属性表中[Shape*]列 85 [*PointsCount]=地块总点数 86 [DKMJ]=地块面积 87 [DKBH]=地块编号 88 [DKMC]=地块名称 89 [TFH]=图幅号 90 [DKYT]=地块用途 91 [DLBM]=地类编码 92 [PATCHTYPE]=项目类型(新增、提质、耕地提质…) 93 [LANDTYPE]=地块类型(旱地、水浇地、水田…) 94 [AVGGRADE1]=提质前耕地等别 95 [AVGGRADE2]=提质后耕地等别 96 [Point_NO]=点序号 97 [Ring_NO]=点圈号 98 [x]=纵坐标 99 [y]=横坐标(包括度带) 100 </descript> 101 </template> 102 <template name="转增减挂钩格式(增减挂钩报备系统)(&L)" single="true" encoding="utf-8"> 103 <property mark="[属性描述]"> 104 投影类型= 105 坐标系= 106 分带= 107 带号= 108 </property> 109 <fields mark="[地块坐标]" count_closed_vertex="true"> 110 [*PointsCount],[DKMJ],[DKBH],[DKMC],,,[DKYT],,@ 111 </fields> 112 <points round="3" point_start_NO="1"> 113 J[Point_NO],[Ring_NO],[x],[y] 114 </points> 115 <filesNameRule>[*行序]_[DKMC]</filesNameRule> 116 <descript> 117 [*行序]=对应左侧属性表行头的行序号 118 [FID*]=Shape的图斑序号,对应属性表中[FID*]列 119 [Shape*]=地块类型(点、线、面…)对应属性表中[Shape*]列 120 [*PointsCount]=地块总点数 121 [DKMJ]=地块面积 122 [DKBH]=地块编号 123 [DKMC]=地块名称 124 [DKYT]=地块用途 125 [Point_NO]=点序号 126 [Ring_NO]=点圈号 127 [x]=纵坐标 128 [y]=横坐标(包括度带) 129 </descript> 130 </template> 131 <template name="转耕保设施农业用地坐标(&G)" single="true" encoding="utf-8"> 132 <property mark="#[属性描述]"> 133 投影类型= 134 坐标系= 135 分带= 136 带号= 137 </property> 138 <fields mark="[地块坐标]" count_closed_vertex="true"> 139 [DKMJ],[DKBSM],,,,,[DKLX],,@ 140 </fields> 141 <points round="3" point_start_NO="1"> 142 J[Point_NO],[Ring_NO],[x],[y] 143 </points> 144 <filesNameRule>[*行序]_[DKMC]</filesNameRule> 145 <descript> 146 [*行序]=对应左侧属性表行头的行序号 147 [FID*]=Shape的图斑序号,对应属性表中[FID*]列 148 [Shape*]=地块类型(点、线、面…)对应属性表中[Shape*]列 149 [*PointsCount]=地块总点数 150 [DKMJ]=地块面积 151 [DKBSM]=三调标识码 152 [DKLX]=占用类型 153 [Point_NO]=点序号 154 [Ring_NO]=点圈号 155 [x]=纵坐标 156 [y]=横坐标(包括度带) 157 </descript> 158 </template> 159 </configuration>
<template name="转界址坐标格式(&J)" single="true" encoding="utf-8">,name="转界址坐标格式(&J)" 对应主窗口的菜单项,(&J)为Alt+J快捷键。single="true"表示为默认为聚合输出, encoding="utf-8"表示默认文件字符编码为utf-8
<property mark="[属性描述]">①=③,②=④
<fields mark="[地块坐标]" count_closed_vertex="true">①=④,②=⑤,③=⑥
<points round="3" point_start_NO="1">①=④,②=⑤,③=⑥
<filesNameRule>
<descript>
(四)数据编辑
1、投影变换、坐标偏移, 主窗口中点击按钮 [投影变换]
①投影变换,目前只支持WGS1984、CGCS2000(坐标包含度带信息,如未包含,可点击按钮[坐标整体平移到度带]进行设置)之间的投影变换。
②坐标整体偏移,设置xy的增量进行整体偏移。
③查看投影定义,查看当前投影定义在EPSG的具体范围。
2、行序、列序调整。
行序,鼠标左键按住行头拖动可以调整当前行的行序。
列序,鼠标左键按住列头拖动可以调整当前列的列序。
3、添加字段
4、查看、修改字段设置,列头上右键。
5、排序。单击列头,选中列后右键,选择菜单项 升序排序/降序排序
6、计算几何。点击按钮进入编辑状态,单击列头,选中列后右键,选择菜单项 计算几何
7、删除字段。单击列头,选中列后右键,选择菜单项 删除字段。
8、表数据复制。拖选单元格后,CTRL + C或鼠标右键选择菜单项“复制”。
9、表数据剪切、粘贴、删除。点击按钮进入编辑状态,参考操作8(可以粘贴来自Excel表格复制的数据)。
10、复制所选行数据,行头上右键
11、查看当前图斑坐标,单击行头,选中行,右键选择"查看此图斑坐标"
12、全选/全不选。单击按钮[行序]
13、行多选,按住Ctrl键,鼠标单击行头
14、删除行(图斑),行头右键,选择菜单项[删除行]
15、缩放到行(图斑),双击行头或单击行头右键选择项[缩放到此行]。
16、高级排序,可以进行主次列排序,图斑位置排序
17、数据统计
18、导出数据
2023年12月新增功能
1、导出图形
2、刷新图形
3、删除重复折点
4、调整起始点
5、修复环走向(支持图斑岛中岛中岛...)
6、几何修复(删除自定义距离过于接近的重复点、面积过小的环、删除尖刺角坐标)
7、创建图斑,参照一、4、无坐标文件导入。
8、支持图形拖动(按住鼠标左键拖动)、图形放大(滚动鼠标滚轮可以放大缩小图形)
9、图形识别功能
10、图斑坐标点号显示(按住Ctrl键,单击属性表行头,选中地块,即可显示点坐标充号。
四、程序注册: 程序编写不容易,如果你觉得程序功能很赞请支持作者,点击【关于】,进入关于窗口。 注册程序,点击【注册】,进入注册窗口,复制申请码,添加作者为好友,索取注册码,感谢支持。(注册功能写的比较弱鸡,但还请各位User高抬贵手,多多支持我这个编程爱好者,拜谢!)
附录
勘测定界界址点坐标交换格式
坐标交换格式具有txt格式,如下:
文本格式
[属性描述]
格式版本号=
数据产生单位=
数据产生日期=
坐标系=
几度分带=
投影类型=
计量单位=
带号=
精度=
转换参数=X平移,Y平移,Z平移,X旋转,Y旋转,Z旋转,尺度参数
[地块坐标]
界址点数,地块面积,地块编号,地块名称,记录图形属性(点、线、面),图幅号,地块用途,地类编码,@
{点号,地块圈号,X坐标,Y坐标
...
...
点号,地块圈号,X坐标,Y坐标}
界址点数,地块面积,地块编号,地块名称,记录图形属性(点、线、面),图幅号,地块用途,地类编码,@
{点号,地块圈号,X坐标,Y坐标
...
...
点号,地块圈号,X坐标,Y坐标}
注意:
所有的逗号分隔符都必须是英文输入法状态下的逗号;地块圈号不能小于零;数据产生日期的格式为:2000-12-12;坐标系为54北京坐标系或80国家大地坐标系;投影类型为高斯克吕格或等角多圆锥;几度分带为3或6;带号、精度、转换参数、界址点数、地块面积、地块圈号,X坐标,Y坐标必须为数字型;且不能用该(9999,000,000)方式表示;地块编号、地块名称、记录图形属性(点、线、面)、图幅号、地块用途、地类编码、点号的每项里不能含有“,” 、“@”符号。
注2:格式版本号、数据产生单位、数据产生日期三项不知道可以不填值,转换参数没有的话直接填写6个‘,’(逗号), 记录图形属性对于地块来说一般都是面,所以可以直接填面。地类编码由于会涉及到多种,可以不填。
例子:
[属性描述]
格式版本号=1.01版本
数据产生单位=国土资源部
数据产生日期=2003-11-7
坐标系=54北京坐标系
几度分带=3
投影类型=高斯克吕格
计量单位=米
带号=31
精度=2
转换参数=2210.3,12.65,115,25,420.66,445.69,0.569
[地块坐标]
9,0.018,2003-10,双桥乡地块1,面,I-50-77-(22),公共基础设施,,@
J01,1,3751508.5,39438683.65
J02,1,3751508.5,39438690.15
J03,1,3751502,39438690.15
J04,1,3751502,39438688.2
J05,1,3751494.5,39438688.2
J06,1,3751494.5,39438660.7
J07,1,3751499,39438660.7
J08,1,3751499,39438683.65
J01,1,3751508.5,39438683.65
5,0.0247,2003-12,双桥乡地块2,面,I-50-77-(14),公共基础设施,,@
J01,1,3755389.7,39437380.2
J02,1,3755389.7,39437410.7
J03,1,3755382.2,39437410.7
J04,1,3755382.2,39437380.2
J01,1,3755389.7,39437380.2