CN108765538B - 基于cad平台的osgb数据分级渲染的方法 - Google Patents
基于cad平台的osgb数据分级渲染的方法 Download PDFInfo
- Publication number
- CN108765538B CN108765538B CN201810624335.9A CN201810624335A CN108765538B CN 108765538 B CN108765538 B CN 108765538B CN 201810624335 A CN201810624335 A CN 201810624335A CN 108765538 B CN108765538 B CN 108765538B
- Authority
- CN
- China
- Prior art keywords
- nodes
- data
- osgb
- node
- lod
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Abstract
本发明公开了一种基于CAD平台的OSGB数据分级渲染的方法。首先对OSGB数据进行解析,生成模型数据、纹理数据;其次利用ARX将模型数据和纹理数据进行重组,生成CAD中的三维模型;然后利用LOD算法构建DWG三维模型的LOD逻辑树;最后,根据CAD中的视距和可视范围对LOD逻辑树中的结点进行筛选,对当前帧待显示的结点进行加载,对当前帧不需要显示的结点进行删除,完成OSGB数据在CAD中的分级渲染。本发明突破OSGB数据的应用界限,为国土、规划、景观等部门在CAD软件上直接使用倾斜摄影实景模型提供新的技术手段。
Description
技术领域
本发明属于计算机应用领域,特别涉及一种OSGB数据在AutoCAD中渲染的方法。
背景技术
倾斜摄影实景模型已经被广泛应用于各个领域,OSGB数据格式作为倾斜摄影实景模型的通用格式,自带超过20级金字塔级别的模型精度等级,使用该数据格式,可以充分利用LOD(多层次细节结构)的优势,加快数据加载速度,展示真实效果的三维实景模型。而CAD并不直接支持OSGB数据格式,这使得国土、规划、景观等单位无法使用倾斜摄影实景模型。
发明内容
本发明的目的是针对现有CAD不直接支持OSGB数据格式的渲染缺点,提供一种在CAD中以多层次细节结构渲染OSGB数据格式的方法。
基于CAD平台的OSGB数据渲染的方法具体步骤为:
(1)读取OSGB文件夹下所有层级OSGB数据文件。
(2)以单个OSGB数据文件为单位,提取其中的模型以及纹理数据,根据模型中心点经纬度值,对模型顶点坐标进行偏移校正,同时将校正后的模型数据、纹理数据持久化到磁盘。
(3)根据步骤(2)中的模型和纹理数据,生成CAD中的三维模型,以DWG格式存储,以上完成OSGB模型数据到DWG模型数据转换。
(4)以步骤(3)完成的DWG文件为基础,构建索引;读取每一个DWG文件,获取其包围盒,将文件路径与包围盒坐标写入到文本索引中;同时,合并最顶层DWG文件的包围盒,形成本次索引构建的最小包围盒,将该包围盒坐标写入文本索引。
(5)以步骤(4)创建的索引文件,构建LOD结点。对结点进行分类,如果没有子结点,则划分为叶结点;如果包含子结点,则划分为组结点;同一文件夹下的所有结点,则组成为一个LOD结点;将叶结点关联到组结点下,组结点关联到LOD结点下,所有LOD结点关联到一个组结点下,形成一个LOD逻辑树。
(6)获取CAD三维视图下视距与可视范围。
(7)通过步骤(6)获取的视距确定渲染的层级,可视范围确定具体渲染数据块;根据视距和可视范围对LOD逻辑树进行刷选,确定需要显示的数据块。
(8)将步骤(7)刷选出的数据块结点,进行渲染,拷贝其对应DWG文件中的模型至当前文档,完成渲染。
本发明使用上述技术方案,对OSGB数据提取其中的模型、纹理数据,并将该部分数据缓存为DWG格式模型数据,通过构造LOD树,实现结点数据的逻辑分级。结合CAD中的视距与可视范围对LOD树中的结点进行刷选,确定需要渲染的结点,从而完成OSGB数据分级渲染,实现在CAD中对OSGB数据进行分级渲染的效果。CAD作为辅助制图工具被国土、规划、测绘等部门广泛使用,在CAD中渲染倾斜摄影实景模型的需求也越来越强烈。
本发明弥补了CAD中不支持OSGB数据渲染的缺点,实现了在CAD中对OSGB数据分级渲染的要求,具有很好的市场推广价值。
附图说明
图1 是本发明中构建的LOD逻辑树示意图。
图2 是本发明的技术流程图。
图3 是本发明中结点类图设计示意图。
具体实施方式
实施例:
下面结合附图与实施例对本发明作进一步详细描述。
如图2所示,对每个独立的OSGB结点数据,进行解析,对解析的结果数据(模型数据、纹理图片)进一步缓存为DWG格式模型数据文件;选取需要显示的OSGB结点数据,根据这些缓存的DWG文件构建索引文件;获取索引文件中每个条目(对应一个结点)的信息,包括缓存文件相对路径、缓存文件在世界坐标下的包围盒。根据结点组织规则,构建LOD树逻辑结构,该结构如图1所示;创建LOD树访问结点,用于刷选LOD树中的结点,该访问结点附带CAD三维视图中视距与可视化范围,如果树结点层级在视距范围内,且包围盒与可视范围重叠,则该结点将被收集起来,用于后面渲染;将收集后的结点进行渲染。
以下分别详细说明各个实现步骤。
(1) OSGB数据解析与缓存包括以下几个步骤:
步骤1 模型数据提取;
步骤2 纹理图片提取;
步骤3 生成DWG缓存。
具体实施步骤如下:
步骤1 模型数据提取:利用OSG开发包对OSGB结点数据进行加载;遍历所有加载的OSGB结点,获取其中的顶点数据与纹理映射坐标;根据倾斜摄影数据提供的metadata.xml中的信息对顶点数据进行偏移计算,将这两部分信息保留在内存中。
步骤2 纹理图片提取:利用OSG开发包对OSGB结点数据进行加载;遍历所有加载的OSGB结点,获取其中的纹理图片;根据原始OSGB文件的路径,将纹理图片保存到正确的位置(以该OSGB文件上一级文件夹为起始相对目录)。
步骤3 生成DWG缓存:利用CAD开发包ARX,创建一个AcDbSubDMesh对象;
将步骤1顶点数据赋值给AcDbSubDMesh;创建一个材质对象,并将纹理赋值为步骤2的纹理图片,将该材质添加到CAD模型空间中;将该AcDbSubDMesh对象与材质结合,赋值纹理坐标和材质给该对象,完成OSGB模型数据的DWG格式缓存。
(2) 索引文件创建包括以下几个步骤:
步骤1 OSGB结点文件夹选取;
步骤2 结点基本元信息提取;
步骤3 生成索引文件。
具体实施步骤如下:
步骤1 OSGB结点文件夹选取:选取需要进行渲染的OSGB结点文件夹,这部分OSGB数据文件将组合成一个索引文件,未在该索引文件中的OSGB文件将不会被渲染。
步骤2结点基本元信息提取:以索引文件为基准,获取OSGB文件对应DWG文件相对索引文件的相对路径;获取该DWG的包围盒坐标,以如下形式表示[(MinX,MinY,MinZ)、(MaxX,MaxY,MaxZ)];对于顶层DWG文件,合并其包围盒,形成本索引的最小包围盒。
步骤3生成索引文件:根据步骤2获取的单个OSGB文件元信息、索引本身包围盒信息、索引名称等信息,以JSON格式持久化到磁盘。
(3) LOD树创建包括以下几个步骤:
步骤1 面向对象的结点类设计与实现;
步骤2 结点寻址与独立LOD构建;
步骤3 LOD树构建。
具体实施步骤如下:
步骤1 面向对象的结点类设计与实现:以面向对象的思想设计叶结点、组结点、LOD结点,其中叶节点至少包含结点名称、结点所在层级、结点所在网格号、父结点所在网格号;组结点至少包含保存子节点的列表;LOD结点至少包含每个结点可视化范围列表,设计的类图关系参见附图3。
步骤2结点寻址与独立LOD构建:对索引文件中所有文件路径进行升序排序;解析每个文件名,获取层级以及网格号、父网格号;根据父层级以及父网格号进行寻址,找到父结点,完成独立LOD构建。
步骤3 LOD树构建:将所有独立的LOD组合起来,关联在一个组结点下,完成整个LOD树构建,构建完成的LOD树可参见附图1。
(4) 结点刷选与渲染包括以下几个步骤:
步骤1视距与可视范围获取;
步骤2 LOD树访问结点构建;
步骤3 结点渲染。
具体实施步骤如下:
步骤1视距与可视范围获取:视距被定义为屏幕长或宽在实景模型平面的投影长度;获取索引文件包含的结点的地形平面,根据整个模型的包围盒确定视距变化是由屏幕长度决定还是宽度决定;可视范围为一个以屏幕中心点在世界坐标的投影点为中心的球体,其直径为屏幕长度在世界坐标的投影长度。
步骤2 LOD树访问结点构建:构建一个LOD树的访问结点,该结点用于收集每次需要渲染的结点,该结点至少包含一个用于获取视距的接口,该接口返回步骤1的视距;该结点同时收集下一次需要隐藏的结点,判断依据是该结点与可视范围有空间重叠。
步骤3结点渲染:对步骤2收集的结点进行渲染,根据被渲染结点的缓存文件(DWG文件)路径将模型数据拷贝到当前模型空间;对步骤2需要进行隐藏的结点进行删除操作。通过上述步骤即可完成OSGB数据在CAD中的分级渲染。
Claims (3)
1.一种基于CAD平台的OSGB数据分级渲染的方法,其特征在于具体步骤为:
(1)读取OSGB文件夹下所有层级OSGB数据文件;
(2)以单个OSGB数据文件为单位,提取其中的模型以及纹理数据,根据模型中心点经纬度值,对模型顶点坐标进行偏移校正,同时将校正后的模型数据、纹理数据持久化到磁盘;具体为:利用OSG开发包对OSGB结点数据进行加载;遍历所有加载的OSGB结点,获取其中的顶点数据与纹理映射坐标;根据倾斜摄影数据提供的metadata.xml中的信息对顶点数据进行偏移计算,将这两部分信息保留在内存中;利用OSG开发包对OSGB结点数据进行加载;遍历所有加载的OSGB结点,获取其中的纹理图片;根据原始OSGB文件的路径,将纹理图片保存到正确的位置;
(3)根据步骤(2)中的模型和纹理数据,生成CAD中的三维模型,以DWG格式存储,以上完成OSGB模型数据到DWG模型数据转换;具体为:利用CAD开发包ARX,创建一个AcDbSubDMesh对象;将获取的顶点数据赋值给AcDbSubDMesh;创建一个材质对象,并将其纹理赋值为获取到的纹理图片,将该材质添加到CAD模型空间中;将该AcDbSubDMesh对象与材质结合,赋值纹理坐标和材质给该对象,完成OSGB模型数据的DWG格式缓存;
(4)以步骤(3)完成的DWG文件为基础,构建索引;读取每一个DWG文件,获取其包围盒,将文件路径与包围盒坐标写入到文本索引中;同时,合并最顶层DWG文件的包围盒,形成本次索引构建的最小包围盒,将该包围盒坐标写入文本索引;
(5)以步骤(4)创建的索引文件,构建LOD结点;对结点进行分类,如果没有子结点,则划分为叶结点;如果包含子结点,则划分为组结点;同一文件夹下的所有结点,则组成为一个LOD结点;将叶结点关联到组结点下,组结点关联到LOD结点下,所有LOD结点关联到一个组结点下,形成一个LOD逻辑树;
(6)获取CAD三维视图下视距与可视范围;
(7)通过步骤(6)获取的视距确定渲染的层级,可视范围确定具体渲染数据块;于是,根据视距和可视范围对LOD逻辑树进行刷选,确定需要显示的数据块;
(8)将步骤(7)刷选出的数据块结点,进行渲染,拷贝其对应DWG文件中的模型至当前文档,完成渲染。
2.如权利要求1所述的基于CAD平台的OSGB数据分级渲染的方法,其特征在于所述步骤(5)具体为:
以面向对象的思想设计叶结点、组结点、LOD结点,其中叶节点至少包含结点名称、结点所在层级、结点所在网格号、父结点所在网格号;组结点至少包含保存子节点的列表;LOD结点至少包含每个结点可视化范围列表;对索引文件中所有文件路径进行升序排序;解析每个文件名,获取层级以及网格号、父网格号;根据父层级以及父网格号进行寻址,找到父结点,完成独立LOD构建;将所有独立的LOD组合起来,关联在一个组结点下,完成整个LOD树构建。
3.如权利要求1所述的基于CAD平台的OSGB数据分级渲染的方法,其特征在于所述步骤(7)具体为:
构建一个LOD树的访问结点,该结点用于收集每次需要渲染的结点,该结点至少包含一个用于获取视距的接口,该接口返回当前相机的视距;该结点同时收集下一次需要隐藏的结点,判断依据是该结点与可视范围有空间重叠;对需要显示的结点进行渲染,根据被渲染结点的缓存文件即DWG文件路径将模型数据拷贝到当前模型空间,进行显示;对需要进行隐藏的结点进行删除操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810624335.9A CN108765538B (zh) | 2018-06-16 | 2018-06-16 | 基于cad平台的osgb数据分级渲染的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810624335.9A CN108765538B (zh) | 2018-06-16 | 2018-06-16 | 基于cad平台的osgb数据分级渲染的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108765538A CN108765538A (zh) | 2018-11-06 |
CN108765538B true CN108765538B (zh) | 2022-03-22 |
Family
ID=63978291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810624335.9A Active CN108765538B (zh) | 2018-06-16 | 2018-06-16 | 基于cad平台的osgb数据分级渲染的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108765538B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110634184B (zh) * | 2019-09-11 | 2023-01-17 | 西安恒歌数码科技有限责任公司 | 一种海量倾斜摄影数据的加载方法 |
CN111325848B (zh) * | 2020-03-02 | 2022-04-15 | 中国电建集团昆明勘测设计研究院有限公司 | Osgb倾斜模型的悬浮物自动批量删除方法 |
CN111858828B (zh) * | 2020-09-24 | 2020-12-15 | 北京数字政通科技股份有限公司 | 一种面向三维地理数据的传输和渲染方法及系统 |
CN112365598B (zh) * | 2020-10-29 | 2022-09-20 | 深圳大学 | 倾斜摄影数据转换三维数据的方法、装置及终端 |
CN114648607B (zh) * | 2022-02-23 | 2024-03-29 | 中国电建集团昆明勘测设计研究院有限公司 | 基于cad平台的倾斜三维模型重建与动态调度方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102194250A (zh) * | 2011-05-19 | 2011-09-21 | 北京中科辅龙计算机技术股份有限公司 | 基于流程工厂参数模型的复杂场景快速绘制方法及系统 |
CN102298796A (zh) * | 2011-08-11 | 2011-12-28 | 北京航空航天大学 | 大数据量cad模型实时绘制方法 |
CN102609990A (zh) * | 2012-01-05 | 2012-07-25 | 中国海洋大学 | 面向复杂三维cad模型的海量场景渐进式更新算法 |
CN106600684A (zh) * | 2016-11-29 | 2017-04-26 | 浙江科澜信息技术有限公司 | 一种倾斜模型组织构建方法 |
CN107391872A (zh) * | 2017-08-03 | 2017-11-24 | 深圳中广核工程设计有限公司 | Pdms三维模型在软件中使用的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003252129A1 (en) * | 2002-07-23 | 2004-02-09 | Imagecom, Inc. | System and method for creating and updating a three-dimensional model and creating a related neutral file format |
CN101067810A (zh) * | 2006-05-05 | 2007-11-07 | 鸿富锦精密工业(深圳)有限公司 | 点云格式解析系统及方法 |
-
2018
- 2018-06-16 CN CN201810624335.9A patent/CN108765538B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102194250A (zh) * | 2011-05-19 | 2011-09-21 | 北京中科辅龙计算机技术股份有限公司 | 基于流程工厂参数模型的复杂场景快速绘制方法及系统 |
CN102298796A (zh) * | 2011-08-11 | 2011-12-28 | 北京航空航天大学 | 大数据量cad模型实时绘制方法 |
CN102609990A (zh) * | 2012-01-05 | 2012-07-25 | 中国海洋大学 | 面向复杂三维cad模型的海量场景渐进式更新算法 |
CN106600684A (zh) * | 2016-11-29 | 2017-04-26 | 浙江科澜信息技术有限公司 | 一种倾斜模型组织构建方法 |
CN107391872A (zh) * | 2017-08-03 | 2017-11-24 | 深圳中广核工程设计有限公司 | Pdms三维模型在软件中使用的方法及装置 |
Non-Patent Citations (2)
Title |
---|
Research on method of 3d reconstruction of ancient architecture(Nanputuo Temple);junfeng yao,etc;《International Conference on Cyberworlds 2008》;20090109;P627-630 * |
SHAPE与DWG数据格式转换方法及在地理国情普查中的应用;肖峰,等;《测绘通报》;20151225(第12期);P63-65 * |
Also Published As
Publication number | Publication date |
---|---|
CN108765538A (zh) | 2018-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108765538B (zh) | 基于cad平台的osgb数据分级渲染的方法 | |
KR101546703B1 (ko) | 대용량 건물 bim데이터의 시각화 시스템 | |
CN101038679A (zh) | 几何数据处理方法和装置以及部件目录系统 | |
Liang et al. | Embedding user-generated content into oblique airborne photogrammetry-based 3D city model | |
Zhu et al. | Research and practice in three-dimensional city modeling | |
CN103309943A (zh) | 一种三维地理信息平台及其地形数据处理方法 | |
CN113706713A (zh) | 一种实景三维模型裁剪方法、装置及计算机设备 | |
Soler et al. | Design of cultural heritage information systems based on information layers | |
CN113468286A (zh) | 一种基于三角面片个数划分的三维金字塔构建方法 | |
Yu et al. | A hybrid system of expanding 2D GIS into 3D space | |
CN114399692A (zh) | 基于深度学习的违建识别监控检测方法及系统 | |
Yang et al. | A hybrid spatial index for massive point cloud data management and visualization | |
Gan et al. | Hybrid organization and visualization of the DSM combined with 3D building model | |
He et al. | All range and heterogeneous multi-scale 3D city models | |
Guney | Rethinking GIS towards the vision of smart cities through CityGML | |
Adorjan | Opensfm: A collaborative structure-from-motion system | |
Ioannidis et al. | 5D Multi-Purpose Land Information System. | |
CN116681847A (zh) | 一种用于城市三维地质数据管理与服务系统 | |
Pan et al. | Perception-motivated visualization for 3D city scenes | |
Kuder et al. | Point-based rendering optimization with textured meshes for fast LiDAR visualization | |
Apollonio et al. | A semantic and parametric method for 3D models used in 3D cognitive-information system | |
Dorninger et al. | Technical push on 3d data standards for cultural heritage management | |
Gruber et al. | Urban data management—A modern approach | |
Apollonio et al. | Bologna Porticoes project: 3D reality-based models for the management of a wide-spread architectural heritage site | |
Yudono et al. | The Three Dimension (3D) Spatial Urban Heritage Informatics of Malang City, Indonesia |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |