CN110084894B - 三维模型的局部放大展示方法、装置与电子设备 - Google Patents

三维模型的局部放大展示方法、装置与电子设备 Download PDF

Info

Publication number
CN110084894B
CN110084894B CN201910359109.7A CN201910359109A CN110084894B CN 110084894 B CN110084894 B CN 110084894B CN 201910359109 A CN201910359109 A CN 201910359109A CN 110084894 B CN110084894 B CN 110084894B
Authority
CN
China
Prior art keywords
triangle
local area
intersection point
displayed
plane
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
Application number
CN201910359109.7A
Other languages
English (en)
Other versions
CN110084894A (zh
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.)
Beike Technology Co Ltd
Original Assignee
Beike Technology Co Ltd
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 Beike Technology Co Ltd filed Critical Beike Technology Co Ltd
Priority to CN201910359109.7A priority Critical patent/CN110084894B/zh
Publication of CN110084894A publication Critical patent/CN110084894A/zh
Application granted granted Critical
Publication of CN110084894B publication Critical patent/CN110084894B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06T17/205Re-meshing
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Generation (AREA)

Abstract

本发明实施例提供一种三维模型的局部放大展示方法、装置与电子设备,其中方法包括:获取目标三维模型的三角网格数据,并基于所述三角网格数据,构建所述目标三维模型的三角网格模型;通过遍历构成所述三角网格模型的每一原始三角形,分别对各所述原始三角形进行基于三角剖分的多边形裁剪,获取所述目标三维模型中待展示的局部区域;对所述待展示的局部区域进行像素放大处理,并对放大后的待展示局部区域进行展示。本发明实施例在保证准确对模型中目标局部区域进行放大展示的同时,还能为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。

Description

三维模型的局部放大展示方法、装置与电子设备
技术领域
本发明涉及计算机应用技术领域,更具体地,涉及一种三维模型的局部放大展示方法、装置与电子设备。
背景技术
在三维产品模型展示中,有时需要对模型的局部区域进行细节的单独放大展示,此时就需要对模型进行局部切分,以得到感兴趣区域,并对该感兴趣区域进行放大展示。其中该三维产品模型可以是三角网格模型,而对三角网格模型的局部切分中,基于多边形区域的裁剪或分割方法使用较多。目前多边形裁剪的主流算法有编码裁剪Cohen-Sutherland算法、逐边裁剪Sutherland-Hodgeman算法和任意多边形裁剪Weiler-Atherton算法。
对于在三角网格模型局部区域展示中的多边形裁剪,利用上述方法均能有效得到切分结果。但是,利用这些方法输出的局部区域的几何数据结构很难保持一致,可能包含非凸的多边形面。当需要对切分出的局部区域中更细致的区域进行进一步的放大展示时,需要对这些包含非凸多边形面的局部区域进行进一步的裁剪等后续操作,但是由于几何数据结构上的不一致性,将导致对更细致区域的放大展示变得困难甚至难以实现。
发明内容
为了克服上述问题或者至少部分地解决上述问题,本发明实施例提供一种三维模型的局部放大展示方法、装置与电子设备,用以在保证准确对模型中目标局部区域进行放大展示的同时,还能为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。
第一方面,本发明实施例提供一种三维模型的局部放大展示方法,包括:
获取目标三维模型的三角网格数据,并基于所述三角网格数据,构建所述目标三维模型的三角网格模型;
通过遍历构成所述三角网格模型的每一原始三角形,分别对各所述原始三角形进行基于三角剖分的多边形裁剪,获取所述目标三维模型中待展示的局部区域;
对所述待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
其中可选的,所述分别对各所述原始三角形进行基于三角剖分的多边形裁剪的步骤具体包括:
遍历每一所述原始三角形,并对各所述原始三角形分别进行如下处理:
获取所述原始三角形在多边形裁剪窗口所在第一平面上的投影三角形,并求取所述多边形裁剪窗口与所述投影三角形相交的第一交点集合和交线集合;
删除所述第一交点集合中位于所述投影三角形外部的所有点,获取第二交点集合,且若判定所述第二交点集合为非空,则通过将所述第二交点集合逆投影到所述原始三角形所在第二平面,并从所述第二平面刚体变换至第三平面,获取第三交点集合;
在所述交线集合的约束下,对所述第三交点集合进行三角剖分,获取第一子三角形集合,并将所述第一子三角形集合逆刚体变换至所述第二平面,获取第二子三角形集合;
基于所述第二子三角形集合,获取对所述原始三角形对应所述待展示的局部区域的裁剪结果;
其中,所述多边形裁剪窗口是根据对所述待展示的局部区域的展示需求事先设定的。
其中可选的,所述获取所述目标三维模型中待展示的局部区域的步骤具体包括:
基于所有所述原始三角形对应的所述裁剪结果,获取裁剪出的子三角网格模型,并基于所述子三角网格模型,获取所述待展示的局部区域;
其中,所述子三角网格模型为所述待展示的局部区域对应的三角网格模型。
其中可选的,所述求取所述多边形裁剪窗口与所述投影三角形相交的第一交点集合和交线集合的步骤具体包括:顺序遍历所述多边形裁剪窗口的每一条边,通过求解所述边与所述投影三角形的交集,将所述边与所述投影三角形各边线的交点以及与所述投影三角形存在交点的所有边的端点构成的点集合,作为所述第一交点集合,并将所述边与所述投影三角形的交线构成的集合,作为所述交线集合。
其中可选的,所述获取对所述原始三角形对应所述待展示的局部区域的裁剪结果的步骤具体包括:
基于所述待展示的局部区域,初始化设定第一裁剪结果集合;
遍历所述第二子三角形集合中的每一子三角形,若判定所述子三角形的质心在所述第一平面的投影点落入所述多边形裁剪窗口的内部,则确定所述子三角形属于所述待展示的局部区域,并将所述子三角形加入所述第一裁剪结果集合;
基于遍历完所有所述子三角形后获取的第一裁剪结果集合,作为所述原始三角形对应的所述裁剪结果。
进一步的,在所述若判定所述第二交点集合为非空的步骤之前,本发明实施例的方法还包括:判断所述第二交点集合是否为空;
相应的,所述方法还包括:若判定所述第二交点集合为空,则若所述原始三角形的质心在所述第一平面上的投影在所述多边形裁剪窗口的内部,则判定所述原始三角形属于所述待展示的局部区域。
其中可选的,所述通过将所述第二交点集合逆投影到所述原始三角形所在第二平面,并从所述第二平面刚体变换至第三平面,获取第三交点集合的步骤具体包括:
将所述第二交点集合逆投影到所述第二平面,获取所述原始三角形上的第四交点集合,并将所述原始三角形的三个顶点加入所述第四交点集合;
以所述原始三角形的质心为中心,求解所述第二平面至所述第三平面的刚体变换系数,并通过利用所述刚体变换系数左乘加入顶点的第四交点集合,将所述加入顶点的第四交点集合刚体变换至所述第三平面,获取所述第三交点集合。
第二方面,本发明实施例提供一种三维模型的局部放大展示装置,包括:
模型转换模块,用于获取目标三维模型的三角网格数据,并基于所述三角网格数据,构建所述目标三维模型的三角网格模型;
裁剪模块,用于通过遍历构成所述三角网格模型的每一原始三角形,分别对各所述原始三角形进行基于三角剖分的多边形裁剪,获取所述目标三维模型中待展示的局部区域;
展示输出模块,用于对所述待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
第三方面,本发明实施例提供一种电子设备,包括:至少一个存储器、至少一个处理器、通信接口和总线;所述存储器、所述处理器和所述通信接口通过所述总线完成相互间的通信,所述通信接口用于所述电子设备与目标三维模型设备之间的信息传输;所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上第一方面所述的三维模型的局部放大展示方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如上第一方面所述的三维模型的局部放大展示方法的步骤。
本发明实施例提供的三维模型的局部放大展示方法、装置与电子设备,通过将目标三维模型转换为三角网格模型,并对该三角网格模型进行基于三角剖分的多边形裁剪,得到子三角形表示的待展示局部区域,能够在保证准确对模型中目标局部区域进行放大展示的同时,进一步为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的三维模型的局部放大展示方法的流程示意图;
图2为根据本发明实施例提供的三维模型的局部放大展示方法中原始三角形在第一平面的投影过程立体示意图;
图3为根据本发明实施例提供的三维模型的局部放大展示方法中原始三角形在第一平面的投影示意图;
图4为根据本发明实施例提供的三维模型的局部放大展示方法中投影三角形与多边形裁剪窗口的交点和交线示意图;
图5为根据本发明实施例提供的三维模型的局部放大展示方法中三角剖分的第二子三角形示意图;
图6为根据本发明实施例提供的三维模型的局部放大展示方法中判断子三角形剪裁区域的比对判断示意图;
图7为根据本发明实施例提供的三维模型的局部放大展示方法中进行三角网格模型裁剪的流程示意图;
图8为本发明实施例提供的三维模型的局部放大展示装置的结构示意图;
图9为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例的一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
本发明实施例针对现有技术中对三维模型的局部区域进行展示时,由于局部区域切分结果几何数据结构上的不一致性,导致对更细致区域的放大展示存在困难甚至无法实现的问题,通过将目标三维模型转换为三角网格模型,并对该三角网格模型进行基于三角剖分的多边形裁剪,得到子三角形表示的待展示局部区域,能够在保证准确对模型中目标局部区域进行放大展示的同时,进一步为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。以下将具体通过多个实施例对本发明实施例进行展开说明和介绍。
图1为本发明实施例提供的三维模型的局部放大展示方法的流程示意图,如图1所示,该方法包括:
S101,获取目标三维模型的三角网格数据,并基于三角网格数据,构建目标三维模型的三角网格模型。
可以理解为,为了从目标三维模型中方便的切分出待展示的局部区域,本发明实施例首先将目标三维模型转换成三角网格的形式,得到目标三维模型对应的三角网格模型,以在后续通过对该三角网格模型的切分处理,等效出对目标三维模型中待展示的局部区域的切分,并进而进行模型的局部放大展示。
具体而言,本发明实施例首先基于目标三维模型,通过数据扫描获取对其进行三角形网格模型生成的三角网格数据,再进一步根据该三角网格数据,利用三角网格模型生成工具,生成目标三维模型对应的三角网格模型。
可以理解的是,本发明实施例中的目标三维模型也即是待处理的三维模型,其可以是任意的三维模型。即,既可以是任意现实世界的实体模型,如房屋三维模型、动植物器官三维模型、机械元件三维模型等;也可以是虚构的物体模型,如,人为根据想象绘制或合成的任意三维模型等,本发明对此并不作限制。
S102,通过遍历构成三角网格模型的每一原始三角形,分别对各原始三角形进行基于三角剖分的多边形裁剪,获取目标三维模型中待展示的局部区域。
可以知道,三角网格模型是用一系列的小三角平面来逼近原始模型得到的由多个小三角形构成的网格模型。其中每一个小三角形即为一个原始三角形,且每个原始三角形能够用其三个顶点坐标和一个法向量来描述。
实际处理时,本发明实施例对每一个原始三角形按照一定的处理流程分别进行处理。具体而言,本发明实施例需遍历构成三角网格模型的每一原始三角形,并对遍历的每一个原始三角形进行基于三角剖分的多边形裁剪,例如进行基于二维德洛内Delaunay三角剖分的多边形裁剪,并根据对每个原始三角形的裁剪结果,拼接得到模型中待展示的局部区域。
S103,对待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
本发明实施例的最后,对于裁剪出的待展示的局部区域,首先对其进行放大处理,如可以通过调整像素、尺寸等的比例,将待展示的局部区域进行满足展示需求的放大处理,得到放大后的待展示局部区域,之后再将该放大后的待展示局部区域推送到展示窗口进行展示。
可以理解的是,本发明实施例在得到待展示的局部区域后,可以对该待展示局部区域对应的子三角网格模型进行与上述步骤S102至S103的类似处理,获取该待展示的局部区域的进一步子区域,从而可以对进一步的子区域进行局部放大展示。
本发明实施例提供的三维模型的局部放大展示方法,通过将目标三维模型转换为三角网格模型,并对该三角网格模型进行基于三角剖分的多边形裁剪,得到子三角形表示的待展示局部区域,能够在保证准确对模型中目标局部区域进行放大展示的同时,进一步为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。
其中,根据上述实施例,分别对各原始三角形进行基于三角剖分的多边形裁剪的步骤具体可包括如下处理流程:
遍历每一原始三角形,并对每一原始三角形分别进行如下处理:获取原始三角形在多边形裁剪窗口所在第一平面上的投影三角形,并求取多边形裁剪窗口与投影三角形相交的第一交点集合和交线集合;删除第一交点集合中位于投影三角形外部的所有点,获取第二交点集合,且若判定第二交点集合非空,则通过将第二交点集合逆投影到原始三角形所在第二平面,并从第二平面刚体变换至第三平面,获取第三交点集合;在交线集合的约束下,对第三交点集合进行三角剖分,如进行二维德洛内Delaunay三角剖分,获取第一子三角形集合,并将第一子三角形集合逆刚体变换至第二平面,获取第二子三角形集合;基于第二子三角形集合,获取对原始三角形对应待展示的局部区域的裁剪结果。其中,多边形裁剪窗口是根据对待展示的局部区域的展示需求事先设定的。
可以理解为,本发明实施例在进行基于模型局部区域展示需求的三角网格模型裁剪时,首先根据输入的待裁剪三角网格模型,分析出构成该模型的所有原始三角形,并通过遍历所有原始三角形,对这些原始三角形平面投影和在投影面上的计算。具体而言,以用来裁剪的多边形裁剪窗口所在的二维平面作为第一平面,将遍历的每个原始三角形投影到第一平面上,得到投影三角形。
如图2所示,为根据本发明实施例提供的三维模型的局部放大展示方法中原始三角形在第一平面的投影过程立体示意图,图3所示为根据本发明实施例提供的三维模型的局部放大展示方法中原始三角形在第一平面的投影示意图,由图2和图3可见,经平面投影后,投影三角形的一部分区域落入多边形裁剪窗口的内部。
可以理解的是,其中的多边形裁剪窗口是根据对待展示的局部区域的展示需求事先设定好的。也就是说,需要根据需要展示的局部区域的位置、范围等,事先设置好用于多边形裁剪的多边形裁剪窗口。
之后,本发明实施例将投影三角形和多边形裁剪窗口求交集,将多边形裁剪窗口的各条边与投影三角形各条边的交点以及多边形裁剪窗口与投影三角形相交的各条边的两个端点加入一个点集合,形成第一交点集合,并将多边形裁剪窗口各条边与投影三角形的交集对应的线段加入一个边集合,形成交线集合。
图4所示为根据本发明实施例提供的三维模型的局部放大展示方法中投影三角形与多边形裁剪窗口的交点和交线示意图,图中三角形边界内部实线为相交的交线,这些交线构成交线集合。多边形裁剪窗口与三角形边界交点和三角形内部的多边形裁剪窗口顶点为交点,这些交点构成第一交点集合。
在得到第一交点集合的基础上,本发明实施例通过遍历该交点集合中的每个点,来判断哪些点是落在投影三角形边界之外的,并将这些点从第一交点集合中删除,删除后形成第二交点集合。之后,如果获知第二交点集合是非空的,则先将第二交点集合从第一平面逆投影到第二平面。其中第二平面是原始三角形所在的平面,该平面可以是空间三维平面。在对逆投影到第二平面上的第二交点集合进行设定操作后,再将其通过坐标系的刚体变换,变换到二维的第三平面,得到变换后新坐标系下的交点集合,作为第三交点集合。
可以知道,任何简单多边形都存在(至少)一个三角剖分,若其顶点数目为n,则它的三角剖分结果中包含n-2个三角形。具体而言,本发明实施例在得到第三交点集合的基础上,在第三平面下对第三交点集合做带边约束的三角剖分,如二维Delaunay三角剖分,其中约束条件是上述步骤得到的交线集合。剖分后得到一个子三角形集合,作为第一子三角形集合。对第一子三角形集合中的顶点做上述刚体变换的逆变换,得到第二平面上的一个子三角形集合,其是上述处理的原始三角形的一个等面积覆盖,将其作为第二子三角形集合。
图5为根据本发明实施例提供的三维模型的局部放大展示方法中三角剖分的第二子三角形示意图,可见经过在第三平面的三角剖分和向第二平面的逆刚体变换,将原始三角形划分成多个相邻的子三角形。
最后,本发明实施例根据上述第二子三角形集合中的各子三角形进行判断,以确定这些子三角形是否为感兴趣区域,若是则可以保留,否则可以舍弃,从而可以获取对各原始三角形的裁剪结果,该裁剪结果是对应待展示的局部区域而言。当然也可以将这两种结果分别进行保存,得到裁剪后的两个不同区域。
可以理解的是,对于构成三角网格模型的每个初始三角形,均进行上述处理过程,得到每个初始三角形的裁剪结果。并且,经过三角剖分,裁剪问题最终可归结为寻找被裁剪对象关于给定多边形窗口的二分割,分割后的两组多边形分别是保留和去除的区域,反过来只要能够找到裁剪对象的一个三角剖分,使得裁剪窗口在裁剪对象内部的边被三角剖分后网格的边覆盖,则可以通过剖分后的三角形重新构造分割区域,包括保留和去除两类区域。三角剖分的输出是天然的三角网格,保持了数据的一致性。
本发明实施例通过将构成三角网格模型的每一原始三角形在多边形裁剪窗口所在第一平面和原始三角形所在第二平面上的投影与逆投影,得到多边形裁剪时形成的交点集合和交线集合,结合交点集合到第三平面的刚体变换与在第三平面上的进一步三角剖分,最终得到对三角网格模型的裁剪结果的子三角网格表示,在保证正确裁剪结果的同时,能够保持裁剪结果在几何数据结构上的一致性,便于后续对裁剪所得子模型的其他再加工。
在上述各实施例的基础上,获取目标三维模型中待展示的局部区域的步骤具体包括:基于所有原始三角形对应的裁剪结果,获取裁剪出的子三角网格模型,并基于子三角网格模型,获取待展示的局部区域;其中,子三角网格模型为待展示的局部区域对应的三角网格模型。
可以理解为,在根据上述多边形裁剪法对构成三角网格模型的每个原始三角形进行裁剪后,可以得到对每个原始三角形的裁剪结果,也即得到这些原始三角形中属于待展示的局部区域的部分。将这些裁剪结果进行拼接,得到一个子三角网格模型,其即为待展示的局部区域对应的三角网格模型。则可直接将该子三角网格模型作为待展示的局部区域进行展示,也可将该子三角网格模型逆变换回三维模型形式,并将其展示。
其中可选的,求取多边形裁剪窗口与投影三角形相交的第一交点集合和交线集合的步骤具体包括:顺序遍历多边形裁剪窗口的每一条边,通过求解边与投影三角形的交集,将边与投影三角形各边线的交点以及与投影三角形存在交点的所有边的端点构成的点集合,作为第一交点集合,并将边与投影三角形的交线构成的集合,作为交线集合。
可以理解,在算法开始时可以输入按照先后顺序排列顶点的多边形裁剪窗口,根据这些排列的顶点可以得到顺序排列的边。根据上述实施例,可以将构成三角网格模型的各初始三角形投影到多边形裁剪窗口所在的第一平面上进行处理,具体在第一平面上进行处理时,按顺序遍历多边形裁剪窗口的每一条边,并分别求解这些边与投影三角形的交集。在获取交集的基础上,可以得到多边形裁剪窗口的各条边与投影三角形各条边的交点,以及多边形裁剪窗口各条边与投影三角形的交集对应的线段。之后,将这些交点和多边形裁剪窗口各条边的两个端点加入一个点集合,形成第一交点集合。同时,将这些交集的线段加入一个边集合,形成交线集合。
可以知道,现有技术在利用Weiler-Atherton进行多边形裁减时,需要先假设被裁剪多边形和裁剪窗口的顶点序列都按顺时针方向排列,并在此基础上才能实现准确裁剪。如此增加了计算,同时对于自相交的多边形,其顶点顺序并不能唯一确定,导致结果不唯一,将增加后续裁剪区域取舍判别的工作。
因此,本发明实施例根据上述各实施例可选的,获取对原始三角形对应待展示的局部区域的裁剪结果的步骤具体包括:基于待展示的局部区域,初始化设定第一裁剪结果集合;遍历第二子三角形集合中的每一子三角形,若判定子三角形的质心在第一平面的投影点落入多边形裁剪窗口的内部,则确定子三角形属于待展示的局部区域,并将子三角形加入第一裁剪结果集合;基于遍历完所有子三角形后获取的第一裁剪结果集合,作为原始三角形对应的裁剪结果。
具体而言,本发明实施例在对原始三角形的裁剪结果进行判断时,无需对多边形裁剪窗口和待裁剪多边形的顶点顺序关系进行确定,而只需针对三角剖分基础上得到的第二平面上的各个子三角形,也即第二子三角形集合中的每一子三角形,判断其质心在第一平面的投影点是否落入多边形裁剪窗口的内部,并根据判断结果,确定这些子三角形是否为感兴趣区域的裁剪判定结果,从而可以进一步确定对原始三角形的裁剪结果。
具体可以在进行遍历之前,根据待展示的局部区域对应的展示需求,初始化设定一个数据集合,作为第一裁剪结果集合。并在判定任一子三角形满足上述判断条件时,确定该子三角形是属于待展示的局部区域的,可将其加入到第一裁剪结果集合中。当遍历完所有子三角形时,第一裁剪结果集合中即存入了所有属于待展示的局部区域的子三角形,则可将其作为对原始三角形的裁剪结果。
图6所示为根据本发明实施例提供的三维模型的局部放大展示方法中判断子三角形剪裁区域的比对判断示意图,图中通过判断子三角形在第一平面上投影的质心与多边形裁剪窗口的位置关系,确定子三角形的剪裁区域。
本发明实施例通过判断剖分的子三角形的质心投影与多边形裁剪窗口的位置关系,确定裁剪结果,而无需对多边形裁剪窗口和待裁剪多边形的顶点顺序关系进行确定,可以正确处理自相交多边形裁剪区域,并且剖分后的子三角形是否属于裁剪窗口的判别,并不依赖裁剪窗口的顶点顺序或模型三角面片的顺序,也和裁剪多边形的拓扑结构无关,简化了计算,保证了准确性。
另外可知,利用Sutherland-Hodgeman和Cohen-Sutherland进行多边形裁剪时,不能同时得到裁剪与被裁剪的区域,而实际应用中通常需要同时得到这两个结果,且Sutherland-Hodgeman算法需要裁剪多次。
为了解决这个问题,在上述各实施例的基础上,在获取原始三角形是否为感兴趣区域的裁剪判定结果的步骤之前,本发明实施例的方法还可以包括:基于初始化设定的第一裁剪结果集合,求取第一裁剪结果集合相对三角网格模型的补集,作为第二裁剪结果集合;相应的,若子三角形的质心在第一平面的投影点落入多边形裁剪窗口的内部,则将子三角形作为感兴趣区域,加入第一裁剪结果集合,否则,将子三角形作为非感兴趣区域,加入第二裁剪结果集合。
具体而言,本发明实施例事先会根据三角网格模型构造两个互补的集合,即第一裁剪结果集合和第二裁剪结果集合。相应的,在基于三角剖分进行裁剪结果的获取时,首先判断子三角形的质心在第一平面的投影点是否落入多边形裁剪窗口的内部,若是,则认为该子三角形区域为感兴趣区域,也即是属于待展示的局部区域的,将其加入到第一裁剪结果集合。否则认为该子三角形区域为非感兴趣区域,也即不是需要进行局部放大展示的区域,将其加入第二裁剪结果集合。以此同时得到裁剪出的两个不同区域。
本发明实施例通过设定两个互补集合,并通过质心判断,能够保留裁剪和被裁剪两个对象,做到可以在一个裁剪过程完成后可以同时输出裁剪和被裁剪两个区域,且由于三角剖分实际是分割过程,可以在一次输出保留和去除两类区域。
在上述各实施例的基础上,在若判定第二交点集合非空的步骤之前,本发明实施例的方法还包括:判断第二交点集合是否为空;相应的,该方法还包括:若判定第二交点集合为空,则若原始三角形的质心在第一平面上的投影在多边形裁剪窗口的内部,则判定原始三角形属于待展示的局部区域。
具体而言,考虑到多边形裁剪窗口与投影三角形可能存在全包围的情况,即投影三角形被完全包围在多边形裁剪窗口内部,此时根据上述实施例的第二交点集合可能为空,因此还需要对这种情况确定裁剪结果。具体而言,在得到第二交点集合的基础上,先判断其是否为空,并在其为空的情况下,进一步判断该投影三角形对应的原始三角形的质心在第一平面上的投影是否落在多边形裁剪窗口的范围内,并根据该判断结果确定对该原始三角形的裁剪结果。若判断为是,则认为是感兴趣区域,也即属于待展示的局部区域,可保留,否则可认为是非感兴趣区域。
其中,根据上述各实施例可选的,通过将第二交点集合逆投影到原始三角形所在第二平面,并从第二平面刚体变换至第三平面,获取第三交点集合的步骤具体包括:将第二交点集合逆投影到第二平面,获取原始三角形上的第四交点集合,并将原始三角形的三个顶点加入第四交点集合;以原始三角形的质心为中心,求解第二平面至第三平面的刚体变换系数,并通过利用刚体变换系数左乘加入顶点的第四交点集合,将加入顶点的第四交点集合刚体变换至第三平面,获取第三交点集合。
具体而言,在得到第一平面上多边形裁剪窗口与投影三角形第二交点集合的基础上,将第二交点集合逆投影到原始三角形所在的第二平面,得到三维坐标系下原始三角形上的第四交点集合。之后将对应原始三角形的三个三维顶点加入到第四交点集合中,并根据第二平面至第三平面的刚体变换,将加入顶点的第四交点集合变换至二维的第三平面,得到新坐标系下的第三交点集合。
其中具体的,将加入顶点的第四交点集合刚体变换至第三平面时,以原始三角形的质心为中心,求解第二平面至第三平面的刚体变换系数,并利用其左乘加入顶点的第四交点集合,进行刚体变换。
具体而言,以原始三角形的质心为中心,求解原始三角形所在的第二平面到第三平面(例如X′Y′平面)间的刚体变换Tr=(R|t)。对第二平面坐标系中的第四交点集合应用变换Tr,即用Tr左成乘第四交点集合,将第二平面的三维坐标表示变成第三平面坐标系的二维表示,得到第三交点集合。变换后交点z坐标值为0,直接去掉z坐标值得到第四交点集合二维坐标表示第三交点集合。
本发明实施例通过将三维坐标系刚体变换至二维坐标系,在保证不产生严重变形的情况下,能够准确实现二次三角剖分,从而能够保持数据在几何数据结构上的输入输出一致性,方便后续处理。
为进一步说明本发明实施例的技术方案,本发明实施例根据上述各实施例提供如下具体的处理流程,但不对本发明实施例的保护范围进行限制。
图7为根据本发明实施例提供的三维模型的局部放大展示方法中进行三角网格模型裁剪的流程示意图,如图7所示,为对三角网格模型的基本单元(空间中的三角面片)的主要操作流程。为简化说明,省略了前置网格模型拆解为三角面片的操作和后续分别收集保留和剔除两个三角形的集合的操作。其中该方法的输入数据包括:待裁剪的三角网格模型数据,以obj格式作为基本数据输入;多边形裁剪窗口数据,按照先后顺序排列的一组二维平面坐标。该处理流程包括:
初始化:初始化第一裁剪结果集合{Tc},并求取第一裁剪结果集合{Tc}相对三角网格模型的补集,也即第二裁剪结果集合{T′c}。
步骤1,输入按照先后顺序排列顶点的多边形裁剪窗口,利用其中每条边的两个端点的坐标对构成的集合,构造多边形裁剪窗口的数学表示P={Ep|Ep={Vei},1<=i<=2,Vei∈R2}。其中Ep代表一条边,Vei代表该边的两个端点Ve1和Ve2,其中Ve1为起点,Ve2为终点。默认多边形裁剪窗口上一条边的起点始终为上一条边的终点,且假定多边形裁剪窗口所在平面为第一平面,可用XY平面表示(如若不然,可将整个坐标系变换到以多边形裁剪窗口所在平面为XY平面的坐标系中)。
步骤2,输入待裁剪的三角网格模型,构造其三角形集合表示M={T|T={Vti,Eti},1<=i<=3,Vti∈R3,Et1={0,1},Et2={1,2},Et3={2,0}},其中Vti为三角形的顶点表示,Eti为三角形的有向边表示,如Et1={0,1}表示该边的顶点为Vt1和Vt2,且方向为Vt1到Vt2。其中这些三角形即为原始三角形。
步骤3,获取集合M中任一个原始三角形T={Vti,Eti|1<=i<=3},将T投影到XY平面得到投影三角形Txy={Vtxyi,Etxyi|1<=i<=3}。
步骤4,构造点集{Iptxy|Iptxy∈R3}和边集{Eptxy|Eptxy={ipt1,ipt2}},其中,ipt1,ipt2为{Iptxy}的指标,表示边的两个端点在点集{Iptxy}中的索引。
步骤5,依次遍历多边形裁剪窗口P的各条边,对每条边Ep={Vei|1<=i<=2},求解Ep与投影三角形Txy的交集,将交点和Ep的两个端点加入{Iptxy},形成第一交点集合,并将交集对应的线段加入边集{Eptxy},形成交线集合。
步骤6,遍历第一交点集合{Iptxy},如果有点在投影三角形Txy外部,则从点集{Iptxy}中删除该点。
步骤7,如果{Iptxy}为空,则判断原始三角形T的质心在XY平面的投影点是否落在多边形裁剪窗口的内部,若是,则将T加入{Tc},否则将T加入{T′c}。如果{Iptxy}不为空,将{Iptxy}逆投影到原始三角形T所在第二平面上,得到原始三角形上的点集{Ipt},并将原始三角形T的三个顶点加入点集{Ipt},形成第二交点集合。
步骤8,以原始三角形的质心为中心,求解原始三角形T所在平面到第三平面(例如X′Y′平面)间的刚体变换Tr=(R|t)。对第二平面坐标系中的{Ipt}应用变换Tr,即用Tr左成乘Ipt,将三维坐标表示变成第三平面坐标系的二维表示Ipt′。此时z坐标值为0,直接去掉z坐标值得到{Ipt}二维坐标表示{Ipt′}。
之后,对{Ipt′}做带边约束的二维Delaunay三角剖分,其中约束条件是边集{Eptxy},得到剖分后的子三角形集合{D′},作为第一子三角形集合。对D′中的顶点做Tr的逆变换得到{D},{D}是T的一个等面积覆盖,T={∪D},为第二子三角形集合。
步骤9,遍历{D},判断子三角形D的质心在第一平面XY平面的投影点是否落在多边形裁剪窗口的内部,若是,则将D加入{Tc},否则将D加入{T′c};
步骤10,循环执行步骤3至9,直到遍历完M中的所有三角形,最终得到的集合{Tc}和{T′c}中的数据即是对三角网格模型裁剪所得的感兴趣区域和非感兴趣区域。
本发明实施例针对大规模三维模型的局部放大展示,通过三角剖分计算裁剪区域,在得到正确结果的同时保证输出仍然只包含三角形,便于后续对模型的其他再加工。此处多边形没有孔洞。
作为本发明实施例的另一个方面,本发明实施例根据上述各实施例提供一种三维模型的局部放大展示装置,该装置用于在上述各实施例中实现三维模型的局部放大展示。因此,在上述各实施例的三维模型的局部放大展示方法中的描述和定义,可以用于本发明实施例中各个执行模块的理解,具体可参考上述实施例,此处不在赘述。
根据本发明实施例的一个实施例,三维模型的局部放大展示装置的结构如图8所示,为本发明实施例提供的三维模型的局部放大展示装置的结构示意图,该装置可用于实现上述各实施例中三维模型的局部放大展示,该装置包括:模型转换模块801、裁剪模块802和展示输出模块803。其中:
模型转换模块801用于获取目标三维模型的三角网格数据,并基于三角网格数据,构建目标三维模型的三角网格模型;裁剪模块802用于通过遍历构成三角网格模型的每一原始三角形,分别对各原始三角形进行基于三角剖分的多边形裁剪,获取目标三维模型中待展示的局部区域;展示输出模块803用于对待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
具体而言,为了从目标三维模型中方便的切分出待展示的局部区域,模型转换模块801将目标三维模型转换成三角网格的形式,得到目标三维模型对应的三角网格模型。也即,首先基于目标三维模型,通过数据扫描获取对其进行三角形网格模型生成的三角网格数据,再进一步根据该三角网格数据,利用三角网格模型生成工具,生成目标三维模型对应的三角网格模型。
之后,裁剪模块802对构成三角网格模型的每一个原始三角形按照一定的处理流程分别进行处理。具体而言,裁剪模块802需遍历每一原始三角形,并对遍历的每一个原始三角形进行基于三角剖分(如二维德洛内Delaunay三角剖分)的多边形裁剪,再根据对每个原始三角形的裁剪结果,拼接得到模型中待展示的局部区域。
最后,对于裁剪出的待展示的局部区域,展示输出模块803首先对其进行放大处理,如可以通过调整像素、尺寸等的比例,将待展示的局部区域进行满足展示需求的放大处理,得到放大后的待展示局部区域,之后再将该放大后的待展示局部区域推送到展示窗口进行展示。
可以理解的是,在展示输出模块803得到待展示的局部区域后,可以继续利用裁剪模块802和展示输出模块803进行上述类似的处理,得到该待展示的局部区域的进一步子区域,并可以对进一步的子区域进行局部放大展示。也即,利用裁剪模块802对待展示的局部区域进行进一步的子区域切分,并利用展示输出模块803对切分出的更细致的子区域进行放大展示。
本发明实施例提供的三维模型的局部放大展示装置,通过设置相应的执行模块,将目标三维模型转换为三角网格模型,并对该三角网格模型进行基于三角剖分的多边形裁剪,得到子三角形表示的待展示局部区域,能够在保证准确对模型中目标局部区域进行放大展示的同时,进一步为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。
可以理解的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现上述各实施例的装置中的各相关程序模块。并且,本发明实施例的三维模型的局部放大展示装置利用上述各程序模块,能够实现上述各方法实施例的三维模型的局部放大展示流程,在用于实现上述各方法实施例中三维模型的局部放大展示时,本发明实施例的装置产生的有益效果与对应的上述各方法实施例相同,可以参考上述各方法实施例,此处不再赘述。
作为本发明实施例的又一个方面,本实施例根据上述各实施例提供一种电子设备,参考图9,为本发明实施例提供的电子设备的实体结构示意图,包括:至少一个存储器901、至少一个处理器902、通信接口903和总线904。
其中,存储器901、处理器902和通信接口903通过总线904完成相互间的通信,通信接口903用于该电子设备与目标三维模型设备之间的信息传输;存储器901中存储有可在处理器902上运行的计算机程序,处理器902执行该计算机程序时,实现如上述各实施例所述的三维模型的局部放大展示方法。
可以理解为,该电子设备中至少包含存储器901、处理器902、通信接口903和总线904,且存储器901、处理器902和通信接口903通过总线904形成相互间的通信连接,并可完成相互间的通信,如处理器902从存储器901中读取三维模型的局部放大展示方法的程序指令等。另外,通信接口903还可以实现该电子设备与目标三维模型设备之间的通信连接,并可完成相互间信息传输,如通过通信接口903实现三维模型的局部放大展示等。
电子设备运行时,处理器902调用存储器901中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:获取目标三维模型的三角网格数据,并基于三角网格数据,构建目标三维模型的三角网格模型;通过遍历构成三角网格模型的每一原始三角形,分别对各原始三角形进行基于三角剖分的多边形裁剪,获取目标三维模型中待展示的局部区域;对待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
上述的存储器901中的程序指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。或者,实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还根据上述各实施例提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令使计算机执行如上述各实施例所述的三维模型的局部放大展示方法,例如包括:获取目标三维模型的三角网格数据,并基于三角网格数据,构建目标三维模型的三角网格模型;通过遍历构成三角网格模型的每一原始三角形,分别对各原始三角形进行基于三角剖分的多边形裁剪,获取目标三维模型中待展示的局部区域;对待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
本发明实施例提供的电子设备和非暂态计算机可读存储介质,通过执行上述各实施例所述的三维模型的局部放大展示方法,将目标三维模型转换为三角网格模型,并对该三角网格模型进行基于三角剖分的多边形裁剪,得到子三角形表示的待展示局部区域,能够在保证准确对模型中目标局部区域进行放大展示的同时,进一步为实现该目标局部区域中更细致局部区域的放大展示提供更大的便利和可能性。
可以理解的是,以上所描述的装置、电子设备及存储介质的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,既可以位于一个地方,或者也可以分布到不同网络单元上。可以根据实际需要选择其中的部分或全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上实施方式的描述,本领域的技术人员可以清楚地了解,各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令,用以使得一台计算机设备(如个人计算机,服务器,或者网络设备等)执行上述各方法实施例或者方法实施例的某些部分所述的方法。
另外,本领域内的技术人员应当理解的是,在本发明实施例的申请文件中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例的说明书中,说明了大量具体细节。然而应当理解的是,本发明实施例的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明实施例公开并帮助理解各个发明方面中的一个或多个,在上面对本发明实施例的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。
然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明实施例的单独实施例。
最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范围。

