一种三维场景的地形压平方法技术

技术编号:17563072 阅读:102 留言:0更新日期:2018-03-28 13:14
本发明专利技术提出了一种三维场景的地形压平方法,其包括以下步骤:获取三维场景里的多个点的坐标;构建三维场景里的多边形区域;获取三维场景里的多边形区域内的可绘制体;对所述可绘制体进行顶点的空间变换处理,将可绘制体变换成平面。本发明专利技术满足了对地形压平的效果和影响进行计算机模拟分析的需求,基于此方法可以便捷、高效地在地理信息系统中对任意选定区域进行地形的压平效果分析。

A topographic smoothing method for 3D scene

The invention provides a method for flattening terrain 3D scene, which comprises the following steps: obtaining the coordinates of multiple points in a 3D scene; constructing polygon in a 3D scene; get the volume rendering polygon in a 3D scene in the body; can be drawn into the space transform vertex processing. Will draw the body transform into plane. The invention satisfies the requirement of computer simulation analysis for the effect and influence of terrain leveling. Based on this method, we can conveniently and efficiently analyze the leveling effect of any terrain in any selected area in GIS.

【技术实现步骤摘要】
一种三维场景的地形压平方法
本专利技术涉及地理信息系统领域,尤其涉及一种三维场景的地形压平方法。
技术介绍
目前,地理信息系统中的地理分析功能应用于城市规划、资源管理、环境保护等领域,发挥了巨大的作用,其直观、高效地特点有力地提高了建设规划的效率,并帮助规划进行地更为科学、合理。在建设规划的很多情景下,需要将三维场景里一些特定区域内起伏不平的地形压成一个平面,以进行效果观察和地形变化分析。
技术实现思路
本专利技术所要解决的问题在于提供一种地理信息系统三维场景地形压平方法,是一种基于三维地理信息系统的地形压平计算及绘制方法,满足了对地形压平的效果和影响进行计算机模拟分析的需求,基于此方法可以便捷、高效地在地理信息系统中对任意选定区域进行地形的压平效果分析。本专利技术提供的方法包括:1、在地理信息系统的三维场景里选取一个任意多边形的区域;2、将区域内的地形压成一个平面;3、对压成的平面调整其高程和倾斜角度。其中,将区域内的地形压成平面的过程具体为:1)在地理信息系统的三维场景里构建一个RTT(RendertoTexture)相机,使用该RTT相机对选取区域进行平行投影,获得位于区域内的可绘制体;2)在计算机图形处理流水线的顶点变换阶段,使用着色器修改步骤1)中获得的可绘制体的顶点坐标,使得这些顶点偏移到三维空间里的同一个平面上。附图说明图1为本专利技术实施例的一种三维场景的地形压平方法的流程图;具体实施例如图1所示,本专利技术提出了一种三维场景地形压平方法,通过以下方式实现:拾取地理信息系统三维场景中选取的点坐标;由拾取的坐标点构建多边形区域;在地理信息系统三维场景中使用RTT相机对多边形区域进行平行投影,获取区域内的可绘制体;在计算机图形处理流水线的顶点变换阶段,使用着色器改变区域内可绘制体的顶点坐标,使顶点偏移到三维场景空间里的指定平面上;使用三维空间的坐标转换方法调整平面的高程和清晰度。具体地,本专利技术提出了一种三维场景的地形压平方法,其包括以下步骤:步骤1)、获取三维场景里的多个点的坐标;步骤2)、构建三维场景里的多边形区域;步骤3)、获取三维场景里的多边形区域内的可绘制体;步骤4)、对所述可绘制体进行顶点的空间变换处理,将可绘制体变换成平面。其中,所述步骤1)包括:检测计算机的鼠标事件,发生鼠标点击事件时记录鼠标指针位置,计算鼠标指针与三维场景中可绘制体的交点,并记录交点的坐标;或者由使用者传入点的坐标值,所述交点坐标或使用者传入的坐标值作为获取的坐标。其中,所述步骤2)包括:保留所述步骤1)中得到的三维场景中的所述多个点原有的水平方向坐标值,并且用一个统一的高程值h0(h0可以取任意值,比如0)替换所有点原有的高程方向坐标值,得到原有的多个点在三维场景中投影到同一个水平面上的点,在三维场景中依次以直线段的方式连接上述投影到同一个水平面上的点,形成水平面上的多边形,计算所得多边形在三维场景中地形上的投影,得到多边形区域。其中,所述步骤3)包括:(1)在三维场景里步骤2)得到的多边形区域正上方、距离h的位置,其中h可以取大于多边形区域内的所有可绘制体的高程值的任意值,构建一个与步骤2)得到的水平面上的多边形平行且形状相同的多边形;(2)在三维场景里构建一个RTT(渲染到纹理)相机,将该RTT相机设置在三维场景中步骤2)得到的多边形区域正上方、距离H的位置,其中H>h,使用该RTT相机向正下方以平行投影的方式投射三维场景里的可绘制体,计算该RTT相机与所投射可绘制体的距离得到深度图,所得深度图中深度值为H-h的那部分可绘制体为步骤2)得到的多边形区域内的可绘制体。其中,所述步骤4)包括:在计算机图形处理的顶点变换阶段,使用着色器对步骤3)得到的多边形区域内的可绘制体的顶点进行空间变换,使这些顶点位于同一个平面上。使用本专利技术一种地理信息系统三维场景地形压平方法,在地理信息系统三维场景中对杭州某区域地形进行压平分析处理。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本专利技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管已经示出和描述了本专利技术的实施例,本领域的普通技术人员可以理解:在不脱离本专利技术的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本专利技术的范围由权利要求及其等同物限定。本文档来自技高网...
一种三维场景的地形压平方法

【技术保护点】
一种三维场景的地形压平方法,其包括以下步骤:步骤1)、获取三维场景里的多个点的坐标;步骤2)、构建三维场景里的多边形区域;步骤3)、获取三维场景里的多边形区域内的可绘制体;步骤4)、对所述可绘制体进行顶点的空间变换处理,将可绘制体变换成平面。

【技术特征摘要】
1.一种三维场景的地形压平方法,其包括以下步骤:步骤1)、获取三维场景里的多个点的坐标;步骤2)、构建三维场景里的多边形区域;步骤3)、获取三维场景里的多边形区域内的可绘制体;步骤4)、对所述可绘制体进行顶点的空间变换处理,将可绘制体变换成平面。2.根据权利要求1所述的方法,其中所述步骤1)包括:检测计算机的鼠标事件,发生鼠标点击事件时记录鼠标指针位置,计算鼠标指针与三维场景中可绘制体的交点,并记录交点的坐标;或者由使用者传入点的坐标值,所述交点坐标或使用者传入的坐标值作为获取的坐标。3.根据权利要求2所述的方法,其中所述步骤2)包括:保留所述步骤1)中得到的三维场景中的所述多个点原有的水平方向坐标值,并且用一个统一的高程值h0(h0可以取任意值,比如0)替换所有点原有的高程方向坐标值,得到原有的多个点在三维场景中投影到同一个水平面上的点,在三维场景中依次以直线段的方式连接上述投影到同一个水平面上的点,形成水平面上的多边...

【专利技术属性】
技术研发人员:杜宗辅俞蔚
申请(专利权)人:浙江科澜信息技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1