1.本技术涉及图形显示领域,特别是涉及一种曲面图形显示方法、装置、计算机设备及可读存储介质。
背景技术:2.随着时代的发展,大型建筑或者是高层建筑通常带有装饰效果的轻质墙体,比如幕墙;在建筑设计中,需要对该幕墙进行设计绘制,并进行展示,或是以缩略框的方式显示。
3.在传统方式中,在对绘制的曲面幕墙进行展示的时候,通常以坐标系方式显示,但有时按坐标系显示时,建筑模型或显示的局部模型显示为倾斜方向,给人的体验不好,同时也不利于阅图。
技术实现要素:4.基于此,有必要针对上述技术问题,提供一种能够提升用户预图体验的曲面图形显示方法、装置、计算机设备及可读存储介质。
5.一种曲面图形显示方法,所述方法包括:
6.获取待显示的曲面图形的图形数据;
7.基于图形数据,确定曲面图形的中心点坐标;
8.利用中心点坐标,构建对应曲面图形的协方差矩阵;
9.根据协方差矩阵,确定曲面图形的主方向以及法向量;
10.确定对曲面图形进行显示的目标平面;
11.基于目标平面、主方向以及法向量,对曲面图形进行显示。
12.在其中一个实施例中,基于图形数据,确定曲面图形的中心点坐标,包括:
13.基于图形数据,确定待显示的曲面图形的各图形线段;
14.确定各图形线段的各控制点,并获取各控制点的坐标数据;
15.基于各控制点的坐标数据,确定曲面图形的中心点坐标。
16.在其中一个实施例中,利用中心点坐标,构建对应曲面图形的协方差矩阵,包括:
17.基于中心点坐标以及各控制点的坐标数据,确定各控制点的控制点坐标与中心点坐标的坐标差;
18.根据各坐标差,构建对应曲面图形的协方差矩阵。
19.在其中一个实施例中,根据协方差矩阵,确定曲面图形的主方向以及法向量,包括:
20.对协方差矩阵进行求解,得到协方差矩阵的多个特征值以及对应各特征值的各特征向量;
21.确定满足第一预设条件的特征值所对应的特征向量为第一特征向量,并确定第一特征向量所对应的方向为曲面图形的主方向;
22.确定满足第二预设条件的特征值所对应的特征向量维第二特征向量,并确定第二
特征向量为曲面图形的法向量。
23.在其中一个实施例中,基于主方向、法向量以及目标平面,并对曲面图形进行显示,包括:
24.获取目标平面的法向量以及主方向;
25.基于曲面图形的法向量以及目标平面的法向量,确定法向量差;
26.根据法向量差,将曲面图形旋转至法向量与目标平面的法向量一致;
27.将旋转后的曲面图形的主方向旋转至与目标平面的主方向一致。
28.在其中一个实施例中,上述方法还包括:
29.获取目标平面的平面中心坐标;
30.基于平面中心坐标以及曲面图形的中心点坐标,确定中心位置差;
31.根据中心位置差,将曲面图形平移至目标平面的中心位置。
32.在其中一个实施例中,基于主方向、法向量以及目标平面,对曲面图形进行显示,包括:
33.基于主方向、法向量以及目标平面,对平移至目标平面的中心位置的曲面图形进行显示。
34.一种曲面图形显示装置,所述装置包括:
35.图形数据获取模块,用于获取待显示的曲面图形的图形数据:
36.中心点坐标确定模块,用于基于图形数据,确定曲面图形的中心点坐标;
37.协方差矩阵构建模块,用于利用中心点坐标,构建对应曲面图形的协方差矩阵;
38.主方向以及法向量确定模块,用于根据协方差矩阵,确定曲面图形的主方向以及法向量;
39.目标平面确定模块,用于确定对曲面图形进行显示的目标平面;
40.显示模块,用于基于目标平面、主方向以及法向量,对曲面图形进行显示。
41.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例所述方法的步骤。
42.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法的步骤。
43.上述曲面图形显示方法、装置、计算机设备及可读存储介质,通过获取待显示的曲面图形的图形数据,然后基于图形数据,确定曲面图形的中心点坐标,并利用中心点坐标,构建对应曲面图形的协方差矩阵,进一步,根据协方差矩阵,确定曲面图形的主方向以及法向量,确定对曲面图形进行显示的目标平面,并基于目标平面、主方向以及法向量,对曲面图形进行显示。从而,在获取到图形数据后,可以确定曲面图形的中心点坐标,然后可以构建协方差矩阵求解对应曲面图形的主方向以及法向量,使得可以基于曲面图形的主方向以及法向量,以及确定的用于展示的目标平面,对曲面图像进行正向展示,解决了传统方式中倾斜展示所带来的不便于查看的弊端,进而可以提升用户的阅图体验。
附图说明
44.图1为一个实施例中曲面图形显示方法的应用场景图;
45.图2为一个实施例中曲面图形显示方法的流程示意图;
46.图3为一个实施例中曲面图形的示意图;
47.图4为一个实施例中图面图形显示效果的示意图;
48.图5为另一个实施例中图面图形显示效果的示意图;
49.图6为一个实施例中曲面图形显示装置的结构框图;
50.图7为一个实施例中计算机设备的内部结构图。
具体实施方式
51.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
52.本技术提供的曲面图形显示方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。终端102可以接受用户指示,并发送至服务器102,以指示服务器104获取待显示的曲面图形的图形数据。服务器104在获取到图形数据之后,可以基于图形数据,确定曲面图形的中心点坐标,并利用中心点坐标,构建对应曲面图形的协方差矩阵。然后服务器104可以根据协方差矩阵,确定曲面图形的主方向以及法向量,并确定对曲面图形进行显示的目标平面。进一步,服务器104可以基于目标平面、主方向以及法向量,对曲面图形进行显示。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
53.在一个实施例中,如图2所示,提供了一种曲面图形显示方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
54.步骤s202,获取待显示的曲面图形的图形数据。
55.其中,待显示的曲面图形可以是三维软件中,如revit等三维软件中,待显示的三维曲面模型。具体可以如图3所示。
56.图形数据可以包括待显示的曲面图形的各种数据,例如,曲面图形的组成线条,线形等数据,以及曲面图形所对应的参考系坐标等数据。
57.在传统方式中,用户需要展示某个三维图像的时候,例如,在对图形进行设置需要显示缩略图时,系统自动根据固定的显示角度显示,但显示的视角往往不是用户所期望看到的。
58.在本实施例中,服务器可以基于终端的显示指令,获取到待显示的曲面图形的图形数据,并进行后续的处理。
59.步骤s204,基于图形数据,确定曲面图形的中心点坐标。
60.具体地,服务器可以基于图形数据,确定曲面图形的控制点以及中心点,进而基于各控制点对应的坐标,确定曲面图形的中心点坐标。
61.在本实施例中,曲面图形是三维曲面,则中心点坐标可以是三维坐标,可以通过(x,y,z)表示。
62.步骤s206,利用中心点坐标,构建对应曲面图形的协方差矩阵。
63.在本实施例中,服务器在获取到曲面图形的中心点坐标之后,可以基于获取到的中心点坐标,以及控制点坐标,构建对应曲面图形的协方差矩阵。
64.在本实施例中,协方差矩阵中各矩阵元素可以是基于中心点坐标与控制点坐标确定,例如,可以是二者的差值,本技术对此不作限制。
65.步骤s208,根据协方差矩阵,确定曲面图形的主方向以及法向量。
66.在本实施例中,服务器可以对协方差矩阵进行求解,生成对应协方差矩阵的特征值以及特征向量,进而基于特征值以及特征向量确定曲面图形的主方向以及法向量。
67.步骤s210,确定对曲面图形进行显示的目标平面。
68.其中,目标平面可以是指三维模型中对曲面图形进行显示的平面,例如,可以是xoy平面,也可以是zox平面,或者是yoz平面等,或者也可以称之为画布平面。
69.在本实施例中,画布平面可以有一定的大小,例如,可以与终端显示界面的显示尺寸一致,或固定于缩略图框内。
70.在本实施例中,服务器可以基于终端指示,确定对曲面图形进行显示的目标平面,并进行后续的显示处理。
71.步骤s212,基于目标平面、主方向以及法向量,对曲面图形进行显示。
72.在本实施例中,服务器在确定目标平面,主方向以及法向量之后,可选择显示预览时给予显示,例如,可以得到正向显示预览框内全页面填充的显示效果,如图4所示,显示的曲面图形适应用户审阅习惯,为一般模型对应的物体主视方向。
73.上述曲面图形显示方法中,通过获取待显示的曲面图形的图形数据,然后基于图形数据,确定曲面图形的中心点坐标,并利用中心点坐标,构建对应曲面图形的协方差矩阵,进一步,根据协方差矩阵,确定曲面图形的主方向以及法向量,确定对曲面图形进行显示的目标平面,并基于目标平面、主方向以及法向量,对曲面图形进行显示。从而,在获取到图形数据后,可以确定曲面图形的中心点坐标,然后可以构建协方差矩阵求解对应曲面图形的主方向以及法向量,使得可以基于曲面图形的主方向以及法向量,以及确定的用于展示的目标平面,对曲面图像进行正向展示,解决了传统方式中倾斜展示所带来的不便于查看的弊端,进而可以提升用户的阅图体验。
74.在其中一个实施例中,基于图形数据,确定曲面图形的中心点坐标,可以包括:基于图形数据,确定待显示的曲面图形的各图形线段;确定各图形线段的各控制点,并获取各控制点的坐标数据;基于各控制点的坐标数据,确定曲面图形的中心点坐标。
75.其中,曲面图形的图形线段可以是轮廓线等。曲面图形可以由多条图形线段组成,可以包括直线、曲线或者是折线段等。
76.在本实施例中,服务器可以基于图形数据,确定待显示的曲面图形的各图形线段以及确定各线段类型,例如,确定曲面图形有多少条图形线段组成,各图形线段的线段类型为直线、曲线或者是折线段等。
77.在本实施例中,对于各不同的线段类型的图像线段,其控制点可以不相同,例如,对于直线,其控制点为两个端点,而对于埃尔米特曲线,其控制点也是两个端点,而对于折线段,其控制点可以是各个转折点。
78.在本实施例中,服务器可以基于各线段类型,确定对应各图像线段的各控制点以及获取各控制点的坐标数据。
79.进一步,服务器可以基于获取到的控制点的坐标数据,确定曲面图形的中心点坐标。
80.具体地,服务器可以对各控制点的坐标数据进行求和,然后求平均值,以得到曲面图形的中心点的中心点坐标。
81.在本实施例中,曲面图形为三维模型,各控制点的坐标均为三维坐标,则服务器可以分别对各维度的坐标数据进行求和,然后求平均值,以得到曲面图形的中心点坐标。
82.上述实施例中,通过确定待显示的曲面图形的各图形线段,然后确定各图形线段的各控制点,并获取各控制点的坐标数据,进而基于各控制点的坐标数据,确定曲面图形的中心点坐标,图形线段的控制点即反映了曲面图形的特性,通过对控制点坐标即可准确确定曲面图形的中心点,从而,可以以点代替线,进而代替曲面图形进行求解,可以简化求解过程,提升处理效率。
83.在其中一个实施例中,利用中心点坐标,构建对应曲面图形的协方差矩阵,可以包括:基于中心点坐标以及各控制点的坐标数据,确定各控制点与中心点的坐标差;根据各坐标差,构建对应曲面图形的协方差矩阵。
84.在本实施例中,服务器在获取到中心点坐标以及各个控制点的坐标数据之后,可以将控制点的坐标数据分别与中心点坐标进行求差,得到各控制点的控制点坐标与中心点坐标的坐标差,即得到各控制点的三维坐标与中心点的三维坐标差。
85.进一步,服务器可以基于得到的坐标差,构建对应曲面图形的协方差矩阵。
86.在其中一个实施例中,根据协方差矩阵,确定曲面图形的主方向以及法向量,可以包括:对协方差矩阵进行求解,得到协方差矩阵的多个特征值以及对应各特征值的各特征向量;确定满足第一预设条件的特征值所对应的特征向量为第一特征向量,并确定第一特征向量所对应的方向为曲面图形的主方向;确定满足第二预设条件的特征值所对应的特征向量维第二特征向量,并确定第二特征向量为曲面图形的法向量。
87.在本实施例中,服务器在构建得到对应曲面图形的协方差矩阵之后,可以通过奇异值分解法,对协方差矩阵进行求解,以得到对应于协方差矩阵的多个特征值以及特征向量。
88.例如,构建的协方差矩阵表示为h,则服务器可以通过如下公式(1)求解特征向量。
89.[u s v]=svd(h)
ꢀꢀꢀꢀ
(1)
[0090]
其中,u,s,v分别表示对应协方差矩阵h的各特征维度向量。具体分解方式以下将进行详细的说明。
[0091]
在本实施例中,协方差矩阵h为2*3的矩阵,定义矩阵为h=usv
t
。
[0092]
其中,u为2*2的矩阵;s为2*3的矩阵,除了主对角线上的元素以外全为0,主对角线上的每个元素都称为奇异值;v是一个3*3的矩阵。u和v都是酉矩阵,即满足v
t
v=i,u
t
u=i。
[0093]
进一步,可以将h的转置与h做矩阵乘法,那么会得到3*3的方阵h
t
h。
[0094]
进一步,对方阵h
t
h进行特征分解,方阵h
t
h的特征值以及特征向量满足如下公式(2)。
[0095]
(h
t
h)vi=λiviꢀꢀꢀꢀ
(2)
[0096]
基于上述公式(2),即可以得到对应方阵h
t
h的3个特征向量v。
[0097]
在本实施例中,服务器可以将方阵h
t
h的3个特征向量组成一个3*3的矩阵v,即得到公式(1)中的矩阵v。
[0098]
进一步,服务器可以将h和h的转置做矩阵乘法,得到2*2的方阵hh
t
。
[0099]
在本实施例中,服务器可以对方阵进hh
t
进行特征分解,得到对应的特征值以及特征向量,看具体可参见如下公式(3)。
[0100]
(hh
t
)ui=λiuiꢀꢀꢀꢀ
(3)
[0101]
基于上述公式(3),可以得到对应方阵hh
t
的2个特征向量u。
[0102]
在本实施例中,服务器可以将方阵hh
t
的2个特征向量组成一个2*2的矩阵u,即得到公式(1)中的矩阵u。
[0103]
进一步,服务器可以将矩阵u和v代入上述公式(1)中,可以求得的对应的s。
[0104]
在本实施例中,当服务器在确定对应协方差矩阵的特征值以及特征向量之后,可以对求解的特征值进行排序,并确定满足第一预设条件的特征值所对应的特征向量为第一特征向量,并确定第一特征向量所对应的方向为曲面图形的主方向。
[0105]
同理,服务器可以确定满足第一预设条件的特征值所对应的特征向量为第二特征向量,并确定第二特征向量为曲面图形的法向量。
[0106]
在其中一个实施例中,第一预设条件为特征值最大,第二预设条件为特征值最小。本领域技术人员可以理解的是,此处仅为举例说明,在其他实施例中,第一预设条件以及第二预设条件也可以是其他的条件,本技术对此不作限制。
[0107]
在其中一个实施例中,基于主方向、法向量以及目标平面,并对曲面图形进行显示,可以包括:确定目标平面的法向量以及主方向;基于曲面图形的法向量以及目标平面的法向量,确定法向量差;根据法向量差,将曲面图形旋转至法向量与目标平面的法向量一致;将旋转后的曲面图形的主方向旋转至与目标平面的主方向一致。
[0108]
在本实施例中,服务器在确定目标平面之后,可以获取到目标平面的法相量,例如,当目标平面为xoy平面时,则目标平面的法相量为(0,0,1)。
[0109]
同理,服务器可以确定目标平面的主方向。其中,主方向可以是指坐标平面的坐标系的朝向,例如,对于xoy平面,x轴和y轴的正向朝向即为目标平面的主方向。
[0110]
进一步,服务器可以基于目标平面的法相量以及图面图形的法向量,求解法向量差。
[0111]
在本实施例中,服务器可以根据求解得到的法向量差,对屋面图像进行旋转,将曲面图形旋转至法向量与目标平面的法向量方向一致,例如,旋转后可以如图5所示。
[0112]
在本实施例中,以xoy平面为目标平面为例,目标平面的主方向指xoy平面的坐标轴方向。服务器可以先确定曲面图形的主方向,再将曲面图形旋转到主轴和横向x轴重合的角度。
[0113]
在本实施例中,服务器可以基于曲面图形的主方向以及目标平面的主方向,对旋转后的曲面图形进行二次旋转,以将旋转后的曲面图形旋转至与目标平面的主方向一致,即将一次法向量方向旋转后的曲面图形转正,得到最终显示图像。例如,可以参考图4所示。
[0114]
在其中一个实施例中,上述方法还可以包括:获取目标平面的平面中心坐标;基于平面中心坐标以及曲面图形的中心点坐标,确定中心位置差;根据中心位置差,将曲面图形平移至目标平面的中心位置。
[0115]
如前所述,目标平面可以是与终端显示界面的显示尺寸一致。
[0116]
在本实施例中,服务器在对曲面图形进行旋转之前,还可以获取目标平面的平面中心坐标,即画布平面的中心点坐标。
[0117]
进一步,服务器可以根据平面中心坐标以及曲面图形的中心点坐标,确定中心位置差。
[0118]
进一步,服务器可以根据重点位置差,将曲面图形的中心点平移至目标平面的中心位置,即将曲面图形平移至目标平面的中心位置。
[0119]
在其中一个实施例中,基于主方向、法向量以及目标平面,对曲面图形进行显示,可以包括:基于主方向、法向量以及目标平面,对平移至目标平面的中心位置的曲面图形进行显示。
[0120]
在本实施例中,服务器可以基于主方向、法向量以及目标平面,对平移至目标平面的中心位置的曲面图形进行法向量的旋转以及主方向的旋转,以得到正向居中显示的曲面图形。
[0121]
在其中一个实施例中,服务器还可以基于目标平面的尺寸大小,对正向居中显示的曲面图形进行放大缩小,以使得最终显示的曲面图形刚好填充满目标平面,可以提升用户体验。
[0122]
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0123]
在一个实施例中,如图6所示,提供了一种曲面图形显示装置,包括:图形数据获取模块100、中心点坐标确定模块200、协方差矩阵构建模块300、主方向以及法向量确定模块400、目标平面确定模块500以及显示模块600,其中:
[0124]
图形数据获取模块100,用于获取待显示的曲面图形的图形数据。
[0125]
中心点坐标确定模块200,用于基于图形数据,确定曲面图形的中心点坐标。
[0126]
协方差矩阵构建模块300,用于利用中心点坐标,构建对应曲面图形的协方差矩阵。
[0127]
主方向以及法向量确定模块400,用于根据协方差矩阵,确定曲面图形的主方向以及法向量。
[0128]
目标平面确定模块500,用于确定对曲面图形进行显示的目标平面。
[0129]
显示模块600,用于基于目标平面、主方向以及法向量,对曲面图形进行显示。
[0130]
在其中一个实施例中,中心点坐标确定模块200,可以包括:
[0131]
图像线段确定子模块,用于基于图形数据,确定待显示的曲面图形的各图形线段。
[0132]
坐标数据确定子模块,用于确定各图形线段的各控制点,并获取各控制点的坐标数据。
[0133]
中心点坐标确定子模块,用于基于各控制点的坐标数据,确定曲面图形的中心点坐标。
[0134]
在其中一个实施例中,协方差矩阵构建模块300,可以包括:
[0135]
坐标差确定子模块,用于基于中心点坐标以及各控制点的坐标数据,确定各控制点的控制点坐标与中心点坐标的坐标差。
[0136]
协方差矩阵构建子模块,用于根据各坐标差,构建对应曲面图形的协方差矩阵。
[0137]
在其中一个实施例中,主方向以及法向量确定模块400,可以包括:
[0138]
特征值以及特征向量确定子模块,用于对协方差矩阵进行求解,得到协方差矩阵的多个特征值以及对应各特征值的各特征向量。
[0139]
主方向确定子模块,用于确定满足第一预设条件的特征值所对应的特征向量为第一特征向量,并确定第一特征向量所对应的方向为曲面图形的主方向。
[0140]
法向量确定子模块,用于确定满足第二预设条件的特征值所对应的特征向量维第二特征向量,并确定第二特征向量为曲面图形的法向量。
[0141]
在其中一个实施例中,显示模块600,可以包括:
[0142]
法向量以及主方向确定子模块,用于确定目标平面的法向量以及主方向。
[0143]
法向量差确定子模块,用于基于曲面图形的法向量以及目标平面的法向量,确定法向量差。
[0144]
第一旋转子模块,用于根据法向量差,将曲面图形旋转至法向量与目标平面的法向量一致。
[0145]
第二旋转子模块,用于将旋转后的曲面图形的主方向旋转至与目标平面的主方向一致。
[0146]
在其中一个实施例中,上述装置还可以包括:
[0147]
平面中心坐标获取模块,用于获取目标平面的平面中心坐标。
[0148]
中心位置差确定模块,用于基于平面中心坐标以及曲面图形的中心点坐标,确定中心位置差。
[0149]
平移模块,用于根据中心位置差,将曲面图形平移至目标平面的中心位置。
[0150]
在其中一个实施例中,显示模块600用于基于主方向、法向量以及目标平面,对平移至目标平面的中心位置的曲面图形进行显示。
[0151]
关于曲面图形显示装置的具体限定可以参见上文中对于曲面图形显示方法的限定,在此不再赘述。上述曲面图形显示装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0152]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储图形数据、中心点坐标、协方差矩阵、主方向以及法向量等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种曲面图形显示方法。
[0153]
本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0154]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取待显示的曲面图形的图形数据:基于图形数据,确定曲面图形的中心点坐标;利用中心点坐标,构建对应曲面图形的协方差矩阵;根据协方差矩阵,确定曲面图形的主方向以及法向量;确定对曲面图形进行显示的目标平面;基于目标平面、主方向以及法向量,对曲面图形进行显示。
[0155]
在其中一个实施例中,处理器执行计算机程序时实现基于图形数据,确定曲面图形的中心点坐标,可以包括:基于图形数据,确定待显示的曲面图形的各图形线段;确定各图形线段的各控制点,并获取各控制点的坐标数据;基于各控制点的坐标数据,确定曲面图形的中心点坐标。
[0156]
在其中一个实施例中,处理器执行计算机程序时实现利用中心点坐标,构建对应曲面图形的协方差矩阵,可以包括:基于中心点坐标以及各控制点的坐标数据,确定各控制点的控制点坐标与中心点坐标的坐标差;根据各坐标差,构建对应曲面图形的协方差矩阵。
[0157]
在其中一个实施例中,处理器执行计算机程序时实现根据协方差矩阵,确定曲面图形的主方向以及法向量,可以包括:对协方差矩阵进行求解,得到协方差矩阵的多个特征值以及对应各特征值的各特征向量;确定满足第一预设条件的特征值所对应的特征向量为第一特征向量,并确定第一特征向量所对应的方向为曲面图形的主方向;确定满足第二预设条件的特征值所对应的特征向量维第二特征向量,并确定第二特征向量为曲面图形的法向量。
[0158]
在其中一个实施例中,处理器执行计算机程序时实现基于主方向、法向量以及目标平面,并对曲面图形进行显示,可以包括:确定目标平面的法向量以及主方向;基于曲面图形的法向量以及目标平面的法向量,确定法向量差;根据法向量差,将曲面图形旋转至法向量与目标平面的法向量一致;将旋转后的曲面图形的主方向旋转至与目标平面的主方向一致。
[0159]
在其中一个实施例中,处理器执行计算机程序时还可以实现以下步骤:获取目标平面的平面中心坐标;基于平面中心坐标以及曲面图形的中心点坐标,确定中心位置差;根据中心位置差,将曲面图形平移至目标平面的中心位置。
[0160]
在其中一个实施例中,处理器执行计算机程序时实现基于主方向、法向量以及目标平面,对曲面图形进行显示,可以包括:基于主方向、法向量以及目标平面,对平移至目标平面的中心位置的曲面图形进行显示。
[0161]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待显示的曲面图形的图形数据:基于图形数据,确定曲面图形的中心点坐标;利用中心点坐标,构建对应曲面图形的协方差矩阵;根据协方差矩阵,确定曲面图形的主方向以及法向量;确定对曲面图形进行显示的目标平面;基于目标平面、主方向以及法向量,对曲面图形进行显示。
[0162]
在其中一个实施例中,计算机程序被处理器执行时实现基于图形数据,确定曲面图形的中心点坐标,可以包括:基于图形数据,确定待显示的曲面图形的各图形线段;确定各图形线段的各控制点,并获取各控制点的坐标数据;基于各控制点的坐标数据,确定曲面图形的中心点坐标。
[0163]
在其中一个实施例中,计算机程序被处理器执行时实现利用中心点坐标,构建对
应曲面图形的协方差矩阵,可以包括:基于中心点坐标以及各控制点的坐标数据,确定各控制点的控制点坐标与中心点坐标的坐标差;根据各坐标差,构建对应曲面图形的协方差矩阵。
[0164]
在其中一个实施例中,计算机程序被处理器执行时实现根据协方差矩阵,确定曲面图形的主方向以及法向量,可以包括:对协方差矩阵进行求解,得到协方差矩阵的多个特征值以及对应各特征值的各特征向量;确定满足第一预设条件的特征值所对应的特征向量为第一特征向量,并确定第一特征向量所对应的方向为曲面图形的主方向;确定满足第二预设条件的特征值所对应的特征向量维第二特征向量,并确定第二特征向量为曲面图形的法向量。
[0165]
在其中一个实施例中,计算机程序被处理器执行时实现基于主方向、法向量以及目标平面,并对曲面图形进行显示,可以包括:确定目标平面的法向量以及主方向;基于曲面图形的法向量以及目标平面的法向量,确定法向量差;根据法向量差,将曲面图形旋转至法向量与目标平面的法向量一致;基于主方向以及目标平面的坐标朝向,将旋转后的曲面图形的主方向旋转至与目标平面的主方向一致。
[0166]
在其中一个实施例中,计算机程序被处理器执行时还可以实现以下步骤:获取目标平面的平面中心坐标;基于平面中心坐标以及曲面图形的中心点坐标,确定中心位置差;根据中心位置差,将曲面图形平移至目标平面的中心位置。
[0167]
在其中一个实施例中,计算机程序被处理器执行时实现基于主方向、法向量以及目标平面,对曲面图形进行显示,可以包括:基于主方向、法向量以及目标平面,对平移至目标平面的中心位置的曲面图形进行显示。
[0168]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0169]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0170]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。