Claims (9)

1.一种三维模型的局部放大展示方法,其特征在于,包括:
获取目标三维模型的三角网格数据,并基于所述三角网格数据,构建所述目标三维模型的三角网格模型;
通过遍历构成所述三角网格模型的每一原始三角形,分别对各所述原始三角形进行基于三角剖分的多边形裁剪,获取所述目标三维模型中待展示的局部区域;
所述分别对各所述原始三角形进行基于三角剖分的多边形裁剪的步骤具体包括:
遍历每一所述原始三角形,并对各所述原始三角形分别进行如下处理:
获取所述原始三角形在多边形裁剪窗口所在第一平面上的投影三角形,并求取所述多边形裁剪窗口与所述投影三角形相交的第一交点集合和交线集合;
删除所述第一交点集合中位于所述投影三角形外部的所有点,获取第二交点集合,且若判定所述第二交点集合为非空,则通过将所述第二交点集合逆投影到所述原始三角形所在第二平面,并从所述第二平面刚体变换至第三平面,获取第三交点集合;
在所述交线集合的约束下,对所述第三交点集合进行三角剖分,获取第一子三角形集合,并将所述第一子三角形集合逆刚体变换至所述第二平面,获取第二子三角形集合;
基于所述第二子三角形集合,获取对所述原始三角形对应所述待展示的局部区域的裁剪结果;
其中,所述多边形裁剪窗口是根据对所述待展示的局部区域的展示需求事先设定的;
对所述待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
2.根据权利要求1所述的三维模型的局部放大展示方法,其特征在于,所述获取所述目标三维模型中待展示的局部区域的步骤具体包括:
基于所有所述原始三角形对应的所述裁剪结果,获取裁剪出的子三角网格模型,并基于所述子三角网格模型,获取所述待展示的局部区域;
其中,所述子三角网格模型为所述待展示的局部区域对应的三角网格模型。
3.根据权利要求1所述的三维模型的局部放大展示方法,其特征在于,所述求取所述多边形裁剪窗口与所述投影三角形相交的第一交点集合和交线集合的步骤具体包括:
顺序遍历所述多边形裁剪窗口的每一条边,通过求解所述边与所述投影三角形的交集,将所述边与所述投影三角形各边线的交点以及与所述投影三角形存在交点的所有边的端点构成的点集合,作为所述第一交点集合,并将所述边与所述投影三角形的交线构成的集合,作为所述交线集合。
4.根据权利要求1所述的三维模型的局部放大展示方法,其特征在于,所述获取对所述原始三角形对应所述待展示的局部区域的裁剪结果的步骤具体包括:
基于所述待展示的局部区域,初始化设定第一裁剪结果集合;
遍历所述第二子三角形集合中的每一子三角形,若判定所述子三角形的质心在所述第一平面的投影点落入所述多边形裁剪窗口的内部,则确定所述子三角形属于所述待展示的局部区域,并将所述子三角形加入所述第一裁剪结果集合;
基于遍历完所有所述子三角形后获取的第一裁剪结果集合,作为所述原始三角形对应的所述裁剪结果。
5.根据权利要求1所述的三维模型的局部放大展示方法,其特征在于,在所述若判定所述第二交点集合为非空的步骤之前,还包括:判断所述第二交点集合是否为空;
相应的,所述方法还包括:若判定所述第二交点集合为空,则若所述原始三角形的质心在所述第一平面上的投影在所述多边形裁剪窗口的内部,则判定所述原始三角形属于所述待展示的局部区域。
6.根据权利要求1-5中任一项所述的三维模型的局部放大展示方法,其特征在于,所述通过将所述第二交点集合逆投影到所述原始三角形所在第二平面,并从所述第二平面刚体变换至第三平面,获取第三交点集合的步骤具体包括:
将所述第二交点集合逆投影到所述第二平面,获取所述原始三角形上的第四交点集合,并将所述原始三角形的三个顶点加入所述第四交点集合;
以所述原始三角形的质心为中心,求解所述第二平面至所述第三平面的刚体变换系数,并通过利用所述刚体变换系数左乘加入顶点的第四交点集合,将所述加入顶点的第四交点集合刚体变换至所述第三平面,获取所述第三交点集合。
7.一种三维模型的局部放大展示装置,其特征在于,包括:
模型转换模块,用于获取目标三维模型的三角网格数据,并基于所述三角网格数据,构建所述目标三维模型的三角网格模型;
裁剪模块,用于通过遍历构成所述三角网格模型的每一原始三角形,分别对各所述原始三角形进行基于三角剖分的多边形裁剪,获取所述目标三维模型中待展示的局部区域;所述分别对各所述原始三角形进行基于三角剖分的多边形裁剪的步骤具体包括:遍历每一所述原始三角形,并对各所述原始三角形分别进行如下处理:获取所述原始三角形在多边形裁剪窗口所在第一平面上的投影三角形,并求取所述多边形裁剪窗口与所述投影三角形相交的第一交点集合和交线集合;删除所述第一交点集合中位于所述投影三角形外部的所有点,获取第二交点集合,且若判定所述第二交点集合为非空,则通过将所述第二交点集合逆投影到所述原始三角形所在第二平面,并从所述第二平面刚体变换至第三平面,获取第三交点集合;在所述交线集合的约束下,对所述第三交点集合进行三角剖分,获取第一子三角形集合,并将所述第一子三角形集合逆刚体变换至所述第二平面,获取第二子三角形集合;基于所述第二子三角形集合,获取对所述原始三角形对应所述待展示的局部区域的裁剪结果;其中,所述多边形裁剪窗口是根据对所述待展示的局部区域的展示需求事先设定的;
展示输出模块,用于对所述待展示的局部区域进行放大处理,并对放大后的待展示局部区域进行展示。
8.一种电子设备,包括:至少一个存储器、至少一个处理器、通信接口和总线;
所述存储器、所述处理器和所述通信接口通过所述总线完成相互间的通信,所述通信接口还用于所述电子设备与目标三维模型设备之间的信息传输;
所述存储器中存储有可在所述处理器上运行的计算机程序,所述电子设备的特征在于,所述处理器执行所述计算机程序时,实现如权利要求1至6中任一项所述的三维模型的局部放大展示方法的步骤。
9.一种非暂态计算机可读存储介质,其中存储有计算机指令,其特征在于,所述计算机指令使所述计算机执行如权利要求1至6中任一项所述的三维模型的局部放大展示方法的步骤。
CN201910359109.7A 2019-04-30 2019-04-30 三维模型的局部放大展示方法、装置与电子设备 Active CN110084894B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910359109.7A CN110084894B (zh) 2019-04-30 2019-04-30 三维模型的局部放大展示方法、装置与电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910359109.7A CN110084894B (zh) 2019-04-30 2019-04-30 三维模型的局部放大展示方法、装置与电子设备

