三维可视化平台

2024-06-03

三维可视化平台(精选十篇)

三维可视化平台 篇1

一方面, 随着可视化技术的迅速发展与成熟, 一些国际上领先的电力企业进场开始尝试利用可视化技术班组企业提升自身的运营效率管理水平, 国内外学者对可视化技术在电力系统中的应用做了大量的研究, 主要在电网数据显示、运行安全状态显示和运行趋势显示等方面。另一方面, 可视化当前在三维数据获取、大数据量处理与存储、三维可视化、三维空间分析方面等技术方面存在一定的限制, 还不能以较好的性价比满足大规模应用的需要。

随着广东电网公司创先的进一步深入, 为保证电网的安全稳定运行, 对输变电设备的统一、规范、精细化的管理要求越来越高。在大数据时代, 需建立三维立体数据, 通过空间分析技术及辅助决策应用等信息化手段, 提高电网精益化管理水平。

采用先进的三维动态实时建模技术搭建可视化平台, 实现变电站和架空线路的三维实时立体展示, 并能实时反映变电站内的运行情况, 以及杆塔和架空导线的架设和运行情况。通过与主网生产系统、EMS、远程监测诊断、视频监控、准实时平台等系统进行对接, 从多维度、多视角的方式进行准确、及时、直观、形象的实现变电站设备台账、状态告警、设备缺陷等信息的全景可视化展现, 为输变电日常运维业务提供信息支撑。本文从三维输变电可视化平台架构研究、三维精细化建模技术研究、基于三维输变电可视化平台的应用三方面进行阐述。

1三维输变电可视化平台架构研究

本平台力求推动数据 (尤其是跨业务综合数据) 可视化的发展进程, 并将重点集中在如何提供突破性的业务见解, 将多种信息相整合, 提供完整的视图场景, 根据变电站数据重要等级实现变电站数据分层级展示, 实现业务全景展示, 为业务人员提供辅助决策能力。

1.1可视化平台的规划设计

可视化平台的整体规划研究以三维GIS应用为亮点、海量平台为关键数据支撑的可视化企业综合服务平台的定位与架构, 研究数据分析和可视化技术发展趋势, 结合电网发展和公司发展的业务和应用框架, 提出总体架构设计方案, 包括应用架构、技术架构、数据架构和集成架构。

(1) 可视化企业服务平台总体架构的设计包括数据源层、数据层和应用展示层三个层次, 具体内容如图1所示。

(2) 应用架构设计:采用层次化架构规划, 包括可视化展现层、显示控制层、应用层。技术架构的设计将从可视化技术的角度赖支撑上述业务应用的实现;数据架构主要针对广东电网展示项目中所涉及的业务数据在数据生命周期中的处理、转换、存储、整合、分布制定的策略、模型、流程、以及支持这些策略、模型、流程的数据架构方案;基础架构设计包括软件架构、硬件架构、以及展示中心布局的设计。

广东电网可视化服务平台应用逻辑框架如图2所示。

1.2关键技术研究

本平台在仿真空间分析技术如三维场景漫游技术、空间碰撞分析技术、三维实景视频仿真布局技术等方面进行了深入研究;在可视化平台关键技术如:多场景管理技术、海量三维空间数据管理技术、多级缓存技术、数据流式读取技术、双屏互动技术等方面也做了深入探讨。针对三维输变电可视化平台的研究, 本项目组已经共申请“高并行的实时内存资源管理调度方法”、“三维GIS地形渲染方法和系统”、“基于安全作业的变电站空间分析方法”等五项专利。

1.3可视化平台的性能

本平台采用国产自主研发的Zoomway, 在二维数据、地形数据、建模数据及影像数据的导入、三维场景的可视化效果、场景基本操作工具的性能、交换式空间图形编辑、三维飞行编辑和管理、二次开发语言及容易程度等参数方面, 表现出优异性。

采用标准C++和Open GL开发环境, 海量信息可视化执行效率高。二次开发简单易用, 便于精细针对性的应用开发, 具有跨平台的企业级应用能力。基于空间、时间校准的栅格和矢量一体化管理、调度与应用, 支持标准开放式 (OGC) GIS服务。提供基础影像、矢量地形图、数字高程模型、三维模型及应用业务数据的编译和发布功能, 支持三维模型的电子化移交。

总体性能指标如下:

(1) 三维显示效率:100万片面不小于40FPS。

(2) 管理的目标:不低于10000个。

(3) 数据加载调度:小于0.5妙。

(4) 可以管理的数据量:不小于50TB。

(5) 支持的并发数:1000。

(6) 数据加载浏览效率:小于1秒。

2三维精细化建模技术研究

编制完成《广东电网公司三维模型建模规范》。利用三维仿真技术实现对变电站的三维仿真, 依据建模规范, 按照1:1的比例完成三维模型, 保证实景展示变电站内配电区设备模型、主变设备模型、主控室内设备模型、高压室设备模型, 实景展示变压器、电抗器、电容器、组合电器 (如GIS) , 断路器、避雷器等关键设备。

建模规格统一化、模型标准化、数据规范化, 推进电网设备三维模型数据共享和应用, 将电网设备三维模型的粒度分为三个层级:工程级模型、重点部件级模型、全设备级模型。以模型内容、模型几何精度、贴图精细度、视觉效果等几个因素作为分级的主要依据。

建模流程包括:数据采集、设备建模、分离编码、现场验证四部分。

2.1数据采集

(1) 数据采集主要包括图纸资料和现场照片的采集。

(2) 为保证文字数据采集质量及后期对建模的参考作用, 采集是分区域按顺序采集, 同时为保证数据清晰度, 对铭牌及箱柜设备采取高清拍照。

(3) 为避免因贴图拼接产生纹理色差及错位等问题, 引入了360°全景拍摄技术, 为建模人员提供了整体、高清、可靠的现场数据, 有利于提高设备建模的准确性。

2.2设备建模

设备的建模:参照设备CAD图纸资料以及设备现场照片, 建立3D设备模型, 根据照片处理贴图, 赋予模型材质及颜色, 保持模型与实际外观的一致性。如图3所示。

(1) 基础部件模型库自动组装技术 (快速建模) :基础部件模型库是将变电站中电力设备、设备部件等总结归纳为一些特定类型, 使用建模插件工具根据实际设备进行建模, 并存储在三维模型库中, 在新的对象建模时, 可通过直接应用模型库中的模型进行模型组装, 这样可大大减少建模工作量。快速建模流程图如图4。

(2) 激光建模技术:利用激光雷达扫描变电站, 快速进行三维成像, 通过3DMax建模工具, 建立各种设备元件模型, 组合形成整个变电站三维模型, 提高建模效率。如图5所示。

2.3分离编码

模型建模完成后, 按照应用要求, 将单个设备独立分离并命名, 以便系统管理设备台账, 设备模型与生产台账、监测信息建立对应关系, 如图6所示。

2.4现场验证

通过实地考察和现场测量, 验证模型的仿真程度。

根据三维建模规范, 已完成珠海供电局电压等级110KV及以上共59座变电站精细化三维模型建设, 达到楼内外分层分室精细化现场模拟, 以及设备台账的部件级支撑。通过精细化的变电站三维模型, 将变电站现场环境真实还原到系统中, 为可视化平台在变电站业务的深化应用奠定基础。

3基于三维可视化平台的深化应用

基于本平台的电网变电运行方向的应用设计以VRGIS技术为依托, VRGIS是将GIS技术、可视化技术和虚拟现实技术结合而形成的创新的地理信息系统。该平台在提供较强的多维数据建模能力和多维空间数据管理能力的同时, 更能支持复杂虚拟图形空间的生成, 以及支持用户采用多种交互设备与图形空间进行交互。基于本三维可视化平台, 完成下列深化应用研究。

(1) 移动作业仿真预演与分析:通过移动作业仿真预演分析场景, 采用精确空间分析算法, 计算移动物体在现场作业时可能存在的碰撞风险, 为方案设计和现场工作人员提示最佳作业点及风险告警。以吊车模拟进入变电站的全过程为例, 为现场工作人员吊车选型及路径选择提供了参考, 减少了大量的户外勘察工作, 如图7。

(2) 摄像头布局仿真辅助分析:通过摄像头布局仿真辅助分析场景, 模拟摄像头布局, 并以模拟视角的可视范围确定部署位置是否合理。以模拟摄像头布局为例, 为实施人员选择部署点位和部署数量提供了直观参考, 提高了工作效率。

