CN116758199A - 一种多层次tin地质模型的连续剖切面实时渲染封闭的方法 - Google Patents

一种多层次tin地质模型的连续剖切面实时渲染封闭的方法 Download PDF

Info

Publication number
CN116758199A
CN116758199A CN202310729644.3A CN202310729644A CN116758199A CN 116758199 A CN116758199 A CN 116758199A CN 202310729644 A CN202310729644 A CN 202310729644A CN 116758199 A CN116758199 A CN 116758199A
Authority
CN
China
Prior art keywords
model
rendering
section
real time
tin
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.)
Pending
Application number
CN202310729644.3A
Other languages
English (en)
Inventor
杨俊杰
周翠英
刘镇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN202310729644.3A priority Critical patent/CN116758199A/zh
Publication of CN116758199A publication Critical patent/CN116758199A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Remote Sensing (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geophysics And Detection Of Objects (AREA)

Abstract

本发明涉及三维地质建模模型可视化应用技术领域,尤其是一种多层次TIN地质模型的连续剖切面实时渲染封闭的方法。主要是通过多层次TIN模型建模模块及程序设计模型可视化模块实现于可视化环境中渲染多层次TIN地质模型并对模型进行可视化操作。具体而言,通过程序设计模块中的裁剪属性设置可对模型进行连续剖切;通过程序设计模块中的双重模板测试功能可获取剖切断面位置处的像素并分层设置各地层材质属性,随后实时渲染于该剖面位置处,由此综合实现连续剖切TIN地质模型并实时渲染剖切断面的效果;最后再添加外表面模型组合成完整模型,进而实现实时封闭断面缺口的连续剖切,由此尝试解决多层次TIN地质模型的剖切可视化分析中剖切面空心显示的问题。本发明省去了繁多的空间线段与平面求交点运算及求取交线的运算过程,而是在面这一尺度中直接分层渲染各断面材质,计算量大为减少,能实现实时剖切;同时本方法能实时渲染剖切填充面,能实现空心模型的封闭剖切。

Description

一种多层次TIN地质模型的连续剖切面实时渲染封闭的方法
技术领域
本发明涉及三维地质建模模型可视化应用技术领域,尤其是一种多层次TIN地质模型的连续剖切面实时渲染封闭的方法。
背景技术
TIN ( Triangulated Irregular Network)是用不规则的三角形组成网格面来表示地层分界面并最终拓扑边界形成的一种模型。多层次TIN三维地质模型,就是依据钻孔采样点,从地表到地下依次建立地层分界面或矿体与围岩分界面DEM模型,然后对相邻的属于同一地层或矿体的DEM分别进行缝合处理后所形成的地层模型。其基本几何元素是钻孔采样点(包括人工编辑点或内插点)、线段、三角形;相互连接的三角形聚集成一个TIN,多个TIN聚集成一个地层分界面DEM;DEM进一步形成一个面对象;上下邻接的DEM和相应的侧面TIN组成一个地层体或地质体,即体对象;各体对象聚集成一个三维地质模型。
本方法中采用的多层次TIN模型的模型生成过程可概括为四大关键步骤,即首先基于钻孔数据进行Delaunay三角化划分三角网格,随后分别建立地表曲面及各地层分界面,拓扑形成地层模型,最后建立地质环境模型形成各要素一体化的三维地质模型。可见,多层次TIN模型是通过不规则分布的数据点生成连续三角网格来逼近物体表面,对该类模型的剖切主要便是对三角网格进行切割与重组。由于其内部仍旧未改变空心的状态,以及地层层数的增加而增大了几何求交运算及三角网格划分重组的难度,对该类模型剖切时的剖切断面实时渲染将会有更大的困难。
Three.js是一款基于JavaScript语言,运行于浏览器中的3D引擎,可用于创建各种三维场景,包括了摄影机、光影、材质等各种对象。通过JavaScript语言调用Three.js包进行程序设计可创建模型渲染环境,将地质模型引入该环境中即可实现对三维地质模型的可视化操作。
通过Three.js的平面构造函数Plane可以创建若干个用于剖切模型的平面对象,把平面Plane的集合赋值于Three.js材质对象中的.clippingPlanes属性可实现对环境中的模型进行连续剖切操作。该操作基本原理是基于计算机渲染机制的视坐标中的场景消隐实现,具体而言是基于空间中一点至空间某一平面的距离关系决定该点的渲染与否,由此即可实现模型某一部分的消隐剖切。
模板测试(Stencil Test)常常与深度测试(Depth Test)共同作用控制图形的绘制,它们都是OpenGL渲染流程中的重要步骤。模板测试(Stencil Test)主要根据模板缓冲(Stencil Buffer)进行,该操作允许我们在渲染片段时将模板缓冲预设为某一特定值——参考值,通过对比片段模板值与缓冲预设值来决定该片段的保留与否。由此为空心剖面区域的实时渲染封闭提供了某一解决路径。
故在此背景下,对于内部空心的多层次TIN地质模型,结合Three.js库及模板测试模块,采用程序设计方法对地质模型进行连续封闭剖切不失为一种新的探索途径。
发明内容
技术问题:
鉴于以上背景,本发明所要解决的技术问题是提供一种多层次TIN地质模型的连续剖切面实时渲染封闭的的方法,解决多层次TIN地质模型的剖切可视化分析中剖切面空心显示的问题,尝试在保持剖切面准确度的同时提高剖切效率。
技术方案:
通过多层次TIN模型建模模块及程序设计模型可视化模块实现于可视化环境中渲染多层次TIN地质模型并对模型进行可视化操作。更优的,通过程序设计模块中的裁剪属性设置可对模型进行连续剖切;通过程序设计模块中的双重模板测试功能可获取剖切断面位置处的像素并分层设置各地层材质属性,随后实时渲染于该剖面位置处,由此综合实现连续剖切TIN地质模型并实时渲染剖切断面的效果;最后再添加外表面模型组合成完整模型,进而实现实时封闭断面缺口的连续剖切,解决上述技术问题。
所述多层次TIN模型建模模块主要存在于3DSMAX等专业软件中,在软件中依据钻孔的数据信息进行插值,Delaunay三角化划分三角网格并拓扑后构建地质模型,保存输出为obj格式,做好模型解析的准备,为后续模型可视化应用奠定基础。
所述程序设计模型可视化模块主要基于B/S结构模式,采用JavaScript语言进行程序设计。首先调用Three.js库,设置各材质对象中的clippingPlanes属性,设定剖切平面,基于三维模型中各点至剖切平面的距离决定该点的渲染与否,实现对环境中的模型进行连续剖切操作;随后设计双重模板测试代码,第一次模板测试获取剖切断面模板位置处的像素,第二次模板测试将分层设置各地层材质并实时渲染;最后设置三部分渲染顺序代码,分别控制剖切断面位置处的渲染、剖切断面各地层分层渲染及外表面模型的渲染,最终组合成完整的模型,实现多层次TIN地质模型的连续封闭剖切。
特别地,其中的双重模板测试均需要使用两个函数来配置模板缓冲区,即glStencil Func和glStencil Op。其中的glStencil Func主要通过模板测试函数对比片段模板值与缓冲预设值来决定某一片段的绘制与否,glStencil Op则决定着模板测试的结果对模板缓冲区的影响,一般为模板缓冲的更新机制。第一重模板测试中需要区分设置正面模板与反面模板,本方法令模型可见面为正面,不可见面为反面,设置其模板缓冲均为一直通过测试,但正面模板的三种更新机制均为减1,背面模板的三种更新机制均为加1。正面与反面像素区域的模板值叠加后将相互抵消而变为0,仅剩剖切断面处的模板值为1,通过后续的模板测试而被渲染,由此便获得需要填充的剖切断面像素。
特别地,其中的第二重模板测试需要分层设置各地层材质并实时渲染,其内含一循环语句代码,分别设置第i层地层的模板测试函数为不等于0时通过,设置其更新机制为重置为0并分别设置各地层的纹理map属性,由此获取显示各地层信息的填充面,随后将该填充面实时渲染于模型开口处,即可达到模型实时封闭的目的。
具体而言,本发明包括以下步骤:
步骤1,依据钻孔数据建立多层次TIN三维地质模型;
步骤2,采用裁剪平面切割地质模型,基于三维模型中各点至剖切平面的距离决定该点的渲染与否,实现模型的连续切割进而得到剖切面空心的地质模型;
步骤3,基于模板测试功能获取剖切模板断面位置处的像素,再在该位置分层设置各地层材质并实时渲染剖面,实现空心模型的封闭;
步骤4,添加外表面模型组合成实时封闭的完整模型。
进一步的,步骤3中涉及一组封装程序,其内含双重模板测试代码,第一次模板测试获取剖切断面模板位置处的像素,第二次模板测试将分层设置各地层材质并实时渲染,对步骤2中获得的剖面空心模型进行剖切面实时渲染封闭;
进一步的,步骤4中也涉及一组封装代码,其内含三部分渲染顺序代码,分别控制剖切断面位置处的渲染、剖切断面各地层分层渲染及外表面模型的渲染,最终组合成完整的模型。;
本发明的核心在于连续剖切面的实时渲染封闭机制,即先通过第一重模板测试获取剖切断面位置处的像素,再通过第二重模板测试分层设置各地层材质并实时渲染。
与现有地质模型剖切技术相比,本发明有以下有益效果:
(1)与面面求交运算等剖切方法相比,本方法由于剖切属性省去了繁多的空间线段与平面求交点运算及求取交线的运算过程,而是在面这一尺度中直接分层渲染各断面材质,计算量大为减少,故耗时均不超过0.1S,能实现实时剖切。
(2)本方法解决了多层次TIN地质模型的剖切可视化分析中剖切面空心显示的问题,能够在保持剖切面准确度的同时提高剖切效率,不失为地质模型连续实心剖切的一种新的探索途径。
附图说明
下面结合附图对本发明作进一步说明:
附图1为本发明实施例多层次TIN地质模型的连续剖切面实时渲染封闭的方法整体流程图
附图2为本方法关键步骤示意图
附图3为多层次TIN三维地质模型生成过程流程图
具体实施方式
为使本发明的目的、技术方案和有益效果更加清楚,下面将结合本发明的附图,对本发明的技术方案进行清楚、完整的描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
如附图1所示,本发明提供了一种多层次TIN地质模型的连续剖切面实时渲染封闭的方法,主要是通过多层次TIN模型建模模块及程序设计模型可视化模块实现于可视化环境中渲染多层次TIN地质模型并对模型进行可视化操作。具体而言,程序设计模型可视化模块又包含三部分内容:首先通过程序设计模块中的裁剪属性设置,可依据点至平面的距离计算结果对模型进行连续剖切;随后通过程序设计模块中的双重模板测试功能可获取剖切断面位置处的像素并分层设置各地层材质属性,随后实时渲染于该剖面位置处,由此综合实现连续剖切TIN地质模型并实时渲染剖切断面的效果;最后再添加外表面模型组合成完整模型,进而实现实时封闭断面缺口的连续剖切。
具体而言,本发明包括以下步骤:
步骤1,收集钻孔资料并统一数据格式;
步骤2,如附图3所示,通过竖向投影三角网建网,建立地表曲面、各地层及地质环境模型后生成多层次三维地质模型;
步骤3,采用JavaScript语言进行程序设计,调用Three.js库搭建模型可视化环境,于该环境内引入并渲染已建立的三维地质模型,此时可视化环境中的模型示意如附图2(a)所示;
步骤4,定义A函数用于创建平面模板,设置其裁剪平面属性,调用A函数,设定剖切平面切割模型,基于三维模型中各点至剖切平面的距离决定该点的渲染与否,实现连续剖切模型,得到敞开剖切口的模型如附图2(b)所示;
步骤5,定义模板测试函数B1, 设置正面及反面模板的模板缓冲均为一直通过测试,但正面模板的三种更新机制均为减1,背面模板的三种更新机制均为加1,调用该函数获取剖切模板断面位置处的像素;
步骤6,定义模板测试函数B2,分层设置各地层的模板测试函数为不等于0时通过,设置其更新机制为重置为0并分别设置各地层的纹理map属性,调用该函数获取显示地层信息的剖切面,如附图2(c)所示;
步骤7,分别设置剖切断面位置处、剖切断面各地层及外表面模型的渲染顺序;
步骤8,依据渲染顺序渲染剖切结果,获得添加了外表面的,剖切面实时渲染封闭的模型,连续剖切动态过程如附图2(d)所示。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更为相似的实施例,但这种不脱离本原理的简单变换在没有蕴含创造性新观点的前提下都应当属于本发明的保护范围。

Claims (3)

1.一种多层次TIN地质模型的连续剖切面实时渲染封闭的方法,其特征在于,包括如下步骤:首先,依据钻孔数据建立多层次TIN三维地质模型;然后,采用裁剪平面切割地质模型,实现模型的连续切割进而得到剖切面空心的地质模型;其次,基于模板测试功能获取剖切模板断面位置处的像素,再在该位置分层设置各地层材质并实时渲染剖面,实现空心模型的封闭;最后,添加外表面模型组合成实时封闭的完整模型。
2.根据权利要求1所述的多层次TIN地质模型的连续剖切面实时渲染封闭的方法,其特征在于:第三步中涉及一组封装程序,其内含双重模板测试代码,第一次模板测试获取剖切断面模板位置处的像素,第二次模板测试将分层设置各地层材质并实时渲染,对第二步中获得的剖面空心模型进行剖切面实时渲染封闭。
3.根据权利要求1所述的多层次TIN地质模型的连续剖切面实时渲染封闭的方法,其特征在于:第四步中涉及一组封装代码,其内含三部分渲染顺序代码,分别控制剖切断面位置处的渲染、剖切断面各地层分层渲染及外表面模型的渲染,最终组合成完整的模型。
CN202310729644.3A 2023-06-20 2023-06-20 一种多层次tin地质模型的连续剖切面实时渲染封闭的方法 Pending CN116758199A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310729644.3A CN116758199A (zh) 2023-06-20 2023-06-20 一种多层次tin地质模型的连续剖切面实时渲染封闭的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310729644.3A CN116758199A (zh) 2023-06-20 2023-06-20 一种多层次tin地质模型的连续剖切面实时渲染封闭的方法

Publications (1)

Publication Number Publication Date
CN116758199A true CN116758199A (zh) 2023-09-15

Family

ID=87960362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310729644.3A Pending CN116758199A (zh) 2023-06-20 2023-06-20 一种多层次tin地质模型的连续剖切面实时渲染封闭的方法

Country Status (1)

Country Link
CN (1) CN116758199A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117274463A (zh) * 2023-11-10 2023-12-22 青岛臻图信息技术有限公司 一种三维地质模型实时剖切渲染处理方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117274463A (zh) * 2023-11-10 2023-12-22 青岛臻图信息技术有限公司 一种三维地质模型实时剖切渲染处理方法及系统
CN117274463B (zh) * 2023-11-10 2024-03-26 青岛臻图信息技术有限公司 一种三维地质模型实时剖切渲染处理方法及系统

Similar Documents

Publication Publication Date Title
CN102576469B (zh) 在三维的地下环境中绘制图形对象
CA2723381C (en) Systems and methods for imaging a three-dimensional volume of geometrically irregular grid data representing a grid volume
AU2011286432B2 (en) Obtaining data from an earth model using functional decriptors
CN112802169B (zh) 一种三维地质模型实时剖切渲染方法
US5455902A (en) Method and apparatus for performing real-time computer animation
NO20101037A1 (no) Geologisk modellering uten gitternett
CN111612903B (zh) 一种基于混合数据模型的地质数据可视化方法
CN106844871A (zh) 基于bim的三维岩土工程勘察信息模型构建方法
CN105469443A (zh) 基于地质路线(prb)过程双重建模生成三维地质图的方法
CN109615696B (zh) 一种工程地质信息三维可视化处理方法
CN116758199A (zh) 一种多层次tin地质模型的连续剖切面实时渲染封闭的方法
KR20030073424A (ko) 렌더링시스템, 렌더링방법 및 그 기록매체
CN112150582B (zh) 一种面向多模态数据的地质剖面图近似表达方法
CN105719342B (zh) 一种地裂缝地质体的三维建模可视化方法及装置
WO2011149460A1 (en) Method and system of rendering well log values
CN109858059B (zh) 基于cad超大模型的虚拟现实技术在水电站仿真的应用方法
CN117113493A (zh) 一种施工平台设计方法及系统
CN111445569B (zh) 一种沉积地质演化动态模拟方法
CN106814392B (zh) 三维次级封闭地质体融合面的速度建模方法
CN117095110A (zh) 面向互联网三维地图的顺序无关透明渲染方法和系统
CN115908733A (zh) 一种角点网格地质模型的实时切分及三维可视化方法
CN114529629A (zh) 一种基于模板和规则定制的地质专题图表生成方法及系统
CN117218258B (zh) 一种盾构地质与隧道可视化方法、系统、介质及设备
CN116070334B (zh) 一种面向数字孪生应用的多维模型构建方法
SHI et al. 3D Rapid Modeling and Key Technology Analysis of Mountain Tunnel

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