Publications (2)

Publication Number Publication Date
CN110084894A CN110084894A (zh) 2019-08-02
CN110084894B true CN110084894B (zh) 2023-08-22

Family

ID=67417923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910359109.7A Active CN110084894B (zh) 2019-04-30 2019-04-30 三维模型的局部放大展示方法、装置与电子设备

Country Status (1)

Country Link
CN (1) CN110084894B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111080792B (zh) * 2019-10-17 2021-03-23 北京房江湖科技有限公司 模型简化处理方法、装置以及电子设备、存储介质
CN111127649B (zh) * 2019-12-30 2023-04-14 重庆市勘测院 构建三维体块模型的方法及装置、服务器
CN112884870A (zh) * 2021-02-26 2021-06-01 深圳市商汤科技有限公司 一种三维模型的展开方法、电子设备以及计算机存储介质
CN113599818B (zh) * 2021-08-16 2023-07-21 北京字跳网络技术有限公司 植被渲染方法、装置、电子设备及可读存储介质
CN115131371B (zh) * 2022-07-12 2024-02-09 中国建筑西南设计研究院有限公司 基于面域的建筑结构构件的二三维混合裁剪方法及终端

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102881048A (zh) * 2012-08-31 2013-01-16 电子科技大学 基于点云裁剪的空间曲面生成方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7215344B2 (en) * 1998-01-15 2007-05-08 3Dlabs, Inc. Ltd Triangle clipping for 3D graphics

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102881048A (zh) * 2012-08-31 2013-01-16 电子科技大学 基于点云裁剪的空间曲面生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
三维网格模型的稳定布尔运算算法;陈学工等;《计算机应用》;20110531;第31卷(第5期);第1198-1201页 *