(3) 围栏作业仿真辅助分析场景:通过围栏作业仿真辅助分析场景, 提供检修工具选择、安全措施选择、安全措施布置、安全距离告警等功能, 辅助工作票开票人员确定变电现场作业围栏数量及摆放位置。

(4) 变电站巡检仿真综合展现场景:结合变电站三维仿真场景的设备空间数据, 按照设定路线、自由控制等方式进行漫游, 系统综合显示当前巡视设备的台账、自动化系统监测数据和监控系统视频监测数据等信息, 实现在三维场景中进行自动巡检, 最终达到实时远程巡视, 并生成巡检报告, 方便巡检人员定位解决问题。为运行人员提供以设备为对象的巡检方式, 减轻巡检人员的劳动强度, 并在恶劣天气中代替运行人员对部分设备完成巡检工作。 (如图8) 。

4结束语

经过对可视化平台相关技术、三维精细化建模相关技术的研究探索, 广东电网完成珠海供电局电压等级110KV及以上共59座变电站精细化三维模型建设, 搭建成与主网生产系统、EMS、远程监测诊断、视频监控、准实时平台等系统进行对接, 提供电网图形和分析服务的企业级的三维输变电可视化平台。实现三维变电站模型、实时运行数据、状态监测、电能计量、事件信息、环境信息、台帐信息的多维度、多视角的精确展示。实现电网资源的结构化管理和图形化展现, 实现输变电设备的统一、规范、精细化管理, 为智能变电站的安全作业、智能巡检等输变电安全生产业务的深化应用, 提供有力的信息支撑。

摘要:可视化作为一种信息的表达手段, 由于其直观、形象, 应用越来越广泛。本文以广东电网公司的三维输变电可视化平台建设为例, 阐述对可视化平台相关技术、三维精细化建模相关技术的研究探讨, 目的是进一步促进可视化平台在电网的推广应用。

关键词:可视化平台,三维建模,变电站

参考文献

[1]徐社美, 董娜.三维可视化建模的研究现状[J].中国水运, 2008 (09) :105-107.

[2]卢以堂.三维GIS的基本问题初探[J].贵州科学, 2007 (25) :198-202.

三维可视化平台 篇2

本文首先利用Creator建立太空环境飞行仿真场景(太空环境)和太阳帆航天器的结构视景仿真模型(flt文件);接着利采用Vega提供的Lynx工具将flt文件导入相应的场景中,然后,进行一系列的初始化工作,并将其储存为应用程序定义文件(ADF)文件;最后,通过MATLAB计算各个时刻太阳帆的飞行轨迹和姿态数据,并通过载入模型对象的位置及姿态数据,完成对太阳帆的飞行轨迹和姿态变化的三维可视化仿真。

2 仿真软件平台环境和开发中的关键技术

2.1 在Visual C++环境下Vega应用程序的开发

Windows平台上Vega应用程序的开发,利用MFC框架开发程序能够有效地应用Vega函数库,可以极大程度地减小程序开发的工作量。本文采用基于MFC开发Vega应用程序。

2.2 三维动画场景和模型的建立

Multigen Creator是一款专业化的建模软件工具,可以有效地创建交互式实时应用的三维模型及场景。本文利用Creator建立太空环境模型和太阳帆航天器的结构模型。太阳帆航天器的结构主要包括大面积帆膜、支撑机构及中心控制机构等其它附属机构,模型的正面视图如图2所示。将Creator中建好的模型文件导入Vega中,利用Vega所提供的Lynx定义三维动画场景中的模型元素属性和相互位置关系,最后生成用于太阳帆航天器三维动画仿真平台的ADF文件,即虚拟场景文件。

2.3 多通道渲染技术

