Shp文件的几何向量在Osg中转换及轮廓提取

Shp文件的几何向量在Osg中转换及轮廓提取

 

我们常常会碰到存储有几何向量Shp文件,或是GIS地形文件相对应的的shp文件,那么怎么利用这些Shp 中的几何特征对象呢?

一、Shp文件的转换为几何体对象OSG对象


    如果直接把shp文件转换为Image图片,则由于像素的原因,放大时会出现锯齿边缘,很粗糙,同时失去了几何向量的特征。
    考虑到OSG的三维特性,很显然可以很容易的对2维特性的几何特征进行扩展和利用,可以把shp文件中的几何特征对象的提取出来,转化为OSG中的3维几何体对象。

1.首先,对SHP文件进行几何特征对象的提取OGRGeometry
2.再根据得到的OGRGeometry解析几何对象可以得到shp文件中的OGRPolygon对象,及其他几何对象;
3.根据得到的OGRGeometry几何对象如OGRPolygon对象,再得到2维点OGRPoint集合
4.将2维点集合转换为3维点集合
5.根据不同的几何体对象变成OSG的几何体对象osg::Geometry,进行几何体绘制(点,线段,闭合线。。。)
6.几何体对象变成节点添加到场景,或者写出生成对应的*.IVE文件;

 

二、SHP文件的特征中文本字体对应点对象的提取:

1.找到SHP中的特征对象OGRFeature

2.提取OGRFeature中的OGRField字符串域对应的char *名称

3.匹配对应的几何特征点OGRPoint,转换为对应的3D空间OSG的点

4.将char *以字节BIT形式记录的字符串,转换为wchar_t *对应的字符串,然后转换成可显示的string类型;

5.将string类型的名称与字体对象关联,并放置在对应的3D空间点位置;

6.将字体对象添加到组节点后,就可写成生成*.ive的模型了。


我的SHP文件转换工具:

   1. SHP文件转换为ive几何模型

   2.SHP文件中的点地名提取保存到数据库表格文件中;


 

三、几何轮廓线的提取

  1. 用我的OSG的几何对象选取工具,高亮并选取转化的Shp文件中的向量几何体,可以是任意的连续线。

  2.将这些几何体线的坐标点写出保存到TXT文件中;

  3.将选取的对象直接写出保存成单独的几何体;

  或是将读取写出的坐标点重新生成几何对象(线、面等)


选取其中的一个轮廓线蓝色显示


选取另一个轮廓线蓝色显示:


四、DEM地形的等高线Shp文件的生成和轮廓提取

我的地形等高线生成工具:


 生成平面等高线:


选取等高线:


独立提取轮廓用红色显示:

     

这里主要是讲述对Shp文件中的几何向量的提取,以后会专题讲述等高线的转化和利用。


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值