其实本来,我就是需要把一个autocad的dwg/dgn格式的东西导入到google earth里面;但是首先我对dwg/dgn格式的东西根本就不熟;其次我拿到的dwg/dgn格式文件是用的HK80 grid coordinate(香港80网格坐标系统);而google earth中用的是WGS84全球经纬度坐标系统。于是就有了上述题目中的流程。

1、dwg格式导入Arcgis
其实本来呢,我是想把dwg/dgn格式存成图片格式(tiff)的,然后用envi或者erdas在google earth上进行一个几何校正的……后来刚好被路过的老师看见了,于是伊无情地鄙视了我居然不用Arcgis的弱智的想法,好吧,虽然我不是学GIS的,但这次好像真的用Arcgis方便一些……尤其是我操作的dwg文件是一个矢量数据,并不是栅格数据
于是在我的系统上装了arcgis9.3,过程按下不表……
然后发现其实dwg/dgn格式可以在arcgis中直接打开,根本不需要转化。真是太土了我。还跑去装什么autocad什么的。
要时刻牢记咱是学地理的,要专业!
想要浏览dwg/dgn文件,直接打开arcmap,点击‘Add Data’,把dwg/dgn格式的文件拖进去就好。Arcgis会自动按照原来的dwg/dgn文件中的要素类型将其分为点、线、面、注释等类型,显示出来。也可以双击该dwg/dgn文件,只浏览其中的某一个要素。
如图所示:
如果仔细看左边的图层栏,可以看到导入的dwg文件已经被按照矢量的属性分为注释、点、线、面等结构。当然你也可以只打开其中的一个属性值。
同时请注意右下角的坐标值,这里用的是HK80 Grid Coordinate,数值是正确的,但是明显在arcgis中是没有投影的信息的,这个我们待会儿要加上。
2、dwg/dgn格式转化为shp
转化成shp文件只是为了一会儿进行地理坐标转换的时候方便。第一,好像dwg不能转换地理坐标参照系,或者反正很麻烦,至少我没有成功;再其次,都打开arcgis了,当然要用arcgis自己的数据格式操作才方便快捷嘛。
转换的过程如下:

右击你要转化的图层->Data->Export Data就可以了。

3、转换地理坐标
这个过程包含两个部分。第一个是添加地理坐标;第二个是地理坐标的转化。
添加地理坐标的过程如下:
对于我这样的,已经有了地理坐标的数字,只是添加坐标的信息而已。如果连这个都没有,就要自己地理编码了。
重新开窗口->导入你刚刚得到的Shp文件->右击你的Shp图像显示框->Data Frame Properties;
出来新的对话框,选择Coordinate System选项卡。

直接选择你的地理坐标系统,点击应用,确定。

回到主界面,这时候的地理信息已经有了坐标的单位了。
转化地理坐标的过程如下:
其实很简单,打开Arctoolbox,就是上面一排工具栏里的这个图标,然后Data
Management Tools->Projections and Transformations->Feature->Project.
参数选择如下:

因为我是要转换到Google Earth里面,所以自然选择的是GE的参照系:WGS84.

然后点击Okay, 就得到了最后的结果。
重新打开新的转换得到的shp文件,结果如下:

可以明显看到,最后的结果已经是在经纬度坐标里面显示了。

4、导入Google Earth
最后一步很简单,同样点击ArcToolbox->Conversion Tools->To KML->Layer to KML.

选择好参数后,点击OKAY即可,就可以得到最后的KML文件了。

关闭Arcgis,打开google earth,导入刚才得到的文件,就可以把这个矢量文件在Google Earth上显示了。

这个图上可能看不太清;不过仔细对比转换过坐标的dwg格式的文件的边缘,和Google Earth上海岸线的边缘部分,还是重合地很好的。这就说明转换的坐标的过程是成功的。

转载地址:http://blog.163.com/6_mao/blog/static/6327131520111145591574/