本文采用多通道技术实现在同一时刻不同位置观察各角色模型对象的运动状态。在一个通道中观察包括太阳帆在内的`多个运动模型的相对运动轨迹,而在另外一个通道中观察太阳帆航天器姿态的变化过程,结合两个通道同时观察太阳帆航天器飞行状况。

2.4 数据驱动

本系统利用仿真数据与各模型对象进行关联,通过不断调用相关联的数据进行位置及姿态的更新,实现逼真的可视化效果,能够准确地展现控制效果。利用MATLAB与VC++之间的交互编程调用MAT文件,并采用MAT文件的操作方法来读取MAT文件,从而实现利用仿真数据驱动太阳帆、地球等模型对象的运动。

3 仿真实例

三维可视化仿真平台系统界面主要包括菜单栏、主窗口和操作面板。其中主窗口中有两个通道,分别显示各模型对象飞行的轨迹与太阳帆的姿态变化;操作面板则用来控制仿真的进度,并同时显示太阳帆、地球等角色对象的位置、姿态及速度信息。首先载入使用MATLAB进行太阳帆航天器轨迹优化仿真后保存的MAT数据文件,与太阳帆、地球等模型绑定其相关的位姿数据。太阳帆航天器以一定的位姿出现在仿真环境中,通过视点切换,并选择合适的视点来观察太阳帆飞行过程。仿真过程中可以选择开始仿真、暂停仿真、重启仿真。

4 结论

Flash三维可视化研究 篇3

关键词 Flash;三维坐标;可视化

中图分类号:TP317.4 文献标识码:B

文章编号:1671-489X(2015)16-0047-02

随着Flash客户端应用领域的不断增加,其简单的二维展示已经不能满足其巨大的市场需求,因此其二维可视化向三维可视化的发展成为亟待解决的问题。

1 ActionScript(简称AS)

AS是支持面向对象的编程语言,它是Flash内置的编程语言,并且在其环境中运行,吸收了多种计算机编程语言特点。其具有内容和程序的交互、数据绑定、数据编辑等功能。它可以为生动形象的动画进行脚本编程,可以制作出各种各样逼真的动画高级特效,可以很好地控制编辑完成的动画影片,实现人性化的人机交互操作、与各种服务器的人性化“对话”功能。AS在其虚拟机上运行。该脚本语言可以通过文本编辑器等软件来进行编译,被编译成的字节码格式是一种计算机能识别的二进制代码格式,SWF文件中包含编译完成的字节码,该字节码在Flash中运行。

2 Flash技术框架

Flash是一款二维矢量动画设计与编辑软件,支持流式媒体播放技术,可以在保证图像不失真的前提下,边下载边观看动画。同时所生成的FLA和SWF动画文件很小。该软件内容丰富,可以融合色彩、声音、文字和脚本交互等元素,创造出惊人的动画编辑效果。设计人员可以利用脚本设计出不同类型的高水平的动画。Flash主要由AS虛拟机与图形渲染引擎两大部分组成。其中,前者负责执行编译后的AS字节码,而后者则用来绘制显示列表中的图形对象。

显示对象列表 在Flash运行过程中,被渲染引擎渲染出来的屏幕中显示的“树”状图形对象被称为显示对象列表。如果显示对象没有在显示对象列表中出现,那么它就不会出现在屏幕上。当显示对象从显示列表中移出后,它就不能在屏幕上显示。显示对象列表是Flash中屏幕内容的层次关系结构,简单说显示对象其实就是AS脚本语言的内部类。显示对象列表是多个需要渲染的显示对象的集合,显示对象在被添加到显示对象列表之前是不需要渲染的。显示对象列表是一个树状结构,树的最上面是舞台,囊括多个显示对象。本身不是显示对象容器的显示对象不可以再包含显示对象,但是原本就是显示对象容器的显示对象可能包含其他显示对象或显示对象容器。显示对象的类遵循类的继承规律,子类所有的方法和属性由继承父类而来。

Flash技术优势 Flash可以作为浏览器插件运行在浏览器中,与其他传统技术相比较,具有比其他传统的播放技术更多的优点:跨多种平台的浏览器;插件较小并且具有极大的市场占有率;具有优美的界面效果和丰富的组件;Flex技术应用是开源的并且获得众多的开源社区支持;强大的功能以及多种数据技术支持。

3 Flash三维图形显示原理

三维坐标变换 在Flash三维图形显示中,几何变换将图形上的点作为基本元素进行操作,它将原始图形上的点作相应的变换后,重新组合变换后的点,形成新的图形。三维图形的几何变换都是以点为基本元素进行的,把图形的一系列定点作几何变换后,变换后的新的点就重新组合成新的几何图形。几何变换分为缩放、平移和旋转变换三大类,这三类变换可以用齐次坐标所给出的三维矩阵来表示。

齐次坐标就是将n维的点或向量表示成n+1维,如三维点(x,y,z)的齐次坐标为(mx,my,mz,m)。因此,同一个点和向量的齐次坐标表示可以有多个,即取不同的m值对应于同一个三维点。然而在三维几何概念中,点与向量的齐次坐标表示是不一样的:最后一个代数分量为0的是三维向量,最后一个代数分量为1的是三维点。判断一个齐次坐标表示的是点还是向量,只需要看坐标的最后一个代数式0还是1就可以。因此,普通坐标向齐次坐标进行变换时,若是点,最后一个代数就直接写1;若是向量,最后一个代数就直接写0。从齐次坐标转换成普通坐标时,直接去掉第四个坐标变成普通坐标。在文中涉及的几何变换中,向量只有大小与方向,没有位置概念。因此,平移变换变换的对象只能是点,缩放变换与旋转变换变换的对象是点与向量。

这些齐次坐标所给出的三维变换矩阵中存储着用于变化的一系列数据,在此三维矩阵中,X轴、Y轴、Z轴的数据位于前三列。平移变换的数据在最后一列,缩放变换和旋转变换的数据在前三列中,缩放因子居于前三列的对角线上。

投影变换 由于Flash是一个二维坐标体系,要模拟三维立体效果就需要把三维坐标转换成二维坐标,这样才能在二维坐标系中显示。而要实现这种转换需要借助于投影变换。通过投影方式能将三维空间中的物体映射到二维屏幕,投影模式主要包括透视投影与平行投影俩大类。被透视物体成像的大小是根据物体离所观察视点的远近而定的,透视投影更符合人类真实的视觉感受。

1)透视投影。从三维空间中选取的某个特定的投影中心与所观察物体上的每一个点的连线汇聚成多条射线,这些射线和所选定的投影平面交点的集合就是被观察物体的投影。透视投影的投影中心是在有限远处的。透视投影的特点是:不保持物体相关比例,被透视物体成像的大小是根据物体离所观察视点的远近而定的,透视投影更为符合人类真实的视觉感受,能够生成逼真的感视图,遵循“近大远小”视觉规律。透视投影可以从投影中心、投影平面、投影方向等方面分析。

2)平行投影。保持所观察物体大小比例不发生变化,投影中心距离在无限远处的投影是平行投影。投影的这种特点是三维图形绘制中比例绘图的一个重要方法,所观察物体的精确绘制是通过平行投影获得的。平行投影可以从投影方向、视平面、物体上面的某点投影到视平面上的坐标等几方面进行分析。

纹理映射 将系统存储的纹理模式由纹理空间转换到屏幕空间的物体表面的过程被称为纹理映射。其中纹理模式由一组纹理矩阵数据来表示,还能用来修饰被映射物体的光强度值。在三维图形显示中,纹理映射成为逼真图形绘制的重要组成成分,应用纹理映射可以舍弃物体的表面细节部分,快速绘制出逼真的图形。如绘制一间室内场景时,可以使用一幅拍摄完成的逼真的室内全景照片作为纹理图片贴到一个脚本编译的球形模型上面,这样,一间逼真的室内场景就完成了。如果舍弃纹理映射的简单方法不用,室内的每一面墙都要拆分为一个独立的矩形分开绘制,无疑增加了绘制室内场景的难度系数。

在Flash三维图形显示中,每个像素纹理的宽和高对应一个纹理坐标,这些纹理坐标沿着UV坐标被映射到[0,1]范围内,这个过程叫做UV映射,坐标为UV坐标。当绘制一个多边形时,计算机会计算出三角形中每个顶点的UV坐标,这些坐标决定在渲染时如何将一张纹理应用到多边形上。

参考文献

[1]张学军,唐久磊,魏江明.基于Flash3D的中学化学虚拟实验平台的设计与实现[J].电化教育研究,2014(1):79-84.

[2]孟祥增.三维虚拟场景的创建和立体播放[J].中国电化教育,2011(8):125-128.

[3]李欣.基于Flash的三维WebGIS可视化研究[D].杭州:浙江大学,2012.

[4]钱蔚.支持GPU的Flash3D技术[J].计算机系统应用,

2013(12):219-222.

[5]陈忻.Flash三维游戏开发探索[D].杭州:浙江大学,

三维可视化平台 篇4

随着国民综合经济实力的提升, 人们更加追逐于物质享受和精神享受。近些年, 我国旅游业日趋渐长, 发展迅猛, 逐渐成为我国第三产业的中流砥柱。各个旅游景区为提升服务质量, 促进自身发展, 加强景区地理信息系统的建立, 以此为游客提供更加详细的观光数据。基于VRP平台的景区三维可视化展示, 能够全面还原景区面貌, 极具真实性。

1 虚拟现实技术概述

1.1 虚拟现实技术简介

VRP (Virtual Reality Platform, 简称VR-Platform或VRP) 即虚拟现实平台。VRP虚拟现实平台具有适用性强、操作简单、功能强大、高度可视化等优点。利用VRP平台, 可以将真实客观的事物在计算机中真实模拟出来, 主要是利用传感器等辅助技术方式, 以电子模拟的形式展现出客户世界, 使用户能够具有身临其境的感觉。总之, VRP平台主要是利用高科技技术, 营造出真实但是具有虚拟性质的人工环境[1]。

1.2 VR-Platform平台优势

VRP虚拟现实仿真平台是我国企业独立研发的一款虚拟现实软件, 在现阶段的市场环境中具有较高占有率, 极具发展空间;当前时期广泛应用于城市规划、桥梁道路设计、室内设计、古迹复原、地质灾害、旅游教学、水利电力等众多领域, 为其提供切实可行的解决方案。相比较其他类型软件, VRP更加易于操作掌握, 随着版本的不断升级, VRP软件各项性能逐渐提升和完善, 为用户带来更加稳定性和便捷性的使用感受。其良好的板块划分、具有导向作用的图标系统、以及清晰大气的外观风格, 有效的的提升用户的创作效率, 可以使作品更加具有质感。此外, VRP软件支持VRP-MMO多人在线, 支持3ds Max版本;增加了相机转场特效和环境特效等功能;其强大的网络发布功能, 满足于多种浏览器需求[2]。

2 基于VRP平台的景区三维可视化展示具体内容

2.1 建模方法

建模也就是指在VRP平台的基础上, 利用3DS MAX技术, 实现2D或者3D模型的建立。

2.2 纹理生成

作为3DS MAX较为重要的一个环节, 纹理贴图对于真实还原三维场景起到重要影响。比如说墙角线与复合线遮罩法、或者面片树木十字交叉法等。纹理数据在虚拟世界逼真效果、运行效率、以及沉浸感中, 都极为重要。如果采取实地拍摄的方式, 可以选择晴朗的天气, 有利于提升照片亮度。纹理贴图中, 主要包括光纤跟踪、衰减、噪波和位图法等方式。

2.3 植物景观制作

相比较于建筑物体, 植物形态更加复杂, 制作起来具有一定困难。如果利用3DS MAX, 容易导致最终的建模文件过大, 增加后期制作时间。如果是基于VRP平台, 充分利用其具有的植物制作方法, 可以真实的还原植物景观, 有效提升后期漫游、浏览速度。在一般场景中, 植株通常以群体性形式存在, 如果采取单独制做的方式, 容易导致制作过程过于繁琐, 可以利用专业插件实现群体植株的制作。

3 场景的烘焙渲染

灯光材质在非实时环境中完成的渲染效果, 可以利用烘焙渲染, 可以交互环境的有效转换, 然后, 再讲烘焙后的贴图, 贴回到场景中。将光照信息转换成贴图, 由于不需要进行计算, 进而有效提升速度。

4 VR场景制作与漫游

4.1 碰撞检测

利用碰撞检测技术, 可以实现下列操作的实现:与场景实体的碰撞检测, 如果碰到场景中实体模型, 比如说高墙或者建筑物, 将不能继续进行。VRP平台具有精准、快速、高校的碰撞算法, 场景只需完整, 不存在烂面, 或者实心体漏缝, 即可实现碰撞的检测。

4.2 日照分析与虚拟天空

对于室外场景的制作, 通常情况下, 利用虚拟天空来对整个场景的氛围进行烘托。对于天空的制作, 需要添加灯光, 利用VRP编辑器, 可以对日照情况进行精准的分析, 进而满足场景需求;此外, 在具体演示中, 能够自动出现根据时间变化而变化的灯光效果, 真实还原景区场景。特别强调的是, VRP的天空盒, 同全景图具有相同的原理, 也就是其视点不能移动[3]。

4.3 VRP环境动态漫游

在虚拟现实技术中, 实时交互性具有重要作用。能够做出各种场景漫游变换以此满足用户需求, 通常需要利用软件输入设备, 配备常见的设备例如鼠标和键盘, 即可实现用户动作的捕捉。通过利用应用程序, 对用户按键动作进行捕捉, 然后转换成控制命令, 进而实现控制场景的交换。

5 发布文件

VRP平台制作的发布形式, 具有运行速度快、存储空间小等优点, 能够将三维场景制作成.exe格式, 最终进行发布。

6 总结

总而言之, 利用VRP平台, 能够真实还原出景区地形、地物、建筑施舍、以及花草树木, 更加具有逼真感和清晰感。基于VRP平台的景区三维可视化展示, 能够有效的改变传统景观展示方式, 使展示效果更加丰满, 更加生动形象;同时有利于提升景观管理效率, 为景区带来更大的经济效益。随着科学技术的不断发展和创新, 虚拟平台技术的不断推广, 必将能够推动我国旅游业的发展。

参考文献

[1]于明.基于VRP的三维楼盘漫游系统研究[J].长江大学学报:自然版, 2013, 10 (09) :55-58.

[2]刘玉宾.基于VRP-Platform的唐山震前景观虚拟可视化仿真关键技术研究[J].唐山师范学院学报, 2015 (05) :42-44.

三维真实感地形建模与可视化 篇5

研究了三维真实地形建模与可视化的整个流程,利用OpenGL通用图形程序接口实现了基于DEM数据与遥感影像的`三维地形的快速生成与仿真;并将三维地形生成技术应用到了天山公路三维地质灾害场景可视化中.详细阐述了以遥感影像作为地形纹理的处理方式与流程以及构建真实地形场景技术的方法和优化方案,提出了在实际应用中建立个性化三维地形系统的重要性.

