界址坐标转换器-帮助

本程序已获得软件著作权登记(证书号:软字登字第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
     

   (二)坐标的数据导入

  1、.shp格式文件导入[note:支持属性表*.dbf字符编码为GB2312和UTF-8,支持打开只有一个.*shp文件(缺失*.dbf、*.shx等文件不影响坐标文件的读取,导出将重新生成,可以修复这种情况下的shpfile在ArcGis中打开)]。具体操作有如下三种方式:
  ①按住鼠标左键拖放.shp文件到【界址坐标转换器.exe】上方释放。 
  

 

 

  ②双击运行【界址坐标转换器.exe】,按住鼠标左键拖放.shp文件到【坐标数据转换】窗口上方释放。

     

  ③双击运行【界址坐标转换器.exe】,【Shape数据转换】窗口点击按钮【从Shapefile转换】,在文件选择对话框中选择.shp文件。  

        

  2、.dwg、.dxf格式文件导入,只对具有闭合属性的多线段进行shape面的转换(在多线段特性中设置闭合)。具体操作与1、同样
   
  3、.txt格式坐标文件导入,[note:支持GB2312(简体中文)、utf-8两种字符编码的txt文件,文本格式应符合附录《勘测定界界址点坐标交换格式》(Y坐标为带号坐标),所有txt格式文件存放到一个目录(文件夹),亦可放置在该目录下的子目录,程序将会遍历该目录下(包含子目录)所有txt坐标文件]。具体操作与1、同样(拖放、打开选择的是文件夹)。
  4、无坐标文件导入,单击按钮,无数据进入,在创建图斑对话框中创建图斑。
  
        ①
                

       

      

      以文件形式导入坐标,点击按钮【导入坐标数据】 

    

    ②

         

     

  (三)数据导出  

  1、转.shp文件,主窗口中点击按钮 [转ShpFile(S)],进行相应设置,确定。

   

 

    

  2、转.dwg文件,主窗口中点击按钮 [转.DwgFile(D)],进行相应设置,确定。文件输出格式支持dxf、dxf二进制、dwg文件(支持2004、2007、2010、2013年版)。        

      

 

   

  保存后的文件,在AutoCad中打开时会提示“此DWG文件由非Autodesk开发或许可的应用程序保存。希望执行什么操作?”

  →继续打开DWG文件  

  3、转.txt坐标文件,主窗口点击按钮[转TxtFile(T)]->转界址坐标格式 (J)

     

  

   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="转界址坐标格式(&amp;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="转耕地提质改造格式(耕地核查系统)(&amp;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="转增减挂钩格式(增减挂钩报备系统)(&amp;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="转耕保设施农业用地坐标(&amp;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="转界址坐标格式(&amp;J)" single="true" encoding="utf-8">,name="转界址坐标格式(&amp;J)" 对应主窗口的菜单项,(&amp;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>

    

  4、转.kml文件(在Google Earth等地图软件中使用),主窗口中点击按钮 [转KmlFiel(K)]

    

    

   (四)数据编辑

   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

 

posted @ 2022-08-04 23:33  笑一个有爱  阅读(1979)  评论(0编辑  收藏  举报