本发明属于cad直接编辑,尤其涉及保持柱状体特征的三维cad模型直接编辑方法及系统。
背景技术:
1、本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
2、三维cad在机械产品设计中广泛应用,基于特征的建模在cad中发挥了巨大作用,是三维cad的典型建模方法。它们使设计者能够创建或编辑高级设计元素,即特征,如拉伸、扫掠和圆角等。特征具有丰富的工程和制造语义,以支持设计者对模型进行高效的编辑。然而基于特征的建模有其自身的缺点,如高复杂性和顺序依赖性,这可能会阻碍建模的灵活性;此外,特征信息复杂多样,由于缺少统一的、中性的描述形式,特征建模往往依赖特定的cad软件。
3、相比之下,直接编辑技术是一种新兴技术;与特征建模相比,直接编辑是一种轻量级的编辑方式,模型的直接编辑基于通用的、仅包含拓扑和几何信息的模型(如b-rep模型),不依赖特定cad软件以及模型建模的历史信息。直接编辑对普通用户来说是友好的,因为用户可以很容易地操纵几何元素来编辑本地模型,也可以直接拖动或旋转几何元素来编辑模型,而不需要理解特征模型中复杂的设计语义,其编辑效率和灵活性引起了业界的极大关注。
4、近年在直接编辑技术领域,一些将直接编辑转换为对体积进行操作的方法被提出,它们通过体积分解将模型分解为简单的体积,修改分解后的简单体来编辑模型;一些将直接编辑操作平滑地转换为修改特征模型操作的方法被提出,在直接编辑和特征建模操作之前搭建桥梁,将直接编辑映射为特征建模操作。
5、在工业界,直接编辑技术已经在一些商业cad系统中得到应用,然而大多数工业软件并不支持对顶点和边进行编辑,这主要是因为其复杂性高、编辑意图难以理解;并且,在实践中发现,使用某些工业软件对模型面进行编辑时,只能沿目标平面法线方向进行推拉;因此,现有的cad模型直接编辑方案存在诸多限制,导致编辑效率不高、对用户不够友好。
技术实现思路
1、为克服上述现有技术的不足,本发明提供了保持柱状体特征的三维cad模型直接编辑方法及系统,提供对于cad模型的顶点、边、面等底层几何元素的编辑语义,采用以保持柱状体特征为基本约束的求解机制,实现符合编辑语义的高效修改。
2、为实现上述目的,本发明的一个或多个实施例提供了如下技术方案:
3、本发明第一方面提供了保持柱状体特征的三维cad模型直接编辑方法。
4、保持柱状体特征的三维cad模型直接编辑方法,包括:
5、获取待编辑的三维cad模型,基于模型中顶点、边、面三种几何元素的邻接关系,构建半边结构;
6、基于半边结构,根据用户选择的目标几何元素和期望进行的编辑操作,求解出位置发生变化的几何元素的新位置;
7、对求解结果进行验证,验证通过后,更新三维cad模型;
8、其中,所述编辑操作是基于位置已知的几何元素,识别出位置发生变化的几何元素,采用以保持柱状体特征为基本约束的求解机制得到几何元素的新位置。
9、进一步的,所述柱状体特征,对于任意一个由任意个平面构成的模型m,若存在这样的平面s∈m,使得m中至多只有一个平面与s不相邻,则称模型m是柱状体特征;
10、与s相邻的所有平面为柱面,与s不相邻的唯一一个平面为非柱面。
11、进一步的,所述编辑操作包括四种方式,分别针对四种约束,具体为:
12、保持目标非柱面的形状大小不变的面编辑操作、
13、保持目标边在其非柱面所在平面范围内的边编辑操作、
14、保持顶点在其所在非柱面所在平面范围内平移操作、
15、保持顶点在其所在柱面交线的直线范围内平移操作。
16、进一步的,所述保持目标非柱面的形状大小不变的面编辑操作,具体为:
17、计算出目标非柱面平移后的位置,指定其相对的另一个非柱面上的距离目标面最远的顶点的位置不变且另一个非柱面的法向不变,基于三点确定一个平面,采用求交确定顶点位置的方式,采取传播的策略求解,逐个更新每一个柱面。
18、进一步的,所述保持目标边在其非柱面所在平面范围内的边编辑操作,具体为:
19、计算出目标边平移后的位置,使用插值的方式确定一个平衡点,用平衡点和目标边的两个顶点三点所在位置确定一个平衡面,使用这个平衡面与原模型求交得到对应点和边的新位置。
20、进一步的,所述保持顶点在其所在非柱面所在平面范围内平移操作,具体为:
21、计算出目标顶点平移后的位置,用平移后的位置与其所在非柱面上的相邻点和其所在两个柱面上的对点创建两个新平面,用这两个新平面更新模型。
22、进一步的,所述保持顶点在其所在柱面交线的直线范围内平移操作,具体为:
23、计算出目标顶点平移后的位置,用平移后的位置与其所在非柱面上的相邻点创建一个新平面,用这个新平面与原模型求交更新模型。
24、本发明第二方面提供了保持柱状体特征的三维cad模型直接编辑系统。
25、保持柱状体特征的三维cad模型直接编辑系统,预处理模块、编辑求解模块和验证更新模块:
26、预处理模块,被配置为:获取待编辑的三维cad模型,基于模型中顶点、边、面三种几何元素的邻接关系,构建半边结构;
27、编辑求解模块,被配置为:基于半边结构,根据用户选择的目标几何元素和期望进行的编辑操作,求解出位置发生变化的几何元素的新位置;
28、验证更新模块,被配置为:对求解结果进行验证,验证通过后,更新三维cad模型;
29、其中,所述编辑操作是基于位置已知的几何元素,识别出位置发生变化的几何元素,采用以保持柱状体特征为基本约束的求解机制得到几何元素的新位置。
30、本发明第三方面提供了计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如本发明第一方面所述的保持柱状体特征的三维cad模型直接编辑方法中的步骤。
31、本发明第四方面提供了电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本发明第一方面所述的保持柱状体特征的三维cad模型直接编辑方法中的步骤。
32、以上一个或多个技术方案存在以下有益效果:
33、本发明提供了一种基于边界表示的柱状体特征的表示方法,将点、边和面的直接编辑操作映射为对特征面元素的编辑。
34、本发明设计了一种面向柱状体特征的,针对于柱状体特征的非柱面,保持目标非柱面的形状大小不变的直接编辑算法,打破了直接编辑模型平面时只能沿法向进行推拉的约束,实现了直接编辑平面的自由移动。
35、本发明设计了一种面向柱状体特征的,针对于柱状体特征非柱面的边或顶点,保持目标边或顶点在其非柱面所在平面范围内且不改变模型拓扑结构的情况下自由移动,实现了对边和顶点进行直接编辑的需求。
36、此外,本发明通过约束求解判定编辑操作的有效性,求解需要改动的相关点、边和面,对模型更改符合用户意图。
37、本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。