作 者:郭珊 何政伟 GUO Shan HE Zhengwei 作者单位:郭珊,GUO Shan(成都理工大学地质灾害防治与环境保护国家重点实验室,成都,610059)

何政伟,HE Zhengwei(首都师范大学,源环境与地理信息系统北京市重点实验室,北京,100037)

三维可视化平台 篇6

三维技术的不断发展对可视化的需求不断提高。对不同数据来源的三维模型进行高效的可视化具有重要意义[1]。现在市面上的大型CAD系列软件, 比如solid works, ug等, 虽然具有强大的功能, 但是本身比较庞大, 不易于安装, 而且往往不具备针对性。本文基于Opencascade和Qt, 独立开发了一套轻量级的三维模型的构建及可视化系统。

2系统开发平台

2.1 Qt平台

Qt是由奇趣公司所开发的。它是一个图形用户界面的开发工具。Qt具有跨平台特性, 它同时支持Windows和Linux等不同的操作系统[2]。Qt本身具有很多API可用于快速开发, 采用面向对象的思想设计而成。这些特点使得开发者开发系统更加具系统性和可扩展性[3]。

2.2 Opencascade平台

Opencascade是由法国Matra Datavision公司所开发的[4]。采用面向对象的思想设计, 具有开源特性。Opencascade可分为五大模块。模块包含工具箱, 工具箱包含开发包, 开发包包含类, 类封装了算法。基础模块提供自动内存管理, 集合容器以及异常处理。模型结构模块提供数据组织方式。模型算法模块提供构建模型的算法。数据交换模块提供不同数据格式的交换。可视化模块提供三维模型场景创建等功能。

3系统开发实现

本文利用Qt与Opencascade相结合, 达到建模与可视化一体化。为了在Opencascade中创建三维场景, 需要设置属性, 创建3DViewer, 视图, 交互环境, 交互对象, 模型以及显示七大步骤。

3.1系统开发流程

上述七大步骤中每一步都需要结合Opencascade以及Qt的特性进行详细的设计。在创建3D viewer时, 初始化场景后, 打开Opencascade的光照功能, 并指定光照类型。本系统采用Opencascade默认光照模式。另外, 还可以设置坐标轴, 格网, 投影, 背景颜色。Opencascade为此提供了一系列函数来控制场景中模型的显示方式。该过程如下:

另一重要步骤是创建交互环境。将3Dviewer放到交互环境中, 完成交互。该过程如下:

创建完交互环境, 需创建交互对象, 并把模型放置在交互对象中。最后调用显示函数完成场景创建。该过程如下:

手动调用构建模型接口函数并赋予其参数, 然后将三维模型显示在场景中。此外通过Qt实现鼠标对场景中模型的控制包括平移, 旋转, 缩放, 填充整个场景等功能。

3.2交互对象中构建模型的两种方式

3.2.1几何建模模块开发

利用Opencascade几何建模模块的强大功能, 完成各种复杂模型的创建。在Opencascade中, 基本模型类都由根类BRep BuilderAPI_Make Shape类派生而来, 如通过BRep Builder API_Make Torus类构建圆环体。通过调用这些类, 可以在系统中创建不同三维模型。

3.2.2数据交换模块开发

利用Opencascade的数据交换类模块, 可以实现不同数据格式的三维模型的读取。该模块提供了大量数据交换的标准以及开发接口。主要有STEP, STL, BREP, IGES, XYZ等。本文开发的可视化系统可以对上述的五种格式的模型进行数据交换。

4实验结果

本系统可以实现三维模型的构建并扩展了模型的数据源, 可以实现多种数据格式模型的读取, 包括STL, IGES, BREP, STEP, XYZ格式。前四种是工业上数据交换的标准格式, 最后一种XYZ格式适用于点云数据。如图1所示, 为了验证本系统的可靠性, 构建圆环体并对其进行旋转和缩放。旋转鼠标滚轮, 可以对场景中的模型进行放大和缩小操作。按下鼠标滚轮, 可以对场景中模型进行旋转。按下鼠标右键, 可以对场景中模型进行平移。还可以利用本系统读取XYZ格式的点云模型, 并同时进行平移旋转以及拾取点等操作。最后, 本系统再以读取Brep格式的3D厨房模型文件为测试, 可以分别设置点线面三种不同的拾取方式。

5结论

本文基于Qt和Opencascade, 结合C++编程语言, 设计并开发了一个轻量级的三维模型可视化平台。本平台实现了模型创建, 模型读取, 模型的旋转平移缩放以及模型点线面不同的显示方式和鼠标选取方式, 便于各行业运用该平台进行模型可视化。

摘要:三维技术的发展对模型可视化技术产生了迫切的需求。针对目前传统可视化系统庞大, 灵活性较小, 不易于运用等缺点, 本文基于Opencascade和Qt, 利用C++作为编程语言, 开发了一个轻量级的三维可视化平台。该平台既能根据需要构建三维模型, 又能用于三维模型的展示及交互操作。这对于三维仿真、虚拟现实的研究有着重要的实际意义。

关键词:三维,Opencascade,Qt可视化,交互

参考文献

[1]蔡东海, 屠立群.基于Open CASCADE的快速干涉检查[J].轻工机械, 2010 (2) .

[2]袁媛, 王延红, 江凌等.C++类库Qt在数值模拟软件开发中的应用[J].现代电子技术, 2010.

[3]蔡志明.精通Qt4编程[M].北京:电子工业出版社, 2011, 2.

三维可视化平台 篇7

二维的煤层底板等高线图不能很好地表达煤层的走向和断层, 三维煤层底板等高线图能够更好地表达出巷道之间及其他的空间结构。目前的井巷设计主要基于二维勘探图纸, 用二维表示三维的地质现象和复杂的巷道分布很不直观, 需要技术经验丰富的工程师进行巷道的设计和优化工作, 并且在巷道铺设的施工过程中遇到新断层、褶皱等情况需要修正巷道设计, 十分不便, 三维巷道模型以其直观、易修改性解决了这一问题。三维巷道的创建能够模拟出井下复杂交错的巷道形势不仅大大增强了其可视化效果, 还能让工作人员迅速的发现问题, 提高工作效率。本文是基于Auto Cad2010和c#.net二次开发的专业成图。

1 三维煤层底板等高线图

1.1 概述