Also Published As

Publication number Publication date
CN110084894A (zh) 2019-08-02

Similar Documents

Publication Publication Date Title
CN110084894B (zh) 三维模型的局部放大展示方法、装置与电子设备
Wang et al. A framework for 3D model reconstruction in reverse engineering
CN108776993B (zh) 带有孔洞的三维点云的建模方法及地下电缆工井建模方法
JP2642070B2 (ja) 四角形メッシュの生成方法及びシステム
US8537158B2 (en) Parallel triangle tessellation
CN107622530B (zh) 一种高效鲁棒的三角网切割方法
CN111581776B (zh) 一种基于几何重建模型的等几何分析方法
WO2016173260A1 (zh) 基于广义圆柱体的三维模型分割方法及装置
US11935193B2 (en) Automated mesh generation
CN113724401B (zh) 一种三维模型切割方法、装置、计算机设备和存储介质
CN116071519B (zh) 基于调和映射生成网格模型的图像处理方法和装置
CN110428386B (zh) 地图网格合并方法、装置、存储介质、电子装置
CN111145328B (zh) 三维文字表面纹理坐标计算方法、介质、设备及装置
KR101552827B1 (ko) 3차원 객체 모델의 분할 방법
CN115984476A (zh) 一种基于纹理的三维模型裁切方法
JP3265879B2 (ja) 3次元直交格子データの生成装置
CN103679814A (zh) 一种三角形网格模型的处理方法及装置
CN114782645A (zh) 虚拟数字人制作方法、相关设备及可读存储介质
Nieser et al. Patch layout from feature graphs
WO2004053741A1 (ja) 三角形と線分の交点計算方法とそのプログラム
Wagner et al. Repairing non-manifold triangle meshes using simulated annealing
CN114283266A (zh) 一种三维模型调整方法、装置、存储介质及设备
JP2002207777A (ja) 中立面モデルの生成方法
Roth-Koch Generating CAD models from sketches
CN112614046B (zh) 一种二维平面上绘制三维模型的方法及装置

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