DGN格式转化为shp格式 【转】的更多相关文章

  1. DWG/DGN格式导入Arcgis;转化为shp格式;更改地理坐标;导入Google Earth【转】

      其实本来,我就是需要把一个autocad的dwg/dgn格式的东西导入到google earth里面:但是首先我对dwg/dgn格式的东西根本就不熟:其次我拿到的dwg/dgn格式文件是用的HK8 ...

  2. 安装.cer证书并将证书从.cer格式转化为.pem格式

    ## 安装.cer证书并将证书从.cer格式转化为.pem格式 ### 安装.cer证书到本地 打开*运行*窗口 输入MMC.exe, 单击*确定* 在打开的控制台1的窗口中. 选择*文件*, 选择* ...

  3. TensorFlow 自定义模型导出:将 .ckpt 格式转化为 .pb 格式

    本文承接上文 TensorFlow-slim 训练 CNN 分类模型(续),阐述通过 tf.contrib.slim 的函数 slim.learning.train 训练的模型,怎么通过人为的加入数据 ...

  4. 腾讯下载的视频qlv格式转化为MP4格式

    最近在看腾讯视频的时候发现下载下来的视频格式都是qlv格式,且不能用其他播放器播放,甚是恼怒,网上找了很多方法都很繁琐,于是自己写了一个小程序来处理这个问题.把下载下来的qlv格式转化为MP4格式 首 ...

  5. 将搜狗词库.scel格式转化为.txt格式

    由于项目中要用到词库,而下载的搜狗词库是.scel格式,所以就用python脚本将搜狗词库.scel格式文件转化为.txt格式文件. #!/bin/python # -*- coding: utf-8 ...

  6. Json格式转化为string格式

    今天在学习Jsonp的时候,想通过服务端返回一段json数据,因为使用的服务端是NodeJs,那么就需要在js文件中实现返回json.(这里不懂的同学,可以先了解一下NodeJs的基础概念,在这里,我 ...

  7. RGB格式图像转化为HSV格式

    注:在阴影检测算法中经常需要将RGB格式的图像转化为HSV格式,对于阴影区域而言,它的色度和饱和度相对于原图像而言变化不大,主要是亮度信息变化较大,,将RGB格式转化为HSV格式,就可以得到H.S.V ...

  8. 用shp制作geoJson格式地图数据(shp convert to geoJson)

    本文紧接前文,简单说明利用shp数据制作Echarts支持的geoJson格式的地图数据.本文以北京市通州区各镇的shp数据为例进行说明. 软件环境: ArcGIS 10.2 (ArcGIS 10.2 ...

  9. R语言︱用excel VBA把xlsx批量转化为csv格式

    笔者寄语:批量读取目前看到有以下几种方法:xlsx包.RODBC包.批量转化成csv后读入.本章来自博客:http://www.cnblogs.com/weibaar/p/4506144.html 在 ...

随机推荐

  1. 移动端禁止图片长按和vivo手机点击img标签放大图片,禁止长按识别二维码或保存图片【转载】

    移动端禁止图片长按和vivo手机点击img标签放大图片,禁止长按识别二维码或保存图片 img{ pointer-events: none; } 源文地址:https://www.cnblogs.com ...

  2. MySQL几个特别语法示例

    简单介绍MySQL中几种特殊语法的用法: 1.创建示例用表和数据: 创建employees表[注:与SQL Server示例数据库Northwind中的表employees相同的表结构]: CREAT ...

  3. dump调试函数

    //dump调试函数if (!function_exists('dump')) { /* * dump调试函数 */ function dump($var) { $traces = debug_bac ...

  4. AOP的自动代理

    Spring的aop机制提供两类方式实现类代理.一种是单个代理,一种是自动代理. 单个代理通过ProxyFactoryBean来实现(就如上面的配置). 自动代理:自动代理能够让切面定义来决定那个be ...

  5. [BZOJ4340][BJOI2015]隐身术(后缀数组)

    考虑到K很小,于是可以暴搜每次用的是哪种操作,跳过AB相等的字符可以用SA求LCP加速. 主要流程就是,枚举B的每个后缀,对每个后缀统计合法前缀个数.DFS搜索每次决策,用SA跳过相同字符,当A或B匹 ...

  6. 【递推】hdu5927 Auxiliary Set

    题意:给你一棵树.q次询问,每次给你一些非关键点,其他的点都是关键点,让你输出树中既不是关键点,也不是关键点的lca的点的数量. 对每次询问的非关键点按照深度从深到浅排序,依次处理,最开始每个点受到的 ...

  7. liblinear参数及使用方法(原创)

    开发语言:JAVA 开发工具:eclipse (下载地址 http://www.eclipse.org/downloads/) liblinear版本:liblinear-1.94.jar (下载地址 ...

  8. Java基础学习——多线程之创建任务

    这次来盘点一下Java中用线程执行任务的写法. 1.扩展Thread 最基本的实现方法是在创建一个继承Thread的新类,在其中覆盖run()方法执行任务. public class MyThread ...

  9. bzoj 3172

    收获:AC自动机定数组大小时,如果不确定,就定10^6(极限了) /************************************************************** Pro ...

  10. 素数筛 codevs 1675 大质数 2

    1675 大质数 2  时间限制: 1 s  空间限制: 1000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Description 小明因为没做作业而被数学 ...