煤层底板等高线的方向, 即为煤层的走向, 用方位角表示。在水平面内, 垂直煤层底板等高线由高到底的方向, 即为煤层倾向, 用方位角表示, 并与走向相差90°。煤层倾斜线与倾斜线之间的夹角即为煤层倾角。为确保走向的单一性, 煤层的走向比煤层的倾向小90°。煤层受力后发生断裂并发生明显的相对位移形成的构造形态为断层。

1.2 三维等高线数据

根据井下的实际情况, 可以得到煤层底板等高线的有效数据, 即煤层底板等高线数据信息、煤层底板等高线描述、断层数据信息等, 将其放入数据库中待调用。所需参数数据可以通过交互界面, 输入煤层名称id、分段id和节点坐标 (x, y, z) 建立数据库, 实现既有数据的读取、添加和删除。本文利用Access2003建数据库;在程序中采用ADO.NET接口。

1.3 三维等高线的实现

在所生成项目的新建Ployline3d.cs文件, 一个共有类Ployline3d创建。接下来向这个类加入命令, 导入Auto CAD.NET托管封装类。在声明语句之前导入Application Services, Database Services, Editor Input, Geometry, Runtime命名空间, 使用Command Method属性。

在所需参数已存入数据库前提下, 直接从数据库中调用数据, 具体实现如下:

在public void Polyline () 方法种首先连接数据库, 得到分段id及数, 根据id求得每个分段上节点, 每个分段就是一个多段线, 代码实现:

while (olereader.Read () ) //olereader是Oledb Data Reader对象, 从数据库中正向读取记录

{double a=Convert.To Double (olereader[0]) ;//string类型转化double double b=Convert.To Double (olereader[1]) ;double c=Convert.To Double (olereader[2]) ;pt[i]=new Point3d (a, b, c) ;//a, b, c分别表示X, Y, Z}Point3d Collection pts=new Point3d Collection (pt) ;Object Id poly3d Id=Add3d Poly (pts) ;//实现三维多段线

最后得到的煤层底板等高线图, 如图1。

2 三维巷道

2.1 巷道的概述

对整个矿井而言, 井巷是其核心部分。煤矿信息系统主要面对两类空间目标, 及井巷和地层。煤矿开采对象为类型众多、形态各异、条件多变且采前未能完全确知的天然资源, 且井下巷道纵横交错、工作地点及资源条件不断变化, 如何立体、直观、准确地表现并反映井下巷道及其空间关系, 是煤矿测绘科技工作者的重要研究课题, 也是煤矿安全、高效、合理开发的重要保障。因此井巷三维表达是煤矿信息系统研究的主要基础内容之一。

2.2 巷道数据模型

结合目前国内外煤矿煤矿信息化的相关研究, 井巷数据表示主要由如下两种方案: (1) 使用交汇点组织数据, 即一系列有连接关系的交汇点连接构成连通的巷道, 巷道截面参数、名称和编号等存储在交汇点的属性表中。交汇点高程有两种存储方式:存储在交汇点属性表中;存储在交汇点Z坐标中。处理数据时, 一系列有连接关系的交汇点代表巷道顶板中线; (2) 使用边组织数据, 即一条边或者几条想连接的边构成连通的巷道。由于一条巷道对应一种截面和一个名称, 因而可以将这些参数存储在边的属性表中。处理数据时, 边代表巷道底板中线。本文结合了两种方案的优点, 将巷道抽象为多段线, 记录截面参数从而构建真三维巷道模型。如下图2巷道模型几何要素分解:

2.3 巷道轴线信息及截面参数设计

巷道的轴线主要有直线和圆弧两种形式。根据轴线类型的不同, 若为直线则圆心点为空, 根据起始点和终止点确定一条空间直线, 若为圆弧则根据起点坐标、终点坐标、圆心坐标等基本信息可以唯一确定一条空间圆弧。每条巷道可能包含多条巷道段, 以轴线ID标识设计巷道轴线信息表, 记录每条巷道轴线信息, 包括编号 (轴线ID) 、起始坐标、终点坐标、轴线类型, 圆心坐标等参数。这一数据结构记录参数比较丰富, 可以描述各巷道不连续的情况, 但如果巷道每段首尾相连则数据冗余。若将节点作为巷道轴线基本组成部分, 每一段巷道轴线段由序列点组成, 每一节点包括截面形式, 轴线类型等控制信息。添加巷道段更为简便, 新建巷道段是只需依次读入测量点数据即可。遍历数据库, 读出巷道轴线的信息, 用以上思路, 构建出整个巷道的轴线, 如图3。

巷道截面信息主要用来描述巷道的剖面, 煤矿隧道中常用的截面形式有直墙半圆拱形, 直墙圆弧拱形, 矩形和圆形等。主要考虑三维巷道的快速建模, 本文只考虑直墙半圆拱形截面形式或是圆形竖井。对于巷道截面只要描述宽和高两个外形参数, 根据截面类型, 即可确定截面参数。同时截面数据信息表记录了轨道形式, 拱厚, 壁厚等参数。

对于值墙半圆拱形:圆弧半径R=W/2, 直墙壁高h=H-W/2;对于圆形竖井:R=W/2=H/2;

然后根据拱厚和壁厚同理可得出外边界截面参数。

2.4 巷道三维几何模型构造

巷道建模步骤如下:首先根据轴线类型是直线还是圆弧, 获得轴线起点、终点三维坐标, 从而建立三维轴线段, 确定起始向量和终止向量。其次通过截面参数数据 (净高, 净宽) 描述巷道轮廓, 得到剖面图形。然后旋转截面图形, 使其法线向量于轴线垂直。通过定义的平移矩阵将旋转好的截面轮廓平移到轴线的起点。最后, 沿轴线段放样内外截面轮廓, 分别由内轮廓和外轮廓通过方法:

Create Lofted Solid (ents, guide Curs1, ent, loftbuilder.To Loft Options () ) 获得三维实体模型, 再进行布尔减法操作即可得到一个有厚度的三维巷道模型, 如图4。

建模过程的其难点在于, 旋转和平移矩阵的建立:首先在XY平面内建立巷道截面内外轮廓线模型, 根据节点类型, 如果为起始节点则旋转轮廓线模型在XY平面内与轴线段向量正交;如果为中间节点。则需要计算上一轴线段向量与下一轴线段向量的角平分线向量, 并旋转使与之平行。然后旋转轮廓线模型到垂直XY平面。

2.5 巷道三维实现

在所需参数已存入数据库前提下, 直接从数据库中调用数据, 具体实现如下:

首先连接数据库, 将巷道信息表和截面信息表关联起。在得到轴线信息前提下, 根据点的形式和截面信息来实现旋转和平移。

在巷道基本信息表记录巷道功能, 包括轨道、皮带机、回风、联络、设备五种功能分类。在模型生产过程中通过不同颜色区分巷道。代码如下:

if (st[k].Equals ("回风") ) {s2.Color=Color.From Rgb (255, 0, 0) ;}else if (st[k].Equals ("轨道") ) {s2.Color=Color.From Rgb (0, 255, 0) ;}else if (st[k].Equals ("皮带机") ) {s2.Color=Color.From Rgb (255, 255, 0) ;}else if (st[k].Equals ("设备") ) {s2.Color=Color.From Rgb (0, 255, 255) ;}else if (st[k].Equals ("设备") ) {s2.Color=Color.From Rgb (255, 0, 255) ;}//s2是三维实体, 即巷道最后生成望风岗三维巷道, 如图5。

结束语

本研究以Auto CAD 2010平台, 采用c#.net方法, 构造煤层底板等高线图, 并使巷道的二维和三维设计在CAD系统里得到充分的结合, 从而给巷道铺设在设计和施工带来了很大的方便。三维巷道的创建极大的提高了数据可视化程度, 对加强煤矿安全生产, 提高工作效率有着重要的意义。本研究成果不仅对巷道设计具有普遍意义, 而且还是对Auto CAD二次开发技术作了有益的补充。

摘要:AutoCad是世界上流行的绘图软件, 但是不能满足具有专业要求的图形, 结合AutoCAD的objectARX技术, 应用C#.net对AutoCAD进行二次开发, 绘制三维煤层底板等高线图, 阐述了怎样设计、创建井下三维巷道, 使煤矿设计新巷道的效率得以提高。

关键词:AutoCad,二次开发,三维巷道,煤层底板等高线图

参考文献

[1]张帆.AutoCAD VBA二次开发教程[M].北京:清华大学出版社, 2006.

[2]王东明.Visual C#.net程序设计与应用开发[M].北京.清华大学出版社, 2008.

[3]郑贵州, 申永利.地质特征三维分析及三维地质模拟现状研究[J].地球科学, 2004.

[4]武强, 徐华.三维地质建模与可视化方法研究[J].中国科学D辑, 2004.

辣椒生长的三维可视化模拟 篇8

虚拟物研究是融合了植物学、农学、应用数学和计算机科学等学科的新兴交叉学科, 对于生物工程、农业、环境和病虫害管理等方面的研究均有重要意义。利用计算机模拟植物的生理过程、形态结构及生态变化的关键是作物器官三维几何建模和植物生长过程的可视化技术, 这也是虚拟作物的研究热点[1]。

国外学者已开展了虚拟植物的研究, 开发出许多植物虚拟软件, 但仅仅从视觉效果上仿真出“虚拟植物”。荷兰开发出TOMGRO与TOMSIM两个温室番茄作物模型软件, 研究成果对于温室技术应用的指导起到重要作用;澳大利亚研究的Virtual Plants应用软件主要模拟棉花、大豆等农作物的生长过程和病虫害对植物生长的影响, 但只能定性模拟, 距生产实用还有相当的距离。国内在单子叶植物小麦、玉米器官及群体生长的可视化模拟方面做了一些尝试。丁维龙[1]研究了虚拟植物生长模型与农业智能系统知识模型的集成机制, 并以温室番茄生产管理为实例, 设计开发了基于虚拟生长模型的温室番茄栽培管理专家系统;潘志强[2]通过三维数字化仪测量数据, 研究了棉花地上形态结构静态的可视化, 并利用L系统对棉花形态结构进行了虚拟探索;赵星[3]基于植物的生长机理, 建立忠实于植物学的植物形态发生模型—双尺度自动机模型、植物构造模型的生成、花序的模拟、虚拟农作物生长和植物枝条弯曲的模拟;杨娟等[4]采用NURBS建模方法, 针对双子叶植物棉花进行了器官形态的三维建模、纹理渲染及棉花动态生长的模拟。上述研究一般只考虑生长模型的输出参数如何在可视化模型中的应用, 而对可视化模型的输出制约生长模型的研究较少。这是由于生理生态模型提供的是作物群体水平数据, 而可视化模型则需要植株个体、器官水平数据。

本文以辣椒为对象, 针对辣椒器官不同的形态特点, 研究辣椒器官建模方法和辣椒植株三维形态构建方法, 并结合子结构算法, 以实现辣椒动态生长的可视化仿真。

1 辣椒器官形态几何建模

辣椒的三维形态是由器官的三维形态、空间拓扑结构以及各器官的空间姿态决定的。辣椒地上部分的主要器官有茎、叶、花和果实。本文从苗期到开花结果期对辣椒茎、叶和果实进行观测, 构建了基于器官形态特征参数的精确几何造型算法, 用于各器官的几何建模。

1.1 茎的几何建模

辣椒茎的分枝很有规则, 一般是往上一而二、二而四、四而八地延续分枝。节间生长在一定程度上可简化为圆柱体的变化, 并且节间器官的生长同时表现为沿主茎方向的伸长生长和沿横向的增粗生长两方面。故本文利用柱体来构建节间的虚拟模型, 柱体的长度、上下顶面和底面的半径均设为公共变量, 分别控制茎长和茎粗, 茎角度随着辣椒的生长而变化。最后, 使用多层纹理贴图技术增强真实感。不同生长阶段茎的形态如图1所示。

1.2 辣椒叶的几何建模

叶子是作物的重要器官之一, 它贯穿于作物的整个生命过程, 因此叶片的显示效果对虚拟作物生长过程有重要影响。

用实验观测数据, 在叶片表面取一组具有拓扑结构的特征点 (型值点) Qi, j (i=0, 1, …m, j=0, 1, …n ) , 设叶脉曲线方向 (叶长方向) 为u, 垂直于叶脉曲线方向 (叶宽方向) 为w, 如图2 (b) 所示。由该组型值点可计算出节点矢量, 进而求出NURBS基函数并反求出NURBS曲面的控制顶点。由式 (1) 可逐点计算出NURBS曲面上任意参数 (u∈[0, 1] , w∈[0, 1]) 所对应的点, 即

式中 Vi, j—控制顶点;

Wi, j—权因子;

Bi, k (u) —沿u向k次B样条基函数;

Bj, h (w) -沿w向h次B样条基函数。

根据求得的控制顶点和节点矢量即可构造出叶片曲面模型并生成NURBS曲面。图2为叶子照片、网格方式、实填充方式和纹理贴图后的效果。

1.3 辣椒果实的几何形态建模

细线椒为细长形状, 略呈弯曲, 颜色会由绿变红。本文采用椭球面参数方程进行形变的方法, 构建较为真实的辣椒果实形状。根据辣椒的形状特征, 椭球面及变形方法如下:

1) 中心在原点的三维椭球面参数方程P (u, w) 的分量表示为

