一种三维CAD模型快速建立方法与流程

文档序号:17741413发布日期:2019-05-24 20:09阅读:361来源:国知局
一种三维CAD模型快速建立方法与流程

本发明属于计算机技术领域,具体而言,本发明涉及一种三维cad模型快速建立方法。



背景技术:

计算机辅助设计(cad,computeraideddesign)指利用计算机及其图形设备帮助设计人员进行设计工作。在设计中通常要用计算机对不同方案进行大量的计算、分析和比较,以决定最优方案;各种设计信息,不论是数字的、文字的或图形的,都能存放在计算机的内存或外存里,并能快速地检索;设计人员通常用草图开始设计,将草图变为工作图的繁重工作可以交给计算机完成;由计算机自动产生的设计结果,可以快速作出图形,使设计人员及时对设计做出判断和修改;利用计算机可以进行与图形的编辑、放大、缩小、平移、复制和旋转等有关的图形数据加工工作。autocad软件是由美国欧特克有限公司(autodesk)出品的一款自动计算机辅助设计软件,可以用于绘制二维制图和基本三维设计,通过它无需懂得编程,即可自动制图,因此它在全球广泛使用,可以用于土木建筑、装饰装潢、工业制图、工程制图、电子工业、服装加工等多方面领域。

但是,通常二维制图必须使用多张图纸来描述同一个物体,在维护数据一致性等方面存在较大困难,修改图纸的步骤繁复、工作量大、出错几率高。而autocad的三维设计功能难以快速、准确地建立三维cad模型,无法有效解决二维制图存在的缺陷。

鉴于此,目前亟待提供一种三维cad模型快速建立方法,克服传统二维制图过程中图纸修改困难、出错概率高的缺陷,便于设计人员快速、准确地建立三维cad模型。



技术实现要素:

本发明提供了一种三维cad模型快速建立方法,以解决传统二维制图过程中图纸修改困难、出错概率高的缺陷,便于设计人员快速、准确地建立三维cad模型。

为了解决上述问题,本发明提供了一种三维cad模型快速建立方法,包括如下步骤:

s1、绘制模型轮廓线:确定模型顶点,在多个所述顶点间连成边线,并记录所述顶点的位置;

s2、存储模型轮廓数据:存储模型的所述顶点和所述边线的相邻关系;

s3、更新已有表面:根据所述边线更新模型表面的状态;

s4、生成新表面:通过模型的所述顶点和所述边线的相邻关系,生成模型的表面并进行绘制,即得三维cad模型。

优选地,所述的三维cad模型快速建立方法中,步骤s1具体包括如下步骤:

s101、确定绘制起点,作为第一顶点;

s102、确定下一顶点,作为第二顶点,并在所述第一顶点与所述第二顶点间连成一条边线;

s103、确定下一顶点,作为第三顶点,并将所述第二顶点与所述第三顶点间连成一条边线;以此类推,重复连接边线,直到下一顶点为已有顶点,结束得到模型轮廓线。

优选地,所述的三维cad模型快速建立方法中,步骤s2具体包括如下步骤:

s201、识别出步骤s103中得到的模型轮廓线的所述边线与模型已有边线的交点,记录为新顶点;

s202、将步骤s201中得到的模型已有边线在所述新顶点处断开为两条边线,修改所述新顶点和所述模型已有边线的相邻关系;

s203、将待存储的所述边线在步骤s201中识别出的所述新顶点处断开为若干条新边线;

s204、存储步骤s203中得到的所述新边线和所述新顶点的相邻关系。

优选地,所述的三维cad模型快速建立方法中,步骤s3具体包括如下步骤:

s301、识别出模型的包含步骤s204中的所述新边线的已有表面;

s302、判断步骤s301中得到的已有表面与所述新边线的包含关系;

s303、根据步骤s302的包含关系,更新已有表面。

优选地,步骤s302中的包含关系为所述新边线的端点在所述已有表面的位置;所述包含关系包括:所述新边线的端点在所述已有表面的面内、所述新边线的端点在所述已有表面的外环上、所述新边线的端点在所述已有表面的内环上。

优选地,所述的三维cad模型快速建立方法中,步骤s303具体如下:

