CN102436674A - 用于创建模型数据的方法及系统 - Google Patents
用于创建模型数据的方法及系统 Download PDFInfo
- Publication number
- CN102436674A CN102436674A CN2010105061802A CN201010506180A CN102436674A CN 102436674 A CN102436674 A CN 102436674A CN 2010105061802 A CN2010105061802 A CN 2010105061802A CN 201010506180 A CN201010506180 A CN 201010506180A CN 102436674 A CN102436674 A CN 102436674A
- Authority
- CN
- China
- Prior art keywords
- summit
- model
- thickness
- model data
- initial
- 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 48
- 230000004044 response Effects 0.000 claims description 16
- 230000008676 import Effects 0.000 claims description 11
- 238000005457 optimization Methods 0.000 claims description 10
- 230000001105 regulatory effect Effects 0.000 abstract 3
- 230000006870 function Effects 0.000 description 8
- 239000010410 layer Substances 0.000 description 8
- 238000000465 moulding Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 239000002356 single layer Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供一种用于创建模型数据的方法及其系统。该方法包括:获取基于厚度模型的初始模型数据;响应于用户输入部分顶点的厚度值,分别调整所述初始模型数据的部分顶点的厚度;响应于用户输入部分顶点的位置值,分别调整所述初始模型数据的部分顶点的位置;以及基于所述初始模型数据以及调整后的部分顶点,获得基于厚度模型的模型数据。通过采用本发明的方法或者系统,将方便用户编辑模型数据而且节省存储空间。
Description
技术领域
本发明总体上涉及信息处理技术领域,特别地,涉及一种用于创建模型数据的方法及系统
背景技术
在表现物体的各种形体的应用中,据统计,类似于衣服、贝壳、电脑椅、花瓶、三维地图等“壳体”的表现要占50%以上。目前生成3D模型数据的方法有基于传统的网格模型的方法,有基于参数曲面的连续表示方法(比如Bezier曲面,样条曲面),细分曲面,隐函数曲面等,还有基于实体模型的方法。对于上述“壳体”的表现方法,例如采用传统的三角面片的方式,需要用上下两层的面片,才能来表示这些有厚度的模型。两层之间没有约束关系,调整形状很困难,操作一层的时候,另一层不会做自动的相应改变,在这两层之间我们必须记录一个正确的对应关系,在模型形状需要修改时,必须对两层分别做一次修改,这对用户而言,显然很不方便,另一方面这需要占用大量的存储空间。如果采用实体模型,则会为建模和可视化过程带来很大的计算复杂度。同时,对于多数应用来说,实体模型的表示包含了相当一部分多余的信息(如模型的内部数据),这显然带来很大的存储负担。
因此需要一种用于创建模型数据的方法及系统,可以方便用户创建或者存储模型数据。
发明内容
本发明提供一种用于创建模型数据的方法及系统。
本发明一方面提供一种用于创建模型数据的方法,包括:获取基于厚度模型的初始模型数据;响应于用户输入所述初始模型数据的至少部分顶点的厚度值,分别调整所述至少部分顶点的厚度;响应于用户输入所述初始模型数据的至少部分顶点的位置值,分别调整所述至少部分顶点的位置;以及基于所述初始模型数据以及调整后的所述至少部分顶点,获得基于厚度模型的模型数据。
本发明另一方面提供一种用于创建模型数据的系统,包括:初始模型数据获取装置,用于获取基于厚度模型的初始模型数据;顶点厚度调整装置,用于响应于用户输入所述初始模型数据的至少部分顶点的厚度值,分别调整所述至少部分顶点的厚度;顶点位置调整装置,响应于用户输入所述初始模型数据的至少部分顶点的位置值,分别调整所述部分顶点的位置;以及模型数据生成装置,用于基于所述初始模型数据以及调整后的所述至少部分顶点,获得基于厚度模型的模型数据。
本发明另一方面还提供一种厚度模型,其中该厚度模型包括顶点三维空间坐标以及顶点厚度,并且在基于厚度模型的模型数据文件中指定所述顶点的厚度方向。
本发明的基于厚度模型的模型数据生成方法或系统使得基于厚度模型的模型数据非常容易被维护和修改,用户只需要调整模型数据的顶点的位置和它附带的厚度,就可以对模型进行编辑,而不需考虑两个表面之间的对应关系.这极大的方便了建模的过程,提高了建模的效率。而且存储这样的模型数据也大大地节省了存储空间。
附图说明
为了对本发明实施例的特征和优点进行详细说明,将参照以下附图。如果可能的话,在附图和描述中使用相同或者类似的参考标号以指代相同或者类似的部分。其中:
图1示出了对基于厚度模型的模型数据的基本操作;
图2示出了本发明用于创建模式数据的第一具体实施方式;
图3示出了本发明用于创建模式数据的第二具体实施方式;
图4示出了本发明获得基于厚度模型的初始模型数据的第一具体实施方式;
图5示出了本发明获得基于厚度模型的初始模型数据的第二具体实施方式;
图6示出了本发明获得基于厚度模型的初始模型数据的第三具体实施方式;
图7、8示出了本发明用于将基于厚度模型的模式数据转换为基于现有网格模型的模型数据的具体实施方式;
图9示出了本发明用于创建模式数据的系统框架图。
具体实施方式
现在将参考本发明的示例性实施例进行详细的描述,在附图中图解说明了所述实施例的示例,其中相同的参考数字始终指示相同的元件。应当理解,本发明并不限于所公开的示例实施例。还应当理解,并非所述方法和设备的每个特征对于实施任一权利要求所要求保护的本发明都是必要的。此外,在整个公开中,当显示或描述处理或方法时,方法的步骤可以以任何顺序或者同时执行,除非从上下文中能清楚一个步骤依赖于先执行的另一步骤。此外,步骤之间可以有显著的时间间隔。
正如在背景技术部分所指出的,基于现有的网格模型的造型方法或者基于实体模型的造型方法存在诸多的缺陷,无法满足现在或者将来应用的需求。而本发明则另辟蹊径地提出厚度模型以克服现有技术中的一个或者多个缺陷。如表1所示,厚度模型包括了模型数据的顶点的三维空间坐标X、Y、Z以及该顶点对应的厚度值T。而厚度的方向则可以有灵活的安排,比如统一在模型数据文件中规定所有的厚度方向都沿顶点的法向,或者统一规定厚度方向指向同一个方向(比如一个具有厚度的球面,其上的顶点都指向球心),同一个轴(假设轴以X=X0,Y=Y0来表示,那么厚度模型上任意一点(Xi,Yi,Zi)的厚度方向为((Xi-X0),(Yi-Y0),0),其中i为自然数)等。则基于厚度模型的模型数据的一个顶点V就可以表示为Vi(Xi,Yi,Zi,Ti)。当然本领域技术人员理解,也可以对模型数据的各个顶点分别单独地定义其厚度方向,如此基于厚度模型的模型数据的一个顶点V就可以表示为Vi(Xi,Yi,Zi,Ti,Dix,Diy,Diz)。将基于厚度模型的模型数据的各个相邻顶点以边相连,则可以构成了厚度模型的模型数据的具有厚度的面,具体如表2所示。模型文件由顶点列表(表1)和面列表(表2)组成。下面是一个简单的基于厚度模型的模型数据文件的实例:
总顶点数;
总面数;
厚度方向(比如法向,指向固定点,指向固定轴等);
点列表(如表1);
面列表(如表2)。
表1
顶点 | X | Y | Z | 厚度 |
V1 | X1 | Y1 | Z1 | T1 |
V2 | X2 | Y2 | Z2 | T2 |
...... | ...... | ...... | ...... | ...... |
表2
面 | 顶点 |
F1 | V1,V2,V 3 |
F2 | V2,V4,V5 |
...... | ...... |
图1示出了对基于厚度模型的模型数据的基本操作。对模型数据的基本操作包括增加新的顶点(细分当前的面),改变顶点位置、改动顶点厚度等。比如,可以在当前某个面的中心增加一个新的顶点,新顶点的厚度可以由该面的原先各顶点的厚度插值而成。然后,可以进一步调整新顶点的位置和厚度,以达到对模型数据进行编辑创建的目的。
厚度模型是一个新的基本模型表示方式.它特别适合于用来表示具有厚度的物体,而这类物体事实上是广泛存在的。厚度模型的功能强大之处,就在于它仅需维护一个单层结构,就可以灵活的表示出在各处具有不同厚度的模型。厚度模型的模型数据非常容易被维护和修改,用户只需要调整模型数据的顶点的位置和它附带的厚度,就可以对模型进行编辑,而不需考虑两个表面之间的对应关系(两个表面可以自动的维护正确的对应).这极大的方便了建模的过程。基于厚度模型的表示,我们可以进一步利用它的特点,设计出一系列新颖的模型创建编辑工具,这些工具将极大的方便现有的操作和提供更强的功能。
图2示出了本发明用于创建模型数据的第一具体实施方式。在步骤201中,获取基于厚度模型的初始模型数据。基于上述厚度模型的初始模型数据可以通过多种途径获得。例如可以由用户通过基于选择接近于需要构造的物件的基本体素来形成,也可以通过转换已有的基于现有网格模型的模型数据来获得。对于上述两种获得初始模型的示例方式,将在后面作详细介绍。当然也可以将已有的基于厚度模型的模型数据作为初始的模型数据等各种方式。
在步骤203中,响应于用户输入所述初始模型数据的至少部分顶点的厚度值,分别调整所述至少部分顶点的厚度。用户可以采用多种输入的方式,比如通过鼠标、键盘等各种输入外部设备,用户可以通过选中初始模型数据的部分顶点,通过拉伸或者拖拽其中的单个或多个顶点的方式,来调整所述初始模型数据的部分顶点的厚度,也可以由用户分别输入各个顶点的高度值来调整所述初始模型数据的部分顶点的厚度。初始模型数据的顶点的厚度方向可以由模型数据文件直接定义。用户也可以输入部分顶点的厚度方向,从而达到所需要的特殊造型的需求。通过分别调整所述初始模型数据的部分顶点的厚度,就可以让用户较自由地修改、编辑模型数据,并且不用过多考虑在厚度方向上的点的具体位置,而厚度方向的多种自由选择,则增强了造型功能。现有的造型方法都无法像本具体实施例一样,能对自由曲面根据需要进行造型、建模。
在步骤205中,响应于用户输入所述初始模型数据的至少部分顶点的位置值,分别调整所述至少部分顶点的位置。用户同样可以采用多种输入的方式,比如通过鼠标、键盘等各种输入外部设备,用户可以通过选中初始模型数据的部分顶点,通过拖拽其中的单个或多个顶点的方式,来调整所述初始模型数据的部分顶点的位置,也可以由用户分别输入各个顶点的三维坐标值来调整所述初始模型数据的部分顶点的位置。值得注意的是,上述步骤203和步骤205并没有时间上的顺序关系,用户完全可以根据需要先调整部分顶点的位置,然后再调整部分顶点的厚度。用户也可以只调整部分顶点的位置,而调整另外的部分顶点的厚度。
在步骤207中,则基于所述初始模型数据以及调整后的所述至少部分顶点,获得基于厚度模型的模型数据。记录调整后的部分顶点的位置、厚度数据,以及结合初始模型数据中没有被调整的顶点的位置、厚度数据,就形成了基于厚度模型的模型数据。获得的基于厚度模型的模型数据相比于现有的基于其它模型的模型数据较大地节省了存储空间,也为后续用户的进一步的修改提供了操作的便捷性。
优选地,在调整完部分顶点的厚度或者位置后,可以至少平滑所述初始模型数据的部分顶点以获得基于厚度模型的模型数据。在虚拟世界中,有些模型需要粗糙的表面(比如凹凸不平的地形等等),而有些模型则需要光滑的表面以获得更好的视觉效果。将一个模型进行光滑处理的技术具体可参见Desbrun,M.,Meyer,M.,P.,and Barr,A.H.1999.Implicit fairing ofirregular meshes using diffusion and curvature flow.In Proceedings ofthe 26th Annual Conference on Computer Graphics and interactiveTechniques International Conference on Computer Graphics andInteractive Techniques.ACM Press/Addison-Wesley Publishing Co.,NewYork,NY,317-324,或者Jones,T.R.,Durand,F.,and Desbrun,M.2003.Non-iterative,feature-preserving mesh smoothing.ACM Trans.Graph.22,3(Jul.2003),943-949等。基于厚度模型,可以发展出多种不同的平滑算法。如下是本发明一种示例性的光滑处理实现方式:
(1)计算每个顶点的邻接顶点列表;
(2)将每个顶点的位置和厚度值更新为其邻接顶点的加权平均;
(3)如果用户已经满意当前模型的平滑程度,则过程结束;否则,再进行一次步骤2)的计算。
有时用户对基于厚度模型的初始模型数据的局部区域不是很满意,希望能够对其做进一步的细化修改,以生成更为逼真的造型。图3示出了本发明的第二具体实施方式。在步骤301中,响应于用户选定所述初始模型数据的部分顶点,确定所述部分顶点所构成的区域。同样用户可以通过各种外部输入设备方式来选择初始模型数据的部分顶点,比如通过键盘输入区域框,或者采用鼠标选择区域等等。并且以所述部分顶点中的外围顶点的相连的边所围成的面的区域作为所述部分顶点所构成的区域。
在步骤303中,进一步细分所述部分顶点所构成的区域以形成更多的基于厚度模型的顶点。如果要细分一个基于厚度模型的模型数据的区域,可以自动在该区域的每个面的中心增加一个点,以及每条边的中心也增加一个点.然后,通过连接相应的面中心点和边中心点,就将一个面细分成了多个面。新增加的中心顶点的初始位置和厚度值可以通过插值周围的顶点来计算。上述细分动作可以重复执行,直到用户认为模型局部顶点的数量已经足够描述该局部的形状。此外还可以有多种不同细分厚度模型的方法,比如,Loop细分法,具体可参见Charles Loop:Smooth Subdivision Surfaces Based on Triangles,M.S.Mathematics thesis,University of Utah,1987),butterfly细分法,具体可参见Dyn,N.,Levine,D.,and Gregory,J.A.1990.A butterflysubdivision scheme for surface interpolation with tension control.ACMTrans.Graph.9,2(Apr.1990),160-169.)等。这些针对三角面片的细分方法都可以推广到厚度模型上。当然,所有的顶点也可以进行后续的进一步调整。当在局部有了更多可控制的顶点,模型就能进行更精细的形状编辑了。也可以由用户通过鼠标等在相应区域中增加顶点而通过插值周围的顶点的厚度来计算该用户所增加顶点的厚度。通过提供细分局部区域的方法,本实施例为用户提供了更大的造型灵活性。
用户可能一开始就是利用基于厚度模型的造型工具来构建基于厚度模型的模型数据。图4示出了本发明获得基于厚度模型的初始模型数据的第一具体实施方式。在步骤401中,获取基本体素。可以预先提供一定的接近于常用造型体的基本体素,比如可以是平板、球体、柱体、锥体等,其可以采用公知解析方式进行的定义。后面各个顶点的生成可以在基本体素的解析模型上采样获得。用户可以从基于厚度模型的编辑工具的模板中选择接近其将要构造的模型数据的基本体素。
在步骤403中,接收用户输入的基本体素的相关几何尺寸以及厚度值。由用户首先确定基本体素的相关几何尺寸以及厚度,比如对于平板,用户输入其长度尺寸、宽度尺寸,同时输入其厚度尺寸,而对于球体,则用户输入其半径尺寸以及球的厚度值等。然后,根据不同的精度需求,造型工具可以均匀的在平面上进行采样,并将采样后的点连接形成一个个的厚度三角形。
在步骤405中,确定基本体素的基本面以获得初始模型数据的各个顶点。由于造型是基于一个基本体素,这些基本体素都是带有厚度的单层结构,比如一块有厚度的平板.这些带厚度的面就可看作是模型的基本面,而以基本面上通过采样得到的各个顶点作为初始模型数据的各个顶点。优选地,通过利用上述介绍的对面的细分方法,则可以获得初始模型数据的更多顶点。
在步骤407中,对各个顶点赋予厚度值从而形成基于厚度模型的初始模型数据。将用户输入的厚度值直接赋予初始模型数据的各个顶点。从而使得各个顶点具有了厚度值。该厚度值可以是统一的,也可以是分区域不同的,甚至各个顶点的厚度值都不一样。在获得了各个顶点和对应的厚度值以及厚度方向后,就得到了基于厚度模型的初始模型数据。而用户则可以基于该初始模型数据做进一步的编辑造型。
另外一个应用场景在于,用户已经有了基于现有网格模型(比如三角网格模型)的模型数据。由于基于现有模型的编辑工具的局限性,用户无法获得满意的模型数据。则可以考虑将基于现有模型的模型数据转换为基于厚度模型的模型数据。图5示出了本发明获得基于厚度模型的初始模型数据的第二具体实施方式。在步骤501中,构造一个基于基本体素的基于厚度模型的初始模型数据,指定初始模型数据的顶点的厚度方向,并将初始模型数据的顶点位置和厚度值作为未知数。用户只需指定体素的基本类型,是平板,柱面,还是球面等。顶点的数目刚开始可以使用一个相对较小的数目,比如50个顶点。在随后的不断优化过程中,可以按需要不断的加入新顶点。厚度方向可以按顶点的法向方向。顶点的位置和方向被考虑为未知数。
在步骤503中,求解所述未知数以获得一个优化的初始模型数据,该优化的初始模型数据使得基于网格模型的模型数据中的每个点到初始模型数据的距离之和最小。由于厚度模型中顶点的位置和厚度都是未知数,需要通过建立优化目标函数来求解。假设原网格模型含有n个顶点,n为自然数,把每个顶点Pi到新的厚度模型的距离表示成关于厚度模型上顶点的函数fi,则优化目标函数为F=f1+f2+...+fn,fi是每个顶点Pi到新的厚度模型S的距离。其中 d(Pi,S)表示顶点Pi到新的厚度模型S的距离,Tj为厚度模型中的任一个厚度三角面片,d(Pi,Tj)顶点Pi到新的厚度三角面片Tj的距离,min()为最小值函数,而d(Pi,Tj)=min(dj1,dj2),dj1,dj2是Pi到厚度三角面片的上下两个三角面的距离,其中获取一个厚度三角面片的上下两个面的具体方法可以参见下文图7和说明书中相关内容。另外具体计算空间中一个点Pi到一个三角面的距离dj1,dj2的算法,可参见文献“Distance Between Point and Triangle in 3D”,David Eberly,Geometric Tools,LLC(http://www.geometrictools.com/Documentation/DistancePoint3Triangle3.pdf)等。然后,找出一组厚度模型上顶点的位置和厚度值,使得F的值最小,由于这属于本领域较普通的最优目标函数的求解问题,在此不再赘述。
在步骤505中,计算基于网格模型的模型数据中的每个点到初始模型数据的距离。基于网格模型的模型数据中的每个点到初始模型数据的距离的具体算法可以参见上文所述。
在步骤507中,如果所有的距离都已经小于等于预设阈值E(比如将E设为整个模型尺寸的0.5%),则将所述初始模型数据作为基于厚度模型的初始模型数据。
在步骤509中,如果网格模型的模型数据中存在点到初始模型数据的距离大于预设阈值,则可以采用上文介绍的细分方法,在离该点最近的初始模型数据的面上添加一个新的基于厚度模型的顶点,并返回到上述步骤503作进一步的计算以最终获得基于厚度模型的初始模型数据。
图6示出了本发明获得基于厚度模型的初始模型数据的第三具体实施方式。事实上,一个基于现有的网格模型的模型数据往往会由多个相对独立的构件形成。比如一个电脑椅,往往会由椅背、椅座、扶手和椅脚等相对独立的部分构成。则将这种较为复杂的基于现有的网格模型的模型数据转换为基于厚度模型的模型数据也是用户所需要的。则在步骤601,将所述基于网格模型的模型数据根据语义分为多个部分。将所述基于网格模型的模型数据根据语义分为多个部分有多种方法,具体可参见文献:Youyi Zheng and Chiew-Lan Tai.MeshDecomposition with Cross-Boundary Brushes.Computer Graphics Forum(Proceedings of Eurographics 2010)。
在步骤603中,分别将各个部分转换为基于厚度模型的初始模型数据。将各个部分分别转换为基于厚度模型的初始模型数据可以根据图5所示的方法进行。以及在步骤605中,组合所述各个部分对应的基于厚度模型的初始模型数据。这里,可以仅仅是将不同部分紧贴的摆放在一起。
基于上面所详细介绍的方法,下面示例性说明用户对电脑椅的造型实例。用户开始通过基于厚度模型的编辑工具选取一个作为基本体素的厚度均匀的平板。用户设定平板的尺寸和厚度,从而构建出一个平板模型,并整体调整平板的角度,使它略向后倾斜。通过改变平板上的一些顶点的位置将平板的形状进行略微的弯曲,然后调整模型顶点的厚度,使得从下到上有一个厚度的渐变。现在需要给模型加入细节:可以选中一个局部的需要加入细节的区域,对它进行细分,使它具有更多的顶点。用户调整这个区域中局部顶点的厚度,形成一个中间突起的形状,将这部分的变化复制到模型的其他部分。平滑整个模型,这样就完成了对椅子后背的建模。接着,可对椅面,扶手,椅脚等部分进行建模。
由于现有的渲染技术以及很多造型编辑工具大部分基于现有的网格模型。因此存在将基于厚度模型的模型数据转换为基于现有网格模型的模型数据的需要。图7示出了本发明用于将基于厚度模型的模式数据转换为基于现有网格模型的模型数据的具体实施方式。步骤701中,将沿基于厚度模型的模型数据的每一个顶点的厚度方向分别生成一个新的顶点,所述每一个顶点与新的顶点之间距离为原来每一个顶点的厚度值。具体而言,假定基于厚度模型的模型数据的一个顶点Vm(Xm,Ym,Zm,Tm),m为自然数,即该顶点的三维坐标为(Xm,Ym,Zm),厚度为Tm,则就可以得到两个新的顶点Vm1(Xm,Ym,Zm)和Vm2=Vm1+Tm×n,n是Vm处的单位法向向量。对每个顶点都生成其对应的厚度方向上的顶点,则就获得了两个顶点层,一个为原来的顶点层,另一个为新生成的顶点层。在步骤703中,在相邻的新的顶点之间连接一条边,从而形成新的基于网格模型的模型数据。将新生成的顶点层的各个顶点与其原先对应的顶点相互连接,在加上原来相连的各个顶点,如此则得到了基于传统网格模型的模型数据。优选地,如果一个顶点在所述基于厚度模型的模型数据的边界上,则在该顶点分裂成的两个新的顶点之间连接一条边。这样,又形成了若干个四边形面。如果想得到基于三角网格的模型数据,则可将每个四边形面通过添加一条边变为两个三角形。图8示意性地给出了由基于本发明的厚度模型的模型数据转换为基于网格模型的模型数据的情况。
本发明还提供一种用于创建模式数据的系统900,图9示出了其系统框架图。所述用于创建模式数据的系统900包括初始模型数据获取装置901、顶点厚度调整装置903、顶点位置调整装置905、模型数据生成装置907。其中初始模型数据获取装置901用于获取基于厚度模型的初始模型数据;顶点厚度调整装置903用于响应于用户输入部分顶点的厚度值,分别调整所述初始模型数据的部分顶点的厚度;顶点位置调整装置905用于响应于用户输入部分顶点的位置值,分别调整所述初始模型数据的部分顶点的位置;模型数据生成装置907用于基于所述初始模型数据以及调整后的部分顶点,获得基于厚度模型的模型数据。最后获得的基于厚度模型的模型数据存储在数据库909中。由于涉及到上述装置的具体方法以在前面详细介绍,在此不在赘述。
优选地,系统900还包括用于响应于用户选定所述初始模型数据的部分顶点,确定所述部分顶点所构成的区域的装置;以及用于进一步细分所述部分顶点所构成的区域,以形成更多基于厚度模型的顶点的装置。
优选地,所述初始模型数据获取装置901包括:用于获取基本体素的装置;用于接收用户输入的基本体素的相关几何尺寸以及厚度值的装置;用于确定基本体素的基本面以获得初始模型数据的各个顶点的装置;用于对各个顶点赋予厚度值从而形成基于厚度模型的初始模型数据的装置。
优选地,所述初始模型数据获取装置901包括:用于将基于网格模型的模型数据转换为基于厚度模型的初始模型数据的装置。
优选地,所述用于将基于网格模型的模型数据转换为基于厚度模型的初始模型数据的装置包括:用于构造一个基于基本体素的基于厚度模型的初始模型数据,指定初始模型数据的顶点的厚度方向,并将初始模型数据的顶点位置和厚度作为未知数的装置;用于求解所述未知数以获得一个优化的初始模型数据,该优化的初始模型数据使得基于网格模型的模型数据中的每个点到初始模型数据的距离之和最小的装置;用于计算基于网格模型的模型数据中的每个点到初始模型数据的距离的装置;用于如果所有的距离都已经小于等于预设阈值,则将所述初始模型数据作为基于厚度模型的模型数据的装置;用于如果网格模型的模型数据中存在顶点到初始模型数据的距离大于预设阈值,则在离该顶点最近的初始模型数据的面上添加一个新的基于厚度模型的顶点的装置。
优选地,系统900还包括:用于将所述基于网格模型的模型数据根据语义分为多个部分的装置;用于分别将各个部分转换为基于厚度模型的初始模型数据的装置;以及用于组合所述各个部分对应的基于厚度模型的初始模型数据的装置。
优选地,系统900还包括:用于沿基于厚度模型的模型数据的每一个顶点的厚度方向分别生成一个新的顶点,所述每一个顶点与新的顶点之间距离为原来每一个顶点的厚度值的装置;以及用于在相邻的新的顶点之间连接一条边,从而形成了新的基于网格模型的模型数据的装置。
优选地,系统900还包括:用于如果一个顶点原来在所述基于厚度模型的模型数据的边界上,则在该顶点与其对应的新的顶点之间连接一条边的装置。
优选地,其中所述厚度模型包括顶点三维空间坐标以及顶点厚度。
优选地,其中在基于厚度模型的模型数据文件中指定所述顶点的厚度方向。
另外,根据本发明的用于创建模型数据的方法还可以通过计算机程序产品来实施,该计算机程序产品包括用于当在计算机上运行所述计算机程序产品时执行以实施本发明的仿真方法的软件代码部分。
还可以通过在计算机可读记录介质中记录一计算机程序来实施本发明,该计算机程序包括用于当在计算机上运行所述计算机程序时执行以实施根据本发明的仿真方法的软件代码部分。即,根据本发明的仿真方法的过程能够以计算机可读介质中的指令的形式和各种其它形式分发,而不管实际用来执行分发的信号承载介质的特定类型。计算机可读介质的例子包括诸如EPROM、ROM、磁带、纸、软盘、硬盘驱动器、RAM和CD-ROM的介质以及诸如数字和模拟通信链路的传输型介质。
尽管参考本发明的优选实施例具体展示和描述了本发明,但是本领域一般技术人员应该明白,在不脱离所附权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种修改。
Claims (22)
1.一种用于创建模型数据的方法,包括:
获取基于厚度模型的初始模型数据;
响应于用户输入所述初始模型数据的至少部分顶点的厚度值,分别调整所述至少部分顶点的厚度;
响应于用户输入所述初始模型数据的至少部分顶点的位置值,分别调整所述至少部分顶点的位置;以及
基于所述初始模型数据以及调整后的所述至少部分顶点,获得基于厚度模型的模型数据。
2.如权利要求1所述的方法,还包括:
响应于用户选定所述初始模型数据的部分顶点,确定所述部分顶点所构成的区域;以及
进一步细分所述部分顶点所构成的区域,以形成更多基于厚度模型的顶点。
3.如权利要求1所述的方法,其中获取基于厚度模型的初始模型数据包括:
获取基本体素;
接收用户输入的基本体素的相关几何尺寸以及厚度值;
确定基本体素的基本面以获得初始模型数据的各个顶点;
对各个顶点赋予厚度值从而形成基于厚度模型的初始模型数据。
4.如权利要求1所述的方法,其中获取基于厚度模型的初始模型数据包括:
将基于网格模型的模型数据转换为基于厚度模型的初始模型数据。
5.如权利要求4所述的方法,所述将基于网格模型的模型数据转换为基于厚度模型的初始模型数据包括:
构造一个基于基本体素的基于厚度模型的初始模型数据,指定初始模型数据的顶点的厚度方向,并将初始模型数据的顶点位置和厚度作为未知数;
求解所述未知数以获得一个优化的初始模型数据,该优化的初始模型数据使得基于网格模型的模型数据中的每个点到初始模型数据的距离之和最小;
计算基于网格模型的模型数据中的每个点到初始模型数据的距离;
如果所有的距离都已经小于等于预设阈值,则将所述初始模型数据作为基于厚度模型的模型数据;
如果网格模型的模型数据中存在顶点到初始模型数据的距离大于预设阈值,则在离该顶点最近的初始模型数据的面上添加一个新的基于厚度模型的顶点,并且返回到上述计算步骤。
6.如权利要求4或5所述的方法,还包括:
将所述基于网格模型的模型数据根据语义分为多个部分;
分别将各个部分转换为基于厚度模型的初始模型数据;以及
组合所述各个部分对应的基于厚度模型的初始模型数据。
7.如权利要求1所述的方法,还包括:
沿基于厚度模型的模型数据的每一个顶点的厚度方向分别生成一个新的顶点,所述每一个顶点与新的顶点之间距离为原来每一个顶点的厚度值;以及
在相邻的新的顶点之间连接一条边,从而形成新的基于网格模型的模型数据。
8.如权利要求7所述的方法,还包括:
如果一个顶点原来在所述基于厚度模型的模型数据的边界上,则在该顶点与其对应的新的顶点之间连接一条边。
9.如权利要求1所述的方法,其中所述厚度模型包括顶点三维空间坐标以及顶点厚度。
10.如权利要求9所述的方法,其中在基于厚度模型的模型数据文件中指定所述顶点的厚度方向。
11.如权利要求1所述的方法,所述基于所述初始模型数据以及调整后的部分顶点,获得基于厚度模型的模型数据还包括:
至少平滑所述初始模型数据的部分顶点。
12.一种用于创建模型数据的系统,包括:
初始模型数据获取装置,用于获取基于厚度模型的初始模型数据;
顶点厚度调整装置,用于响应于用户输入所述初始模型数据的至少部分顶点的厚度值,分别调整所述至少部分顶点的厚度;
顶点位置调整装置,响应于用户输入所述初始模型数据的至少部分顶点的位置值,分别调整所述至少部分顶点的位置;以及
模型数据生成装置,用于基于所述初始模型数据以及调整后的所述至少部分顶点,获得基于厚度模型的模型数据。
13.如权利要求12所述的系统,还包括:
用于响应于用户选定所述初始模型数据的部分顶点,确定所述部分顶点所构成的区域的装置;以及
用于进一步细分所述部分顶点所构成的区域,以形成更多基于厚度模型的顶点的装置。
14.如权利要求12所述的系统,其中所述初始模型数据获取装置包括:
用于获取基本体素的装置;
用于接收用户输入的基本体素的相关几何尺寸以及厚度值的装置;
用于确定基本体素的基本面以获得初始模型数据的各个顶点的装置;
用于对各个顶点赋予厚度值从而形成基于厚度模型的初始模型数据的装置。
15.如权利要求12所述的系统,其中所述初始模型数据获取装置包括:
用于将基于网格模型的模型数据转换为基于厚度模型的初始模型数据的装置。
16.如权利要求15所述的系统,所述用于将基于网格模型的模型数据转换为基于厚度模型的初始模型数据的装置包括:
用于构造一个基于基本体素的基于厚度模型的初始模型数据,指定初始模型数据的顶点的厚度方向,并将初始模型数据的顶点位置和厚度作为未知数的装置;
用于求解所述未知数以获得一个优化的初始模型数据,该优化的初始模型数据使得基于网格模型的模型数据中的每个点到初始模型数据的距离之和最小的装置;
用于计算基于网格模型的模型数据中的每个点到初始模型数据的距离的装置;
用于如果所有的距离都已经小于等于预设阈值,则将所述初始模型数据作为基于厚度模型的模型数据的装置;
用于如果网格模型的模型数据中存在顶点到初始模型数据的距离大于预设阈值,则在离该顶点最近的初始模型数据的面上添加一个新的基于厚度模型的顶点的装置。
17.如权利要求15或16所述的系统,还包括:
用于将所述基于网格模型的模型数据根据语义分为多个部分的装置;
用于分别将各个部分转换为基于厚度模型的初始模型数据的装置;以及
用于组合所述各个部分对应的基于厚度模型的初始模型数据的装置。
18.如权利要求12所述的系统,还包括:
用于沿基于厚度模型的模型数据的每一个顶点的厚度方向分别生成一个新的顶点,所述每一个顶点与新的顶点之间距离为原来每一个顶点的厚度值的装置;以及
用于在相邻的新的顶点之间连接一条边,从而形成新的基于网格模型的模型数据的装置。
19.如权利要求18所述的系统,还包括:
用于如果一个顶点原来在所述基于厚度模型的模型数据的边界上,则在该顶点与其对应的新的顶点之间连接一条边的装置。
20.如权利要求12所述的系统,其中所述厚度模型包括顶点三维空间坐标以及顶点厚度。
21.如权利要求20所述的系统,其中在基于厚度模型的模型数据文件中指定所述顶点的厚度方向。
22.一种厚度模型,其中该厚度模型包括顶点三维空间坐标以及顶点厚度,并且在基于厚度模型的模型数据文件中指定所述顶点的厚度方向。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105061802A CN102436674A (zh) | 2010-09-29 | 2010-09-29 | 用于创建模型数据的方法及系统 |
US13/238,158 US20120078590A1 (en) | 2010-09-29 | 2011-09-21 | Method and system for creating model data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105061802A CN102436674A (zh) | 2010-09-29 | 2010-09-29 | 用于创建模型数据的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102436674A true CN102436674A (zh) | 2012-05-02 |
Family
ID=45871507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105061802A Pending CN102436674A (zh) | 2010-09-29 | 2010-09-29 | 用于创建模型数据的方法及系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20120078590A1 (zh) |
CN (1) | CN102436674A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109448120A (zh) * | 2018-10-31 | 2019-03-08 | 广州凡拓动漫科技有限公司 | 三维建筑模型的处理方法、装置和计算机设备 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9607422B1 (en) * | 2011-12-22 | 2017-03-28 | Msc.Software Corporation | Interactive vertex manipulation system and methods for geometry repair |
US8751543B2 (en) * | 2012-07-13 | 2014-06-10 | Sap Ag | Database view modeling using existing data model |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090040224A1 (en) * | 2007-08-06 | 2009-02-12 | The University Of Tokyo | Three-dimensional shape conversion system, three-dimensional shape conversion method, and program for conversion of three-dimensional shape |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5988862A (en) * | 1996-04-24 | 1999-11-23 | Cyra Technologies, Inc. | Integrated system for quickly and accurately imaging and modeling three dimensional objects |
JP2004288170A (ja) * | 2003-03-05 | 2004-10-14 | Olympus Corp | 三次元モデル検索方法及びシステム |
JP4216824B2 (ja) * | 2005-03-07 | 2009-01-28 | 株式会社東芝 | 3次元モデル生成装置、3次元モデル生成方法および3次元モデル生成プログラム |
US20070216713A1 (en) * | 2006-03-15 | 2007-09-20 | Autodesk, Inc. | Controlled topology tweaking in solid models |
US20080218512A1 (en) * | 2007-02-20 | 2008-09-11 | Ofer Alon | System and method for interactive masking and modifying of 3d objects |
US8675951B2 (en) * | 2007-05-11 | 2014-03-18 | Three Pixels Wide Pty Ltd. | Method and system for generating a 3D model |
US20090157649A1 (en) * | 2007-12-17 | 2009-06-18 | Panagiotis Papadakis | Hybrid Method and System for Content-based 3D Model Search |
KR101028698B1 (ko) * | 2009-05-20 | 2011-04-14 | 중앙대학교 산학협력단 | 격자구조를 이용한 3차원 모델링 장치 및 방법 |
-
2010
- 2010-09-29 CN CN2010105061802A patent/CN102436674A/zh active Pending
-
2011
- 2011-09-21 US US13/238,158 patent/US20120078590A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090040224A1 (en) * | 2007-08-06 | 2009-02-12 | The University Of Tokyo | Three-dimensional shape conversion system, three-dimensional shape conversion method, and program for conversion of three-dimensional shape |
Non-Patent Citations (3)
Title |
---|
AURÉLIEN BQRBIER, ERIC GQLIN ,SAMIR AKKOUCHE: "《A Framework for Modeling,Animating and Morphing Textured Implicit Models》", 《LIRIS RESEARCH REPORT 2004》 * |
HIDEO SAITO: "《Super Resolving Texture Mapping form Multiple View Images for 3D Model Construction 》", 《SYSTEMS,MAN,AND CYBERNETICS,2000 IEEE INTERNATIONAL CONFERENCE ON(VOLUME:2)》 * |
ROBERT F.TOBLER, STEFAN MAIERHOFER: "《A Mesh Data Structure for Rendering and Subdivision》", 《SHORT COMMUNICATIONS PROCEEDINGS ISBN80-86943-05-4 WSCG,2006》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109448120A (zh) * | 2018-10-31 | 2019-03-08 | 广州凡拓动漫科技有限公司 | 三维建筑模型的处理方法、装置和计算机设备 |
CN109448120B (zh) * | 2018-10-31 | 2023-09-08 | 广州凡拓动漫科技有限公司 | 三维建筑模型的处理方法、装置和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
US20120078590A1 (en) | 2012-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7464387B2 (ja) | 3dモデル化オブジェクト推定のための機械学習 | |
CN107067473A (zh) | 对3d建模对象进行重构 | |
CN109145352B (zh) | 用于学习取图像作为输入的函数的数据集 | |
CN105844711B (zh) | 在细分曲面上雕刻2d图像 | |
Cuillière et al. | Automatic construction of structural CAD models from 3D topology optimization | |
US8988420B2 (en) | Visual file representation | |
US10255381B2 (en) | 3D modeled object defined by a grid of control points | |
CN111382530A (zh) | 学习用于推测实体cad特征的神经网络 | |
CN105183405A (zh) | 一种自定义模型表面镂空的3d打印方法 | |
CN111382778A (zh) | 形成用于推测实体cad特征的数据集 | |
Ben Makhlouf et al. | Reconstruction of a CAD model from the deformed mesh using B-spline surfaces | |
Katsoulis et al. | A T-splines-based parametric modeller for computer-aided ship design | |
Zhou et al. | Image deformation with vector-field interpolation based on MRLS-TPS | |
CN110176063B (zh) | 一种基于人体拉普拉斯变形的服装变形方法 | |
CN102436674A (zh) | 用于创建模型数据的方法及系统 | |
Sun et al. | Adaptive generation and local refinement methods of three-dimensional hexahedral element mesh | |
Li et al. | Tool path generation for triangular meshes using least-squares conformal map | |
CN107330209B (zh) | 一种基于参数化设计的造型墙智能模板实现方法 | |
CN105869210A (zh) | 三维地质表面模型中的插值数据处理方法 | |
JP2017162448A (ja) | 複合部品の外面の設計 | |
CN107515995B (zh) | 一种支持自定义语义的电动车变形设计方法 | |
Malik et al. | A cyber-physical system to design 3D models using mixed reality technologies and deep learning for additive manufacturing | |
Hua et al. | Trivariate simplex splines for inhomogeneous solid modeling in engineering design | |
CN117152311B (zh) | 基于双分支网络的三维表情动画编辑方法及系统 | |
CN105528763A (zh) | 一种基于多重网格近似算法的自适应区域感知蒙板生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120502 |