式中 xp, yp, zp—P (u, w) 的3维坐标;

rx, ry, rz—x, y, z等3个方向上的椭球半径。

2) 考虑椭球表面上任一点处的法向量为n= Pu×Pw (Pu, Pw 分别为沿u和w方向的偏导矢量) 。为了在椭球面表面上产生凹凸变形, 在表面上每一采样点处沿法线方向附加一个以扰动函数g (u, w) 作为分量的矢量, 从而得到一个新的表面Q (u, w) 。其任一点的位置矢量为Q (u, w) =P (u, w) +g (u, w) ×n/|n|。设椭球表面上任一点 (u, w) 处的单位法矢量为 (a (u, w) , b (u, w) , c (u, w) ) , 则变形后的曲面参数方程Q (u, w) 的各分量为

3) 经多次试验, 需设定参数为rx=3ry=rz, 设定的干扰函数为

4) 根据式 (3) 和式 (4) 构建的辣椒果实如图3所示。

2 动态生长可视化

2.1叶子的子结构

辣椒叶为互生单叶, 长叶柄, 叶形呈尖椭圆形, 每一节上着生一叶, 而且交互排列着, 叶长3~12cm。叶片在茎上的排列规律为相邻的5片叶绕茎2 周, 叶序分数为2/5 , 即各叶子沿着生枝以2π×2/5=140°的夹角向上螺旋排列。

2.2 动态生长可视化方法

实现动态模型的一般方法是逐节顺序模拟算法, 即每次生成一个节以及节上的花叶等侧生器官。这种方法虽然对于草本植物或花序的模拟非常快速有效, 而且易于理解, 但是由于模拟时间与节间数目为线性关系, 所以对于复杂的树结构, 包含很多重复结构的植物等, 所需的模拟时间将迅速增长。为提高虚拟速度, 本文提出以子结构为单位来生成植物结构的方法。该方法事先计算重复出现的子结构, 当其他结构中出现相同的子结构时, 则直接调用, 无需逐节模拟, 故可以有效减少模拟时间。

利用子结构算法以植物的生理年龄和生长年龄为尺度, 将植物结构递归分解为一系列相似子结构集, 并且用子结构分解的方法得到各子结构所包含的不同器官的数量。根据不同生长阶段植物器官的几何尺寸, 用子结构相似替代的方式, 依次由最大生理年龄的不同生长阶段的子结构到最小生理年龄的不同生长阶段的子结构建立一个子结构库。应用该方法描述植物的主结构时, 只需要将主结构分解为主轴和附着于主轴上的一系列子结构。这些子结构被存贮于子结构库中, 仅需要进行适当的操作, 即可描述完整的主结构。虚拟辣椒模拟子结构的步骤如下:

1) 分别绘制茎、叶片和果实等器官在几个形状变化明显阶段的图形样本, 并存入器官图形库 (即子结构库) 中;

2) 根据子结构中器官的长度和方向, 把相应器官的参数按顺序存储在子结构文件中;

3) 迭代中出现前一次迭代的子结构时, 则根据子结构名称和迭代次数搜索子结构文件;

4) 根据子结构在当前结构的插入位置及生长方向, 对存储的信息进行旋转平移, 把子结构粘贴到当前位置。

3 系统实现及效果分析

