CN116452722A - 一种基于三维引擎的设备分层透视展示方法、装置及设备 - Google Patents
一种基于三维引擎的设备分层透视展示方法、装置及设备 Download PDFInfo
- Publication number
- CN116452722A CN116452722A CN202310468787.3A CN202310468787A CN116452722A CN 116452722 A CN116452722 A CN 116452722A CN 202310468787 A CN202310468787 A CN 202310468787A CN 116452722 A CN116452722 A CN 116452722A
- Authority
- CN
- China
- Prior art keywords
- layer
- currently displayed
- nodes
- node
- world coordinates
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000007621 cluster analysis Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 6
- RVRCFVVLDHTFFA-UHFFFAOYSA-N heptasodium;tungsten;nonatriacontahydrate Chemical compound O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W] RVRCFVVLDHTFFA-UHFFFAOYSA-N 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
- G06V10/763—Non-hierarchical techniques, e.g. based on statistics of modelling distributions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Graphics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于三维引擎的设备分层透视展示方法、装置及设备,属于图像处理技术领域,特征在于,方法包括:S1、计算设备模型所有节点的世界坐标的包围盒;S2、分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;S3、根据所述平均值和相关参数对设备模型各节点分层,得到总层数和各节点所在的层;S4、根据输入参数确定当前所展示的层;S5、将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。本发明利用三维模型本身对模型各部件的节点划分,提高了分层效率,减少了人工成本。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于三维引擎的设备分层透视展示方法。
背景技术
在三维数字孪生场景中,设备一般由众多部件构建而成,这些部件在空间中分布在不同的层级上,其中每一种部件在设备的三维模型中可能会包含一个或多个节点,在透视展示设备外部及内部部件时,如果需要用户交互控制的分层透视展示,通常需要人工对部件进行分层,并根据不同的分层情况编制分层切换的逻辑,如果部件数量较多或需要展示的设备数量较多,需要大量的人工投入,效率较低。
百分位数(percentile)是统计学术语,若将一组数据从小到大排序,并计算相应的累计百分点,则某百分点所对应数据的值,就称为这百分点的百分位数。百分位数是用来比较个体在群体中的相对地位量数。
聚类分析(cluster analysis)简称聚类(clustering),是根据事物自身的特性对被聚类对象进行类别划分的统计分析方法,聚类分析的目的是根据某种相似度度量对数据集进行划分,将没有类别的数据样本划分成若干个不同的子集,这样的一个子集称为簇(cluster),聚类使得同一个簇中的数据对象彼此相似,不同簇中的数据对象彼此不同,即通常所说的“物以类聚”。
k-均值算法(k-means clustering)源于信号处理中的一种向量量化方法,现在则更多地作为一种聚类分析方法流行于数据挖掘领域。k-均值聚类的目的是:把 n个点(可以是样本的一次观察或一个实例)划分到k个聚类中,使得每个点都属于离他最近的均值(此即聚类中心)对应的聚类,以之作为聚类的标准。原始的算法在计算上的复杂度较高,对大量数据的分析需要很长时间,通过一些近似算法可以达到多项式复杂度,但仍不适用于对大量数据的分析。此算法如果直接用于在三维空间中对设备模型各部件的顶点进行分析,耗时长,效率低,并且由于设备很可能包含多个类壳体部件,分析效果不理想。
基于密度的聚类方法(Density-Based Spatial Clustering of Applicationswith Noise,DBSCAN)算法是一种基于密度的聚类算法。密度聚类方法的指导思想是:只要样本点的密度大于某阈值,则将该样本添加到最近的簇中。这类算法能克服基于距离的算法只能发现“类圆形”(凸)的聚类的缺点,可发现任意形状的聚类,且对噪声数据不敏感。此算法如果直接用于在三维空间中对设备模型各部件的顶点进行分析,耗时较k-均值算法更长。
发明内容
为了解决上述问题,快速高效的制作包含多个设备模型的可交互三维场景,本发明提出一种基于三维引擎的设备分层透视展示方法、装置及设备。利用该 方法在透视展示设备外部及内部部件时,可以自动确定透视展示的各层级及每一层所包含的节点,减少了过程中的人工操作,提高了场景的搭建效率,并且可有效的利用三维模型本身对设备各部件的节点划分,大幅度的减小了聚类分析方法所需要分析的数据量,提高了计算速度,减少了无关因素的影响。
本发明的技术方案是:
第一方面,本发明提供一种基于三维引擎的设备分层透视展示方法,包括以下步骤:
S1、计算设备模型所有节点的世界坐标的包围盒;
S2、分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;
S3、根据所述平均值和相关参数对设备模型各节点分层,得到总层数和各节点所在的层;
S4、根据S3中所述总层数,在展示时根据输入参数R确定当前所展示的层;
S5、将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。
在一种具体的实施方式中,所述S1的具体步骤包括:
S11、遍历设备模型所有节点中的所有顶点,计算其世界坐标,在三维场景中,世界坐标包含(x,y,z)三个坐标分量;
S12、计算所述所有顶点的世界坐标的(x,y,z)三个坐标分量的最大值和最小值,得到两个顶点:P1(xmin,ymin,zmin)和P8(xmax,ymax,zmax);
基于所述两个顶点构建包围盒的8个顶点,分别为P1(xmin,ymin,zmin)、P2(xmin,ymax,zmin)、P3(xmax,ymin,zmin)、P4(xmax,ymax,zmin)、P5(xmin,ymin,zmax)、P6(xmin,ymax,zmax)、P7(xmax,ymin,zmax)、P8(xmax,ymax,zmax);
S13、基于所述8个顶点构建包围盒的6个面,分别为Q1(P1,P2,P3,P4)、Q2(P1,P2,P5,P6)、Q3(P1,P3,P5,P7)、Q4(P2,P4,P6,P8)、Q5(P3,P4,P7,P8)、Q6(P5,P6,P7,P8);
S14、所述包围盒的6个面即为设备模型所有节点的世界坐标的包围盒。
在一种具体的实施方式中,所述S2的具体步骤为:
遍历所述设备模型所有节点,对其中每一个节点应用如下步骤,获得每一个节点所对应的平均值,其中当前遍历的节点为当前节点,包括:
S21、遍历当前节点中的所有顶点,计算其世界坐标;
S22、分别计算所述S21中各顶点的世界坐标到S1所述包围盒6个面的距离,得到6个距离,取6个距离中的最小值Dmin,即得当前节点中每个顶点的世界坐标与包围盒6个面的距离的最小值Dmin;
S23、计算所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值。
可选的,为了规避少量极端值对结果的影响,所述S23之后,还包括:
S24、遍历所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin,计算所述最小值Dmin与其平均值的差值的绝对值Dabs(Dabs=|Dmin-/>|),计算所有所述绝对值Dabs的95%百分位数Dp95,计算所述绝对值Dabs小于所述绝对值的95%百分位数Dp95的各顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值/>D1,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值。
在一种具体的实施方式中,所述S3采用聚类分析方法对S2中得到的平均值进行处理;其中,各节点所在的层从1开始,到总层数结束,基于各层中所包含的节点的所述平均值再次进行平均,再平均后的平均值由大到小排序,平均值的个数即为总层数,平均值的排序即为节点所在的层;在得到总层数和各节点所在的层之后,进行展示并同时将其存储到场景数据中,以供下次加载使用。
可选的,所述聚类分析方法为k-均值算法;所述S3的相关参数即为所述 k-均值算法所需的参数k,也即所述总层数,一般选取3-6之间的整数。
可选的,所述聚类分析方法为基于密度的聚类方法(DBSCAN);所述S3的相关参数即为所述基于密度的聚类方法所需的参数minPoints和距离ε,其中,所述参数minPoints表示一个点邻域内最少的密度,一般选取1-5之间的整数;距离ε代表一个点与其邻域内的其他点之间的距离限制,一般取所述S1中的P1(xmin,ymin,zmin)与P8(xmax,ymax,zmax)的空间距离的 1/31-1/8。
在一种具体的实施方式中,所述S4中,所述当前所展示的层的确定方法为:
S41、计算每层所占所述输入参数R的比例N,N=1.0/所述S3中的总层数,其中,所述输入参数R为自定义变量,用于确定当前显示的层及其透明度,其取值范围0.0-1.0对应于图形学中对“不透明度”的表达程度,其中1.0表示全部层不透明,0.0表示全部层透明;
基于比例N及输入参数R,计算透明度因子T:
T =输入参数R/比例N
=输入参数R/(1.0/所述S3的总层数)
=输入参数R*所述S3的总层数;
S42、将所述S41中的透明度因子T向下取整后加1,与所述S3中的总层数进行比较,其中的小值即确定为当前所展示的层F。
在一种具体的实施方式中,所述S5的具体步骤包括:
S51、对所在的层大于“所述当前所展示的层”的节点赋值为0,从而将当前所展示的层之外的层所包含的节点设置为透明;
S52、计算当前所展示的层的不透明度,并将其赋值给当前所展示的层的节点,从而将当前所展示的层的节点设置为半透明;其中,所述当前所展示的层的不透明度的计算公式为T–F+1;
S53、对所在的层小于“所述当前所展示的层”的节点赋值为1,从而将当前所展示的层之内的层所包含的节点设置为不透明。
第二方面,本发明还提供了一种基于三维引擎的设备分层透视展示装置,包括:
第一计算模块,用以计算设备模型所有节点的世界坐标的包围盒;
第二计算模块,用以分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;
分层模块,用以根据所述平均值和相关参数对设备模型各节点分层,得到总层数和各节点所在的层;
层确定模块,用以根据输入参数及设备模型总层数,确定当前所展示的层;
分层透视展示模块,用以将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。
第三方面,本发明提供一种计算机设备,包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上所述的基于三维引擎的设备分层透视展示方法。
第四方面,本发明提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上所述的基于三维引擎的设备分层透视展示方法。
与现有技术相比,本发明的有益效果在于:
1、本发明可以自动确定透视展示模型的各层级及每一层所包含的节点。
2、本发明通过计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值,可有效的利用三维模型本身对模型各部件的节点划分,大幅度的减小了聚类分析方法所需要分析的数据量,提高了计算速度,减少了无关因素的影响。
3、本发明的聚类分析可以在场景展示中进行,也可以在场景搭建时进行,在场景搭建时的计算分析结果可用于场景展示时直接读取使用,无需进行重复计算,提高了场景搭建及分层透视展示的效率。
附图说明
图1是本发明的一种基于三维引擎的设备分层透视展示方法流程图;
图2是图1中平均值计算的具体流程图;
图3是实施例一中输入参数R与当前所展示的层的对应关系图;
图4是实施例一中输入参数R与当前所展示的层的透明度的对应关系图;
图5是实施例三的一种基于三维引擎的设备分层透视展示装置结构图;
图6是实施例四的一种基于三维引擎的设备分层透视展示设备结构图。
具体实施方式
为能清楚说明本方案的技术特点,下面将通过具体实施方式,以变压器为例,结合其附图,对本发明的技术方案进行详细阐述。下文的公开提供了许多不同的实施例用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例一
本实施例基于J3D三维引擎,以一种油浸式电力变压器为例,结合附图1-2对本发明的一种基于三维引擎的设备分层透视展示方法的原理及过程进行详细说明。
S1、计算变压器模型所有节点的世界坐标的包围盒,所述变压器包含箱体、油枕、冷却器等部件;具体包括:
S11、遍历变压器模型所有节点中所有的顶点,计算其世界坐标,在三维场景中,世界坐标包含(x,y,z)三个坐标分量;
S12、计算所述所有顶点的世界坐标的(x,y,z)三个坐标分量的最大值和最小值,得到两个顶点:P1(xmin,ymin,zmin)和P8(xmax,ymax,zmax);
基于所述两个顶点构建包围盒的8个顶点,分别为P1(xmin,ymin,zmin)、P2(xmin,ymax,zmin)、P3(xmax,ymin,zmin)、P4(xmax,ymax,zmin)、P5(xmin,ymin,zmax)、P6(xmin,ymax,zmax)、P7(xmax,ymin,zmax)、P8(xmax,ymax,zmax);
S13、基于所述8个顶点构建包围盒的6个面,分别为Q1(P1,P2,P3,P4)、Q2(P1,P2,P5,P6)、Q3(P1,P3,P5,P7)、Q4(P2,P4,P6,P8)、Q5(P3,P4,P7,P8)、Q6(P5,P6,P7,P8);
S14、所述包围盒的6个面即为变压器模型所有节点的世界坐标的包围盒。
S2、分别计算变压器模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;具体通过遍历所述变压器模型的所有节点,对其中每一个节点应用如下步骤,获得每个节点所对应的平均值,其中当前遍历的节点为当前节点,包括:
S21、遍历当前节点中的所有顶点,计算其世界坐标;
S22、分别计算所述S21中中各顶点的世界坐标到S1所述包围盒的6个面的距离,得到6个距离,取6个距离中的最小值Dmin,即得当前节点中每个顶点的世界坐标与包围盒6个面的距离的最小值Dmin;
S23、计算所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值。
S3、根据所述平均值和相关参数对变压器模型各节点分层,得到总层数和各节点所在的层,首先,使用k-均值算法对S2中所述变压器模型各节点的各顶点的世界坐标与包围盒所在的6个面的距离的最小值的平均值进行处理,基于变压器模型的实际情况,k-均值算法所需参数k即为所述总层数,一般选取 3-6之间的整数;然后,展示总层数并展示各节点所在的层,并且存储总层数和各节点所在的层到场景数据中供下次加载使用。
S4、根据S3中所述总层数,在展示时根据输入参数确定当前所展示的层;包括:
S41、计算每层所占所述输入参数R的比例N,N=1.0/所述S3的总层数,其中,所述输入参数R为自定义变量,用于确定当前显示的层及其透明度,其取值范围0.0-1.0对应于图形学中对“不透明度”的表达程度,其中1.0表示全部层不透明,0.0表示全部层透明;
基于比例N及输入参数R,计算透明度因子T:
T =输入参数R/比例N
=输入参数R/(1.0/所述S3的总层数)
=输入参数R*所述S3的总层数;
S42、将所述S41中的透明度因子T向下取整后加1,与所述S3中的总层数进行比较,其中的小值即确定为当前所展示的层F。
本实施例中输入参数R与当前所展示的层的对应关系如图3所示。
S5、将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明,具体步骤如下:
S51、对所在的层大于“所述当前所展示的层”的节点赋值为0,从而将当前所展示的层之外的层所包含的节点设置为透明;
S52、计算当前所展示的层的不透明度,并将其赋值给当前所展示的层的节点,从而将当前所展示的层的节点设置为半透明;其中,所述当前所展示的层的不透明度的计算公式为T–F+1;
S53、对所在的层小于“所述当前所展示的层”的节点赋值为1,从而将当前所展示的层之内的层所包含的节点设置为不透明。
本实施例中输入参数R与当前所展示的层的透明度的对应关系如图4所示
实施例二
本实施例基于Unity三维引擎,以一种大型配电变压器为例,结合附图1-2对本发明的一种基于三维引擎的设备分层透视展示方法的原理及过程进行详细说明。
S1、计算变压器模型所有节点的世界坐标的包围盒,所述变压器包含箱体、油枕、冷却器等部件;
S2、分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;具体通过遍历所述变压器模型的所有节点,对其中每一个节点应用如下步骤,获得每一个节点所对应的平均值,其中当前遍历的节点为当前节点,包括:
S21、遍历当前节点中的所有顶点,计算其世界坐标;
S22、分别计算所述所有顶点中各顶点的世界坐标到包围盒6个面的距离,得到6个距离,取6个距离中的最小值Dmin,即得当前节点中每个顶点的世界坐标与包围盒6个面的距离的最小值Dmin;
S23、计算所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;
S24、遍历所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin,计算所述最小值Dmin与其平均值的差值的绝对值Dabs(Dabs=|Dmin-/>|),计算所有所述绝对值Dabs的95%百分位数Dp95,计算所述绝对值Dabs小于所述绝对值的95%百分位数Dp95的各顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值/>1,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值。
S3、根据所述平均值和相关参数对变压器模型各节点分层,得到总层数和各节点所在的层,首先,使用基于密度的聚类方法(DBSCAN)对所述变压器模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值进行处理,基于变压器模型的实际情况,所述基于密度的聚类方法所需的参数minPoints表示一个点邻域内最少的密度,一般选取1-5之间的整数,所述基于密度的聚类方法所需的ε代表一个点与其邻域内的其他点之间的距离限制,一般取所述P1(xmin,ymin,zmin)与P8(xmax,ymax,zmax)的空间距离的 1/31-1/8;在得到总层数和各节点所在的层之后,进行展示并同时将其存储到场景数据中,以供下次加载使用。
S4、根据S3中所述总层数,在展示时根据输入参数确定当前所展示的层。
S5、将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。
实施例三
本实施例涉及一种基于三维引擎的设备分层透视展示装置,其结构如图5所示,包括:
第一计算模块,用以计算设备模型所有节点的世界坐标的包围盒;
第二计算模块,用以分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;
分层模块,用以根据所述平均值和相关参数对设备模型各节点分层,得到总层数和各节点所在的层;
层确定模块,用以根据输入参数及设备模型总层数,确定当前所展示的层;
分层透视展示模块,用以将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。
实施例四
本实施例涉及一种计算机设备,其结构如图6所示,本实施例的一种计算机设备,包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行实施例一所述的基于三维引擎的设备分层透视展示方法。
具体地,上述存储器和处理器能够为通用的存储器和处理器,这里不做具体限定,当处理器运行存储器存储的计算机程序时,能够执行上述的基于三维引擎的设备分层透视展示方法。
本领域技术人员可以理解,图6中示出的计算机设备的结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
在一些实施例中,该计算机设备还可以包括触摸屏可用于显示图形用户界面(例如,应用程序的启动界面)和接收用户针对图形用户界面的操作(例如,针对应用程序的启动操作)。具体的触摸屏可包括显示面板和触控面板。其中显示面板可以采用LCD(LiquidCrystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置。触控面板可收集用户在其上或附近的接触或者非接触操作,并生成预先设定的操作指令,例如,用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作。另外,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位、姿势,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成处理器能够处理的信息,再送给处理器,并能接收处理器发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板,也可以采用未来发展的任何技术实现触控面板。进一步的,触控面板可覆盖显示面板,用户可以根据显示面板显示的图形用户界面,在显示面板上覆盖的触控面板上或者附近进行操作,触控面板检测到在其上或附近的操作后,传送给处理器以确定用户输入,随后处理器响应于用户输入在显示面板上提供相应的视觉输出。另外,触控面板与显示面板可以作为两个独立的部件来实现也可以集成而来实现。
对应于上述应用程序的启动方法,本发明实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行实施例一或实施例二所述基于三维引擎的设备分层透视展示方法。
本申请实施例所提供的应用程序的启动装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于三维引擎的设备分层透视展示方法,特征在于,包括以下步骤:
S1、计算设备模型所有节点的世界坐标的包围盒;
S2、分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;
S3、根据所述平均值和相关参数对设备模型各节点分层,得到总层数和各节点所在的层;
S4、根据S3中所述总层数,在展示时根据输入参数R确定当前所展示的层;
S5、将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。
2.如权利要求1所述的一种基于三维引擎的设备分层透视展示方法,特征在于,所述S2中,遍历所述设备模型所有节点,对其中每一个节点应用如下步骤,获得每一个节点所对应的平均值,其中当前遍历的节点为当前节点,包括:
S21、遍历当前节点中的所有顶点,计算其世界坐标;
S22、分别计算所述S21中各顶点的世界坐标到S1所述包围盒6个面的距离,得到6个距离,取6个距离中的最小值Dmin,即得当前节点中每个顶点的世界坐标与包围盒6个面的距离的最小值Dmin;
S23、计算所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值。
3.如权利要求2所述的一种基于三维引擎的设备分层透视展示方法,特征在于,所述S23之后,还包括:
S24、遍历所述当前节点中所有顶点的世界坐标与包围盒6个面的距离的最小值Dmin,计算所述最小值Dmin与其平均值的差值的绝对值Dabs(Dabs=|Dmin-/>|),计算所有所述绝对值Dabs的95%百分位数Dp95,计算所述绝对值Dabs小于所述绝对值的95%百分位数Dp95的各顶点的世界坐标与包围盒6个面的距离的最小值Dmin的平均值/>1,即为S2所述各顶点的世界坐标与包围盒6个面的距离的最小值的平均值。
4.如权利要求1所述的一种基于三维引擎的设备分层透视展示方法,特征在于,
所述S3采用聚类分析方法对S2中得到的平均值进行处理;其中,各节点所在的层从1开始,到总层数结束,基于各层中所包含的节点的所述平均值再次进行平均,再平均后的平均值由大到小排序,平均值的个数即为总层数,平均值的排序即为节点所在的层;在得到总层数和各节点所在的层之后,进行展示并同时将其存储到场景数据中,以供下次加载使用。
5.如权利要求4所述的一种基于三维引擎的设备分层透视展示方法,特征在于,
所述聚类分析方法为k-均值算法;所述S3的相关参数即为所述k-均值算法所需的参数k,也即所述总层数,选取3-6之间的整数。
6.如权利要求4所述的一种基于三维引擎的设备分层透视展示方法,特征在于,
所述聚类分析方法为基于密度的聚类方法;所述S3的相关参数即为所述基于密度的聚类方法所需的参数minPoints和距离ε,所述参数minPoints表示一个点邻域内最少的密度,选取1-5之间的整数;距离ε代表一个点与其邻域内的其他点之间的距离限制,选取所述S1中点P1与点P8的空间距离的1/31-1/8。
7.如权利要求1所述的一种基于三维引擎的设备分层透视展示方法,特征在于,所述S4中,所述当前所展示的层的确定方法为:
S41、计算每层所占所述输入参数R的比例N,N=1.0/所述S3的总层数,其中,所述输入参数R为自定义变量,用于确定当前显示的层及其透明度,其取值范围0.0-1.0对应于图形学中对“不透明度”的表达程度,其中1.0表示全部层不透明,0.0表示全部层透明;
基于比例N及输入参数R,计算透明度因子T:
T =输入参数R/比例N
=输入参数R/(1.0/所述S3的总层数)
=输入参数R*所述S3的总层数;
S42、将所述S41中的透明度因子T向下取整后加1,与所述S3中的总层数进行比较,其中的小值即确定为当前所展示的层F。
8.如权利要求1所述的一种基于三维引擎的设备分层透视展示方法,特征在于,所述S5的具体步骤包括:
S51、对所在的层大于所述当前所展示的层的节点赋值为0,从而将当前所展示的层之外的层所包含的节点设置为透明;
S52、计算当前所展示的层的不透明度,并将其赋值给当前所展示的层的节点,从而将当前所展示的层的节点设置为半透明;其中,所述当前所展示的层的不透明度的计算公式为T–F+1;
S53、对所在的层小于所述当前所展示的层的节点赋值为1,从而将当前所展示的层之内的层所包含的节点设置为不透明。
9.一种基于三维引擎的设备分层透视展示装置,其特征在于,包括:
第一计算模块,用以计算设备模型所有节点的世界坐标的包围盒;
第二计算模块,用以分别计算设备模型各节点的各顶点的世界坐标与包围盒6个面的距离的最小值的平均值;
分层模块,用以根据所述平均值和相关参数对设备模型各节点分层,得到总层数和各节点所在的层;
层确定模块,用以根据输入参数及设备模型总层数,确定当前所展示的层;
分层透视展示模块,用以将当前所展示的层之外的层所包含的节点设置为透明,将当前所展示的层所包含的节点设置为半透明,将当前所展示的层之内的层所包含的节点设置为不透明。
10.一种计算机设备,包括处理器、存储器和总线,其特征在于,所述存储器存储有所述处理器可执行的机器可读指令,当所述计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行权利要求1-8任一所述的基于三维引擎的设备分层透视展示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310468787.3A CN116452722A (zh) | 2023-04-27 | 2023-04-27 | 一种基于三维引擎的设备分层透视展示方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310468787.3A CN116452722A (zh) | 2023-04-27 | 2023-04-27 | 一种基于三维引擎的设备分层透视展示方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116452722A true CN116452722A (zh) | 2023-07-18 |
Family
ID=87123680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310468787.3A Pending CN116452722A (zh) | 2023-04-27 | 2023-04-27 | 一种基于三维引擎的设备分层透视展示方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116452722A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118229932A (zh) * | 2024-05-23 | 2024-06-21 | 山东捷瑞数字科技股份有限公司 | 基于三维引擎调整模型位置的方法、系统、装置、介质 |
-
2023
- 2023-04-27 CN CN202310468787.3A patent/CN116452722A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118229932A (zh) * | 2024-05-23 | 2024-06-21 | 山东捷瑞数字科技股份有限公司 | 基于三维引擎调整模型位置的方法、系统、装置、介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109870983B (zh) | 处理托盘堆垛图像的方法、装置及用于仓储拣货的系统 | |
EP4120199A1 (en) | Image rendering method and apparatus, and electronic device and storage medium | |
WO2019226686A2 (en) | Deep learning system | |
US20210134057A1 (en) | Three-dimensional (3d) model creation and incremental model refinement from laser scans | |
US20190080512A1 (en) | Three-dimensional graphics image processing | |
CN114529707B (zh) | 三维模型分割方法、装置、计算设备及可读存储介质 | |
CN107798725A (zh) | 基于Android的二维住房户型识别和三维呈现方法 | |
WO2022250796A1 (en) | Synthesizing high resolution 3d shapes from lower resolution representations for synthetic data generation systems and applications | |
CN113724388B (zh) | 高精地图的生成方法、装置、设备以及存储介质 | |
CN116452722A (zh) | 一种基于三维引擎的设备分层透视展示方法、装置及设备 | |
Chew et al. | Large-scale 3D point-cloud semantic segmentation of urban and rural scenes using data volume decomposition coupled with pipeline parallelism | |
CN113836338A (zh) | 细粒度图像分类方法、装置、存储介质及终端 | |
CN112668577A (zh) | 大尺度图像中目标物体的检测方法、终端及装置 | |
CN115393251A (zh) | 印制线路板的缺陷检测方法、装置、存储介质及电子设备 | |
CN112052884A (zh) | 一种基于局部边缘特征增强的点云分类方法及系统 | |
CN109997123A (zh) | 用于改进空间-时间数据管理的方法、系统和装置 | |
US9886652B2 (en) | Computerized correspondence estimation using distinctively matched patches | |
Taghavi et al. | Visualization of multi-objective design space exploration for embedded systems | |
Chen et al. | Semantic-aware room-level indoor modeling from point clouds | |
CN114797109A (zh) | 对象编辑方法、装置、电子设备和存储介质 | |
CN111737258A (zh) | 表现、记录和自动生成产品设计方案的方法及装置 | |
Zhu et al. | Multiview based 3d scene understanding on partial point sets | |
Wen et al. | Attention-Based Joint Semantic-Instance Segmentation of 3D Point Clouds. | |
Sun et al. | A review of point cloud segmentation for understanding 3D indoor scenes | |
Fang et al. | Direction-induced convolution for point cloud analysis |
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 |