利用SRTM数据,在Google Earth上显示等高线(需要大量工作)

利用SRTM数据,在Google Earth上显示等高线(需要大量工作)

利用SRTM数据,在Google Earth上显示等高线

利用SRTM数据,在Google Earth上显示等高线(需要大量工作)_第1张图片

关键字:SRTM Goolge Earth KML 等高线 GlobalMapper脚本


0.文件说明

  KML2ContourMDB.exe,生成Global Mapper脚本,把KML转为MDB数据库
  DB/,文件夹,存放数据库模板和ASP文件
  Contour.mdb ,数据库文件
  Contour.asp,ASP文件
  inc_Color.asp,等高线颜色配置。(-50米-8500米)


1.原料
    先从http://srtm.csi.cgiar.org/SELECTION/inputCoord.asp网站上下载SRTM数据。在世界地图上,先选取你要下载的区域,然后下载GeoTIF数据,下载来的文件是ZIP压缩文件,请先解压,解压来的文件名如Z_58_8.TIF,请不要修改文件名。

2.工具
    1.如果电脑上还没有安装Global Mapper v9,请先安装,可以在下面的网址下载:
     http://down1.3ddown.com/5z1gKhPK/Down/2007/09B/Global.Mapper.v9.00.zip
     http://down1.3ddown.com/5z1gKhPK/Crack/2007/09B/Global.Mapper.v9.00-Crack.zip
                 (破解文件,安装完第一个文件后,把这个压缩文件中的global_mapper9.exe复制到安装文件夹中即可)
    2.下载我制作的工具。
    3.安装IIS5/6。

3.开始转换
    1.把TIF转为KML.
          运行KML2ContourMDB.exe,点击[GeoTIFF转KML]按钮,然后在弹出的新窗口中,分别执行以下操作:[添加文件]->选择解压后的tif文件->[转换]->在下面的文本框中生成Global Mapper脚本->[运行]
          点击运行之后,CPU开始100%,过一会后,内存也开始上升,最好先设置虚拟内存在1000M以上。
          生成的Global Mapper脚本的功能为生成等高线,精度为50米,然后再保存为KML文件。如果整块转换,需要的时间太长(有多长?P41.8A超2.83,内存512M,虚拟内存1G,硬盘灯红了2个多小时后,提示转换失败,抓狂),所以把每块再分成5个小块转换,原来一块有5x5度,现在变成5x(1度x5)。虽然这样处理,但每块处理起来,还是需要30分钟左右(要有耐心,或者电脑平时不用时再处理)。转换后每个TIF转出来的KML大概在100M-300M左右,所以如果处理的文件较多,注意硬盘的剩余空间。
         经过漫长的等待之后,CPU的终于降到2-3%,进程管理器中的global_mapper9.exe进程也消失了,说明转换已经完成,在刚才存放TIF的文件夹中,已经生成多个KML文件(每个TIF生成5个KML)。
利用SRTM数据,在Google Earth上显示等高线(需要大量工作)_第2张图片
利用SRTM数据,在Google Earth上显示等高线(需要大量工作)_第3张图片


    2.KML转为MDB,这样才方便我们搜索。
          运行KML2ContourMDB.exe,执行如下操作:
          [添加文件]->选择KML文件->[开始导入]->等待完成...如图3
          图3状态:(4)已处理过的文件,(5)进度条,当前文件进度;标题栏数字,当前线条数/总线条数。
          导入也需要10多分钟(每个TIF),导入到数据库后,按每个KML各导入到一个表中,每个TIF生成一个MDB文件。分文件是为了方便管理,一个TIF导入后,生成的MDB文件就有100-300M左右,导入10个就得几G,文件太大,难管理。分表是为了优化,根据请求的经纬度自动计算MDB文件名和表名。
利用SRTM数据,在Google Earth上显示等高线(需要大量工作)_第4张图片

4.发布
      1.把DB文件夹下所有的文件复制到你的网站文件夹或IIS虚拟文件夹中。
      2.在GE中,添加一个Netlink,网址指向你的刚发布的网址,如http://localhost/Contour/Contour.asp

5.完成


6.存在问题
  1.等高线颜色,从-50-8500米,蓝色到红色渐变,在局部看起来不明显,所以最好能取得最高的等高线和最低的等高线,然后重新计算等高线的颜色。等有空再处理,如果其他的朋友完成这个功能,记得发份Email给我。
  2.导入KML时,占用大量的资源,因为使用的是MSXML控制,而KML的节点太多,所以显得很慢和占用内存很大。考虑使用SAX。
  3.再一次提醒,处理这个要有耐心。数据量这么多,我也没有办法。


7.版权
   自由使用,自由传播,自由修改代码(记得保留原作者,嘿嘿)。


  一支鱼刺
   http://515800.cn
   [email protected]
   QQ:好友已满


   07.11.22       

转换的工具 004343.rar
 

你可能感兴趣的:(利用SRTM数据,在Google Earth上显示等高线(需要大量工作))