利用建立的辣椒生长模型, 结合上述的辣椒茎、叶和果实的几何结构, 可以实现辣椒生长的可视化模拟。基于面向对象的软件设计方法, 采用模块化编程对可视化软件进行设计。系统主要由茎的可视化模块、叶的可视化模块、辣椒果实可视化模块及辣椒植株生长可视化模块组成, 较好地实现了辣椒植株生长的仿真模拟, 可形象直观地再现辣椒在不同生长阶段的可视化效果。

辣椒器官库采用类库的形式来设计, 每一个器官的表现都包含两类数据:纹理数据和几何结构数据。纹理数据结构定义了纹理贴图的名称及其索引号, 利用该结构中的数据即可控制模型的纹理, 为模型贴图, 增强其真实感;几何结构数据结构用于描述形态模型实体, 包括三角面、顶点、法线向量和纹理坐标等。通过器官库将辣椒生长过程数据映射到相应的器官表现上, 然后用三维的器官表现数据来设置状态机的值和绘制数据的值, 便实现了一次绘图过程, 重复上述过程, 即可实现辣椒的动态生长虚拟。辣椒生长可视化流程如图4所示。

CPlantOrgan类的设计如下。

系统实现了辣椒的静态三维几何形态模型和辣椒的动态生长的三维几何形态模型, 可单独显示各器官的形态, 也可以由器官再组合成辣椒的整体的模型。虚拟辣椒在各生长阶段的画面如图5所示。测试结果表明, 系统可较为真实地虚拟辣椒生长过程, 且子结构算法减少了计算量, 提高了渲染速度。

4 结论

1) 基于NURBS曲面的对辣椒叶进行建模。该方法可以对辣椒叶生长过程中的任一时刻的形态变化进行逼真地模拟。

2) 采用椭球曲面参数方程对辣椒的果实进行建模。该方法简单直观, 生成真实感强虚拟植物果实的研究。

3) 采用子结构算法实现辣椒的动态生长可视化, 有效地缩短了模拟时间, 提高了渲染速度。

今后尚需研究植物不同生长时期的更为精确的模型, 并准确提取辣椒的生长规律和形态规则, 结合植物生长模拟模型, 实现忠实于植物学的植物生长虚拟的方法。

参考文献

[1]丁维龙.虚拟植物生长模型及其与智能系统集成研究[D].合肥:中国科学技术大学, 2004.

[2]潘志强.棉花地上形态结构的可视化研究[D].北京:中国农业大学, 1999.

[3]赵星.忠实于植物学的虚拟植物生长研究[D].合肥:中国科学技术大学, 2001.

[4]杨娟.基于NURBS的棉花生长可视化[D].北京:中国农业大学, 2006.

[5]ARVO J, AND KIRK D.Modeling plants with environment-sensitive automata[J].In Proceedings of Ausgraph 1988, 88:27-33.

[6]BELL A.Plant form:An illustrated guide to flowering plants[M].Oxford:Oxford University Press, 1991.

[7]LifengWang, Wenle Wang.Real-Time Rendering of PlantLeaves[C]//International Conference on Computer Graphicsand Interactive Techniques ACM SIGGRAPH, New York:ACM, 2006.

基于WebGL的三维可视化 篇9

1三维可视化

三维可视化技术随着计算机科学的发展, 已经融入到各个学科中去, 在医学、地理学、测绘学、建筑学等学科中都有不俗的表现[3], 并且在一定程度上, 对这些学科的发展起到了不可估量的作用。例如在建筑领域, 良好的三维效果能够极大地提高效率, 给予决策者更直观的表现以帮助对其质量和成果的评估, 减少不必要的浪费;在虚拟现实领域, 三维可视化可以提供更加真实、更具视觉冲击效果的场景, 更可以完美的再现一些古代的场景, 使观者畅游其中仿若身临其境一般;在医学领域, 对病人进行三维的可视化能极大地帮助医生对病人实施更加精确的手术, 提高手术的成功率, 有效的促进了医学的发展。因此, 三维可视化的研究与发展将会带给人们更大的惊喜。

2 Web GL技术

在地理学领域, 三维可视化技术能提供更为直观的可视化效果, 但是传统的网络地理信息系统 (Web GIS) 是针对二维的栅格和矢量数据开发的, 因此如何将三维可视化技术融入Web GIS是很有必要的。但对于三维的Web GIS来说, 由于受到Web3D技术发展的限制, 往往都需要加载组件或者预先安装插件, 而且具有可移植性差, 显示效果不好的缺点。Web GL作为新一代Web3D图形标准在这样的背景下孕育而生。

Web GL具有两大优点: (1) Web GL完美地解决了现有的Web3D的两个问题:它通过HTML脚本本身实现Web3D的制作, 无需任何浏览器插件支持; (1) 它对图形渲染是利用本机的硬件, 通过统一的、标准的、跨平台的Open GL接口实现的, 所以Web GL可以运行于许多不同的硬件设备之上, 例如桌面电脑、智能手机、平板电脑.因为是被设计成直接工作在底层显卡端的, 所以Web GL比目前其他的典型的web技术都要更加复杂。这也正是它为什么能够如此迅速的完成大量的计算, 并实现复杂的实时3D渲染的原因。

3基于Web GL三维可视化的实现

在三维的世界里, 所有的东西都有横, 竖, 深度。将这些东西重现, 就是一个实时3D渲染。笔者是在一个二维的显示器上来再现这个三维世界的, 电脑和手机的屏幕, 都是一个二维的显示器。利用Web GL可以模拟三维空间, 但是最终必须输出显示在一个二维的显示器上。由深度决定的前后关系, 根据远近进行放大和缩小, 这些都必须提前进行运算得出结果。

网络三维可视化是基于B/S架构的模式构建的, 当有大批量的3D模型数据或lidar数据浏览时, 就会因网络传输速度的影响而出现较长时间的等待, 这是大家所不愿意看到的事情, 但是对于地理学来讲, 海量的三维数据是研究地理学所不可缺少的部分。因此如何在Web端对海量的数据进行管理与调度是很重要的一个事情。该文以Cesium为例实现网络三维可视化, Cesium是一个基于Web GL的虚拟三维地图引擎。Cesium对三维可视化引入了一个新的概念3DTiles, 旨在提高在Web端的对海量三维数据可视化的效率。

3DTiles是为海量的异构三维地理空间数据集所设计的一个开放的规范, 该规范适用于各种常见的地理数据, 例如:三维模型数据, 点云数据以及二维的矢量数据。3DTiles已成功的在Cesium平台实现, 该规范可以应用于其他的三维引擎和转换工具。3DTiles的主要目的是针对大规模的异构数据源提高其加载速度和渲染性能, 它只对浏览器用户所给定的可见的三维视图窗口进行不同级别的切片显示, 由于它是基于Web GL设计开发出来的, 因此可以更快的加载与处理三维数据, 并且为了减少客户端的处理, 3DTiles可以对数据进行预处理和批动态处理。目前Cesium支持gltf格式, gltf是khronos组织用于互联网或移动设备上展现3d内容, 充分支持Web GL图形加速标准。

4结语

随着当前各种软件、硬件技术的不断发展, 该文针对了网络三维可视化过程中需要安装插件的问题, 提出了一种无需插件的渲染方法。采用Web GL技术三维模型可以实时的在浏览器端被绘制, 这将解决人们在处理复杂图像或者处理三维图像需要下载插件或者客户端的繁琐步骤。同时该文对一个基于Web GL的虚拟三维地图引擎Cesium进行了分析、测试, 其结果都表现出良好的渲染效果。由此说明使用Web GL可以实现浏览器端三维场景的无插件快速的绘制, Web GL作为一个新的网络三维可视化前端展示的实现手段是完全可以胜任的。

摘要:伴随着网络三维地理信息系统的快速发展, 基于网络的各种三维可视化技术也是层出不穷。因此, 该文介绍了一种不需要组件加载的网络三维可视化技术——Web GL, 对突破目前在网络环境下传输、加载大规模数据, 大范围场景渲染技术的瓶颈具有重要意义。通过简单介绍一种基于Web GL的虚拟三维地图引擎, 显现出Web GL是一种可以通过硬件渲染实现网络三维可视化的技术手段。

关键词:WebGL,网络三维,可视化

参考文献

[1]王维敏.Web3D技术探索及几种Web3D技术的比较选择[D].武汉:武汉大学, 2004.

[2]Khronos Group.Web GL specification[EB/OL].[2014-10-2].https://www.khronos.org/registry/webgl/specs/1.0/.