以<0,0>表示所述新边线的端点在所述已有表面的面内;以<1,0>表示所述新边线的端点在所述已有表面的外环上;以<2,x>表示所述新边线的端点在所述已有表面的第x个内环上;以<2,y>表示所述新边线的端点在所述已有表面的第y个内环上,根据表示的结果,确定所述新边线的更新模型表面的状态。

优选地,所述的三维cad模型快速建立方法中,步骤s303具体如下:

当所述新边线的两个端点均在所述已有表面的面内时,表示为(<0,0>+<0,0>),将所述新边线添加为待更新面的一个新内环;

当所述新边线的一个端点在所述已有表面的面内,另一个端点在所述已有表面的外环上时,表示为(<0,0>+<1,0>),将所述新边线添加为待更新面的外环中;

当所述新边线的一个端点在所述已有表面的面内,另一个端点在所述已有表面的内环上时,表示为(<0,0>+<2,x>),将所述新边线添加为待更新面的第x个内环中;

当所述新边线的两个端点均在所述已有表面的外环上时,表示为(<1,0>+<1,0>),将所述已有表面的外环分割为两个环,一个环设为待更新面的外环,另一个环作为外环创建一个新表面,再将待更新面中位于所述新表面内部的内环添加为新表面的内环,并将其从待更新面的内环列表中移除;

当所述新边线的一个端点在所述已有表面的外环上,另一个端点在所述已有表面的内环上时,表示为(<1,0>+<2,x>),将待更新面的第x个内环合并进外环中,并将其从待更新面的内环列表中移除;

当所述新边线的两个端点在所述已有表面的同一个内环上时,表示为(<2,x>+<2,x>),将待更新面的第x个内环分割为两个环,一个环设为待更新面的第x个内环,另一个环作为外环创建一个新表面;

当所述新边线的两个端点在所述已有表面的不同内环上时,表示为(<2,x>+<2,y>),将待更新面的第x个内环合并进第y个内环中,并将第x个内环从待更新面的内环列表中移除。

优选地,所述的三维cad模型快速建立方法中,步骤s4具体包括如下步骤:

s401、设定起始的所述边线;

s402、确定与起始的所述边线的一个端点相连的边线;

s403、从步骤s402中找到的边线中任选一条边线,计算其与起始的所述边线同属的平面;

s404、从起始的所述边线出发,在步骤s403中计算出的平面内查找相连的所述边线;

s405、将步骤s404中查找的所有边线分别作为边界生成面,生成模型的新表面;

s406、从步骤s402中找到的边线中删去所有在步骤s403中计算出的平面上的所述边线,然后在剩下的所述边线中任选一条边线,重复步骤s404到步骤s406,直到不存在所述边线可选为止,即得三维cad模型。

与现有技术相比,本发明的优点和有益效果在于:

本发明所述的三维cad模型快速建立方法,通过使用一种三维cad模型快速建立方法,可以快速、准确地建立三维cad模型,从而解决了使用多张二维图纸描述同一个物体带来的数据一致性问题,避免因遗漏等原因造成图纸的错误。与现有设计行业图纸修改流程相比,例如修改某张图纸、查找描述同一位置的其他图纸、修改描述同一位置的图纸,操作更为便捷,能够快速、准确地建立三维cad模型。

另外,从三维cad模型可以方便地导出二维图纸,可以帮助设计人员大大减少使用多张图纸描述同一物体的重复劳动。

附图说明

图1为本发明实施例中的三维cad模型快速建立方法的流程示意图;

图2为本发明实施例中的三维cad模型快速建立方法的步骤s1的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本实施例中的三维cad模型快速建立方法,如图1所示,包括如下步骤:

s1、绘制模型轮廓线:确定模型顶点,在多个所述顶点间连成边线,并记录所述顶点的位置;

s2、存储模型轮廓数据:存储模型的所述顶点和所述边线的相邻关系;

s3、更新已有表面:根据所述边线更新模型表面的状态;

s4、生成新表面:通过模型的所述顶点和所述边线的相邻关系,生成模型的表面并进行绘制,即得三维cad模型。

作为本实施例的优选实现方式,所述的三维cad模型快速建立方法具体包括如下步骤:

s1、绘制模型轮廓线,如图2所示,包括如下步骤:

s101、确定绘制起点,作为第一顶点;

s102、确定下一顶点,作为第二顶点,并在所述第一顶点与所述第二顶点间连成一条边线;