OpenGL技术的三维可视化探析 篇10

1 Open GL概述

Open GL是近几年发展起来的一个性能卓越的三维图形标准, 它是在SGI等多家世界闻名的计算机公司的倡导下, 以SGI的GL三维图形库为基础制定的一个通用共享的开放式三维图形标准。Open GL实际上是一个开放的三维软件包, 它独立于窗口系统和操作系统, 以它为基础开发的应用程序可以十分方便地在各种平台间移植;Open GL使用简便, 效率高。它具有七大功能:建模、变换、颜色模式设置、光照和材质设置、纹理映射、位图显示和图像增强、双缓存动画;Open GL可以与Visual C++6.0紧密接口, 便于实现机械手的有关计算和图形算法, 可以保证算法的正确性和可靠性。为了利用Visual C++6.0的强大功能来实现对Open GL三维图形的绘制, Windows提供了Open GL32.DLL和GLU32.DLL动态链接库, Visual C++6.0包含了GL库 (openg132.lib) 、辅助库 (glaux.1ib) 和实用库 (glu32.1ib) , 开发者可以在多种硬件平台及操作系统下方便地利用这个图形库, 使我们方便地编程, 简单、快速地生成美观、漂亮的复杂的三维彩色图形。

2 建模

数字高程模型 (DEM) 是地形空间连续起伏的数字表达, 它由对地形表面取样所得到的一组点的 (X、Y、Z) 坐标数据和一套对表面提供连续描述的算法组成。

DEM的最常见形式是高程矩阵或称为规则矩形格网Grid, 它可以由对不规则或规则的空间数据点进行插值获得。DEM的另一种表现形式是不规则三角网 (TIN) , TIN是一个使用一系列连续相邻的不规则三角形组成的地面模型, X坐标和Y坐标间距不定。这两种表现形式相比之下, TIN模型能较好地顾及地貌特征, 允许在地形复杂的地区收集较多的信息, 其数据冗余少, 简化数据可能带来的失真也较小, 所以建立三维地形模型中运用的是不规则三角网 (TIN) 。

计算机图形学中的所有光滑曲面最终都是由多边形 (主要是三角形) 无限逼近得到的。因此建立曲面模型的实质是构造用来逼近该曲面的空间三角网。利用采集到的离散点根据Delaunay三角网的构网规则生成三角网。Delaunay三角形定义为:组成三角网的每个三角形不包含数据点集中除构成该三角形三顶点以外的任何其它点, 即Delaunay三角网能最大限度地保证网中三角形满足近似等边 (角) 性。对于任意给定的离散数据点集, Delaunay三角网的网形是唯一的。

3 可视化分析

实现三维图形可视化首先要解决建模问题。目前建模方法主要有两种:a.用Auto CAD和3DMAX等建模工具建立三维模型;b.直接利用Open GL或VRML等专用建模语言完成建模。

本文是直接利用Open GL建模。在Open GL中实现三维地形可视化的基本过程是:先收集DEM数据, 然后进行模型构造, 接着求每个顶点的法向量, 通过Open GL的相关函数来实现参数设置, 之后是进行光照计算、投影变换、视口变换和纹理映射, 最后实现三维地形的显示。以下将重点分析投影变换和纹理映射和绘制虚拟场景三个部分。

3.1 投影变换

投影变换的目的是将三维场景中的物体投影到二维平面上, 这个二维平面就是显示窗口。投影变换有两种, 一种是透视投影, 这种投影的效果与人眼观察世界的效果相同, 距离视点越远的物体看起来越小, 距离视点越近的物体看起来越大, 符合人们的视觉习惯。透视投影的应用比较广泛, 通常用到视景仿真和模拟真实场景的应用程序中;另一种是正交投影, 它的最大特点是无论物体距离视点多远, 投影后的尺寸不变。投影变换是使用矩阵变换来实现的, 在进行投影变换之前必须调用gl Matrix Mode (GL_PROJECTION) 函数将当前矩阵的类型设置为投影矩阵。

3.2 纹理映射

自然界中的物体表面很少是光滑和单调的, 往往具有各种纹理。在计算机图形学中是采用纹理映射的方法给计算机生成的物体图像加上纹理的。纹理映射的关键是实现影像与DTM之间的正确套合, 使每个DTM网格点坐标和相应的纹理坐标一一对应, 保证纹理在变换时与所附着的曲面保持适当的关系。纹理映射是非常复杂的。在Open GL中纹理映射需要执行的步骤如下:

3.2.1 定义纹理。

纹理通常被认为是二维的, 但纹理也可以是一维或三维的。通过函数gl Tex Image2D () 指定一个二维纹理, 其中包含了纹理图像的大小、纹理图像数据的数据格式和数据类型以及存储在内存中的图像数据指针等。

3.2.2 控制纹理。

用来说明纹理以何种方式映射到三维模型的表面上。一种方法是, 将纹理颜色作为最终的颜色, 另一种方法是, 使用纹理来调整片元的颜色值, 还有一种就是将一种常量颜色和片元混合起来。Open GL中提供了相关的函数为gl Tex Parameter* () 。

3.2.3 启用纹理映射。

绘制场景之前需要启用纹理映射。要启用和禁用纹理映射, 可以调用函数gl Enable () 和gl Disable () 。调用这些函数时可以使用一维、二维、三维和立方图纹理映射。

3.2.4 纹理坐标和绘制场景。

粘贴纹理之前, 必须指定纹理和片元之间的对应关系。也就是说, 在场景中绘制物体时, 必须指定纹理坐标和几何坐标。调用的函数是gl Tex Coord* () 。

3.3 绘制虚拟场景

为了使模型看起来具有三维立体的感觉, 还应设置一定的光照。当观察物体的表面时, 人眼睛对颜色的感知取决于进入眼内视锥细胞的光子的能量分布。这些光子来自于光源或发光物体, 一部分被物体表面吸收, 而另一部分则被物体表面反射。只有反射光和投射光能够进入眼睛, 产生视觉效果, 我们才能看到物体。这种反射和投射的光决定了物体呈现的亮度和颜色。函数gl Lightfv () 、gl Enable (GL_LIGHTING) 用于设置和激活光源。还可以根据实际情况增加融合、反走样和雾化等一些特殊的显示效果, 使生成的场景看起来更有真实感。

4 动态显示分析

三维地形仅仅是静态显示还是远远不够的, 它需要交互式地实时动态显示。交互式不仅允许用户指定屏幕上的物体, 而且还可以通过鼠标或键盘移动、选择或其它方式操作这些物体, 以实现不同角度、不同方位、不同距离的观察, 方便用户变化角度进行观察。能够交互式地从各个不同的角度形象直观地展示三维地形, 进行三维地形可视化。Open GL提供了双缓存技术, 通过它可以实现地形实时动态显示。其基本原理是提供前、后两个缓存, 在显示前台缓存内容的一帧图像时, 后台缓存正在绘制下一帧图像, 后台绘制完成后, 交换前后台缓存, 不断循环, 实现地形动态显示。

实现地形三维实时交互显示有两种方式:一种是视点固定、目标移动, 该显示方式实现起来比较容易;另一种是目标固定、视点移动, 这种显示方式实现起来比较复杂一些。运用第二种方式实现了地形动态显示。在计算机屏幕上可以通过键盘对三维地形进行操作, 能够从各个不同的角度形象、直观地展示三维地形。

5 结论

随着计算机硬件和软件的发展, 人们对三维地形的精度和真实度的要求也越来越高。以基于Open GL的三维真实感地形可视化为目标, 实现了地形的三维模拟, 但这些与大家对三维地理信息系统的要求还有很大差距, 相信随着科学技术的日益发展, 必将给三维地理信息系统的研究带来前所未有的飞跃。

摘要:介绍了OpenGL基本概念以及数字地面模型和构网技术, 阐述了基于OpenGL实现三维地形可视化的基本步骤, 并对其重要步骤进行了详尽的研究和讨论, 并通过键盘, 实现了人机交互的地形实时动态显示, 实现了三维地形可视化。

关键词:OpenGL,可视化,分析

参考文献

[1]张俊霞.三维地形可视化及其实时显示方法概论[J].北京测绘, 2001, 2:6-9.[1]张俊霞.三维地形可视化及其实时显示方法概论[J].北京测绘, 2001, 2:6-9.

上一篇:动脉僵硬下一篇:地膜使用