s103、确定下一顶点,作为第三顶点,并将所述第二顶点与所述第三顶点间连成一条边线;以此类推,重复连接边线,直到下一顶点为已有顶点,结束得到模型轮廓线。

s2、存储模型轮廓数据

s201、识别出步骤s103中得到的模型轮廓线的所述边线与模型已有边线的交点,记录为新顶点;

s202、将步骤s201中得到的模型已有边线在所述新顶点处断开为两条边线,修改所述新顶点和所述模型已有边线的相邻关系;

s203、将待存储的所述边线在步骤s201中识别出的所述新顶点处断开为若干条新边线;

s204、存储步骤s203中得到的所述新边线和所述新顶点的相邻关系。

s3、更新已有表面

s301、识别出模型的包含步骤s204中的所述新边线的已有表面;

s302、判断步骤s301中得到的已有表面与所述新边线的包含关系;需要说明的是,本实施例中,包含关系为所述新边线的端点在所述已有表面的位置;所述包含关系包括:所述新边线的端点在所述已有表面的面内、所述新边线的端点在所述已有表面的外环上、所述新边线的端点在所述已有表面的内环上。

s303、根据步骤s302的包含关系,更新已有表面。具体如下:

以<0,0>表示所述新边线的端点在所述已有表面的面内;以<1,0>表示所述新边线的端点在所述已有表面的外环上;以<2,x>表示所述新边线的端点在所述已有表面的第x个内环上;以<2,y>表示所述新边线的端点在所述已有表面的第y个内环上,根据表示的结果,确定所述新边线的更新模型表面的状态。

当所述新边线的两个端点均在所述已有表面的面内时,表示为(<0,0>+<0,0>),将所述新边线添加为待更新面的一个新内环;

当所述新边线的一个端点在所述已有表面的面内,另一个端点在所述已有表面的外环上时,表示为(<0,0>+<1,0>),将所述新边线添加为待更新面的外环中;

当所述新边线的一个端点在所述已有表面的面内,另一个端点在所述已有表面的内环上时,表示为(<0,0>+<2,x>),将所述新边线添加为待更新面的第x个内环中;

当所述新边线的两个端点均在所述已有表面的外环上时,表示为(<1,0>+<1,0>),将所述已有表面的外环分割为两个环,一个环设为待更新面的外环,另一个环作为外环创建一个新表面,再将待更新面中位于所述新表面内部的内环添加为新表面的内环,并将其从待更新面的内环列表中移除;

当所述新边线的一个端点在所述已有表面的外环上,另一个端点在所述已有表面的内环上时,表示为(<1,0>+<2,x>),将待更新面的第x个内环合并进外环中,并将其从待更新面的内环列表中移除;

当所述新边线的两个端点在所述已有表面的同一个内环上时,表示为(<2,x>+<2,x>),将待更新面的第x个内环分割为两个环,一个环设为待更新面的第x个内环,另一个环作为外环创建一个新表面;

当所述新边线的两个端点在所述已有表面的不同内环上时,表示为(<2,x>+<2,y>),将待更新面的第x个内环合并进第y个内环中,并将第x个内环从待更新面的内环列表中移除。

s4、新表面自动生成

s401、设定起始的所述边线;

s402、确定与起始的所述边线的一个端点相连的边线;

s403、从步骤s402中找到的边线中任选一条边线,计算其与起始的所述边线同属的平面;

s404、从起始的所述边线出发,在步骤s403中计算出的平面内查找相连的所述边线;

s405、将步骤s404中查找的所有边线分别作为边界生成面,生成模型的新表面;

s406、从步骤s402中找到的边线中删去所有在步骤s403中计算出的平面上的所述边线,然后在剩下的所述边线中任选一条边线,重复步骤s404到步骤s406,直到不存在所述边线可选为止,即得三维cad模型。

作为本实施例可替换的实现方式,本领域技术人员还可按照如下方法进行三维cad模型的快速建立:依次确定模型顶点、绘制边线、生成表面,然后根据用户输入判断绘制是否完成,若已完成,则生成三维cad模型的渲染结果,若没有,返回第一步继续绘制。

由技术常识可知,本发明可以通过其它的不脱离其精神实质或必要特征的实施方案来实现。因此,上述公开的实施方案,就各方面而言,都只是举例说明,并不是仅有的。所有在本发明范围内或在等同于本发明的范围内的改变均被本发明包含。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1