3d建模对象的水印添加的制作方法

文档序号:6431965阅读:736来源:国知局
专利名称:3d建模对象的水印添加的制作方法
技术领域
本发明涉及计算机程序和系统领域,更具体而言,涉及用于设计3D建模对象的方法、系统和程序。
背景技术
已知计算机辅助技术包括计算机辅助设计或CAD,其涉及用于创作产品设计的软件解决方案。类似地,CAE是计算机辅助工程设计的缩写,例如,其涉及用于模拟未来产品的物理性状的软件解决方案。CAM代表计算机辅助制造,通常包括用于定义制造过程和操作的软件解决方案。在市面上有很多用于对象(或零件)设计或对象组件、形成产品的系统和程序,例如,由Dassault Systemes以CATIA为商标提供的。这些CAD系统允许用户建立和操纵对象或对象组件的复合三维(3D)模型。因而,CAD系统采用边或线,在某些情况下采用面提供了对所建模的对象的表现。可以通过各种方式表示线或边,例如,采用非均勻有理B样条(NURBS)。这些CAD系统将部分或部分的组件作为建模对象进行管理,所述建模对象几乎都是几何结构的规格说明。具体而言,CAD文件包含规格说明,由所述规格说明生成几何结构,而所述几何结构则继而允许生成表现。可以将几何结构和表现存储在单个CAD文件或多个CAD文件中。CAD系统包括用于向设计者表现建模对象的图形工具;这些工具用于复合对象的显示——表现CAD系统中的对象的文件的典型尺寸的范围是每部分一兆字节,每一组件可以包括数千部分。CAD系统对存储在电子文件中的对象的模型进行管理。还已知一种ftOduct Lifecycle Management (PLM,产品寿命周期管理)解决方案,其是指一种经营战略,其有助于公司跨越扩展企业的概念,分享产品数据,应用常用过程,以及利用团队知识,以完成从产品概念开始到其寿命的结束的产品开发。通过包含参与者(公司部门、业务合伙人、供应商、原始制造厂家(OEM)以及客户),PLM可以允许这一网络作为单个实体运作,从而对产品和过程进行概念化、设计、构建和支持。一些PLM解决方案有可能(例如)通过创建数字实体模型(产品的3D图形模型)来设计和开发产品。可以首先采用适当的应用定义和模拟数字产品。之后可以对简单紧凑(lean)的数字制造过程进行定义和建模。Dassault Systemes (以 CATIA、EN0VIA 和 DELMIA 为商标)提供的 PLM 解决方案提供了组织产品工程设计知识的Engineering Hub、管理制造工程设计知识的ManufacturingHub和实现企业整合以及与Engineering Hub和Manufacturing Hub 二者的连接的Enterprise Hub。所述系统总共会提供链接产品、过程和资源的开放对象模型,从而实现动态的、基于知识的产品创造以及驱动优化的产品定义、制造准备、生产和服务的决策支持。这样的PLM解决方案包括产品的关系数据库。所述数据库包括一组文本数据和数据之间的关系。数据通常包括与产品相关的技术数据,所述数据按照数据级别排序,并且编入了索引,因而是可搜索的。所述数据表示建模对象,所述建模对象往往是建模产品和过禾呈。
4
为了设计3D建模对象,往往提供至少一个表面,该表面将表示建模对象的物理边界。3D建模对象的绘制要处理两种通常定义了所述表面的基本量表面的点和表面的法向矢量(即,与所述表面正交的矢量)。通常将所述表面的点提供为一组对象表面上的点的3D坐标。对这样的坐标应用投影和视图矩阵将给出计算机屏幕上的像素位置。常常将法向矢量提供为与对象表面的点相关的3D矢量。又被称为“法线”的这一矢量控制着光从所述表面的反射,并且该矢量连同材料特性一起将定义合成像素的颜色。下文还会提到法向场,其被定义为为3D对象表面上的每一位置提供法线的函数。图1示出了表面S的例子,针对该表面将法向矢量N表示为与表面正交的箭头,箭头的起点是表面S的点P。几何理论表明,要想对所要绘制的3D对象建模只需对位置建模就足够了,因为从位置的导数能够计算出法线。然而,在实践中,很多计算机制图系统都为位置和法线设置了单独的通道,因为更为有效的做法是以低分辨率表示位置数据,通过法线场中的变化表示诸如锐边和表面粗糙度的局部特征。一种显示3D对象的常用手段是所谓的“Phong阴影法”,例如,如Bui Tuong Phong的文章"Illumination for Computer Generated Pictures, " Comm. ACM, Vol 18(6)311-317, June 1975中所述。在这种方案中,所述系统保持着由三角形构成的网格,其中,在每一网孔顶点处定义了独立的位置和法线。在给定表面上的点的情况下,采用三角形中的点的重心位置作为权重,通过每一三角形顶点处的法线的加权平均值计算该点处的法向矢量。一种针对Phong模型的改进是Normal Mapped或Bump Mapped模型,针对其的首次描述是在 Blinn 的文章"Simulation of wrinkled surfaces”,ACM SIGGRAPH, 1978 中,现在已经在诸如视频游戏的应用中得到了广泛使用。其采用三角形网格,在每一网格顶点处具有2D坐标(u,ν)。(u,ν)对指向被称为“法线图(normal map)”或“凸起(bump)图”的2D图。在给定表面上的点的情况下,法线场首先通过每一三角形顶点处的(u,v)的加权平均值计算(u,v)值,之后采用这一(u,v)值在法线图中执行查找。通常由有限尺寸的2D图像表示所述法线图,查找算子将在图像的像素之间执行内插,以模拟连续映射的存在。在另一种已知例子中,将位置数据存储为NURBS表面。法线场作为法线图与NURBS相关。总而言之,已知技术考虑表面上的分立的位置和法线信息。尽管Hxmg阴影法生成了从一个顶点的法线到另一个顶点的法线随位置平滑地演化的法线场,但是法线图能够包括任何量的细节。通常旨在通过协作的方式编辑包括产品构造、过程知识和资源信息在内的产品寿命周期信息。因而,建模对象越来越多地被共享,以及受到版权侵权。出于这一原因,产生了对3D建模对象的更高的可追溯性的需求,以证明3D模型的侵权或非法仿造。为了提高3D建模对象的可追溯性,人们开始探索3D添加水印(通常为3D对象的添加水印)领域。这样的技术的应用是多种多样的,例如,我们可能想要采用表示原创者的代码对对象做出标记,从而避免其未经允许受到重复使用。大多数3D添加水印技术的共通之处在于都是在3D模型的局部形状中(换言之,在表面点的位置上)存在扰动,以插入预期信息。用于隐匿这些扰动的技术通常使其小到无法通过肉眼察觉。在文章标题为“Acomprehensive survey on 3 dimensional mesh watermarking”,by Wang,Lavoueet al.,IEEE Transactions on Multimedia, vol. 10, No. 8, December 2008 中提供了很好的对 3D水印技术的调查。但是,对于针对其预先给出了法向矢量的场的3D建模对象而言,不存在其专用的添加水印技术。因而,仍然需要一种追踪至少通过表面的点的场和与表面正交的法向矢量的场建模的3D建模对象的技术。

发明内容
因此,根据一个方面,本发明提供了一种用于设计3D建模对象的方法,其包括如下步骤提供至少一个表面,所述表面是由所述表面的点的场以及与所述表面正交的法向矢量的场定义的;以及通过修改点的场同时使法向矢量的场保持原样而对所述对象施加水印。在实施例中,根据本发明的产品寿命周期管理系统可以包括一个或多个下述特性-所述方法还包括根据点的场绘制建模对象的3D表示的步骤;-所述绘制步骤包括根据点的场计算屏幕上的投影;-所述绘制还包括根据法向矢量给投影施加阴影;-所提供的表面是另一对象的表面,添加水印的步骤包括提取点的场,提取表面的法向矢量的场,修改点的场,同时使法向矢量的场保持原样,向正在设计的对象应用由经修改的点的场和未经修改的法向矢量的场定义的表面,正在设计的对象由此变成了另一对象的添加了水印的副本;-添加水印的步骤包括点的场的致密化(densification),并相应地包括法向矢量的场的致密化;-点的场的致密化包括执行细分,法向矢量的场的致密化包括通过内插先前的法向矢量而建立新的法向矢量;-遵循施加水印位序列的方案执行添加水印;-所述方法在添加水印的步骤之后还包括下述步骤根据添加水印所遵循的方案确定位序列,以及将所确定的位序列与水印位序列进行比较;-所述方法还包括通过修改点的场以及相应地修改法向矢量的场而对表面加以变换的步骤;-在对对象进行添加水印的步骤中,对点的场进行局部或全局修改;-点的场对应于三角形网格,法向矢量的场使矢量与三角形网格的每一顶点相关,并且/或者法向矢量的场是具有查找算子的法线图。根据另一方面,本发明还提出了一种计算机辅助设计系统,其包括用于存储至少一个表面的模块,所述表面由表面的点的场以及与表面正交的法向矢量的场定义;以及适于采用上述方法设计3D建模对象的图形用户界面。根据另一方面,本发明还提出了一种包括由计算机执行的指令的计算机程序,所述指令包括用于使计算机辅助设计系统执行上述方法的模块,所述计算机辅助设计系统包括用于存储由表面的点的场和与表面正交的法向矢量的场定义的至少一个表面的模块以及适于设计3D建模对象的图形用户界面。
根据另一方面,本发明还提出了一种计算机可读存储介质,其具有记录于其上的上述计算机程序。


现在将通过非限制性范例并参考附图描述体现本发明的系统,其中-图1示出了表面的例子;-图2示出了所述方法的例子的流程图;-图3示出了所述方法的执行的例子;-图4示出了所述方法的例子的流程图;-图5示出了适于执行本发明的图形用户界面的范例示意图;-图6示出了适于执行本发明的系统的范例示意图。
具体实施例方式参考图2的流程图,提出了一种用于设计3D建模对象的方法。所述方法包括提供至少一个表面的步骤Si。所述表面由表面的点的场以及与表面正交的法向矢量的场定义。所述方法还包括通过修改点的场同时使法向矢量的场保持原样而对对象添加水印的步骤S2。这样的方法实现了通过由点的场和法向矢量的场定义的表面建模的3D建模对象的可追溯性。“设计”对象是指进行修改或创建包括对对象建模的数据的文件的任何动作或动作的组合。因而,所述方法旨在针对先前已经创建的对象执行以及从头开始创建新的对象。“3D建模对象”是指任何通过能够实现其3D表示的数据建模的对象。3D表示允许对该部分进行全角度观察。例如,在3D建模对象得到了 3D表示后,可以围绕3D建模对象的任何轴或者围绕显示该表示的屏幕中的任何轴对3D建模对象进行操纵和翻转。值得注意的是,这种情况将2D图标排除在外,因为其并非是3D建模的。对3D表示的显示将促进设计的完成(例如,提高设计者在统计学意义上完成其任务的速度)。其还将加快该产业的制造过程的速度,因为产品的设计也是制造过程的一部分。在所述方法中,通过在步骤Sl中提供的至少一个表面对3D建模对象建模。所述表面表示对象的边界。所述表面可以是对象的整个边界,也可以是对象的整个边界的一部分。在任一种情况下,所述表面都是由表面的点的场以及与表面正交的法向矢量的场定义的,例如,在图1中,通过点P和法向矢量N对表面S建模。“场(field)”是指任何对一系列点/法向矢量建模的方式。所述场可以是一系列坐标、参数定义(例如,针对点的场而言的NURBQ或二者的结合。所述点的场和法向矢量的场在其值上相互关联,例如,根据诸如Phong阴影法或Bump Mapped模型的任何本身已知的技术相互关联,从而实际上定义的是同一表面。在例子中,点的场可以对应于三角形网格。这一点与大多数CAD系统兼容。在这种情况下,法向矢量的场可以对应于与三角形网格的每一顶点相关的矢量。在这种情况下以及其他情况下,作为替代,法向矢量的场可以是具有查找算子的法线图,这一点如上文所述。通过点的场和法向矢量的场二者定义表面允许更加有效地绘制表面(即,计算供显示的数据),即,实现更好的存储器使用Vs时间的指标,所述时间是计算指定细节水平的绘制所需的时间。实际上,对于表面绘制而言,在根据法向矢量的场执行本身已知但下文还要予以说明的阴影法(即,向像素的颜色施加一定的系数,其使得所述像素变亮或变暗)的同时,根据本身已知的点的场计算像素(即,除颜色之外的屏幕上的坐标)。由此可知,由于法向矢量的场定义了所述表面,因而没有必要在每次要采用阴影法绘制表面时都计算法向矢量,因而其使得绘制速度更快。而且,必须包含到点的场中的信息更少(即,点的场必须含有的点更少)。所述方法还包括对对象添加水印的步骤S2。在当前语境下,“添加水印”是通过一种方式对对象加以修改的过程,即,在修改之后,对象呈现出一组未添加水印的随机对象不太可能呈现(随机对象呈现出水印的概率低于x%,其中,X是一个小值,例如,1、0. 1、0.01、0.001甚至0.0001)的特征(可以将其称为“标记”或“水印”)。因而,对对象添加水印实现了对象的可追溯性。实际上,设计者通常创建对象。因而,设计者可以出于协作设计的目的共享对象,或者公布所述对象使公众能够使用该对象,还可以出售所述对象。在此之前,设计者根据所述方法对所述对象添加水印。这样,如果通过未经设计者授权的方式重新使用所述对象,或者在未经设计者授权的情况下出售所述对象,设计者可以通过以高于(100-X) %的概率水平识别出对象上的水印而证实侵权。这一水平取决于所采用的添加水印过程,并且可以使该水平尽可能高(只有100%这一绝对水平是达不到的)。根据所述方法,通过在修改点的场的同时使法向矢量的场保持原样而执行添加水印。修改点的场是指通过移动、去除一些点和/或增加一些点而修改几何结构。其确保了添加水印不能容易地逆转。需要指出,其确保了不能通过单个剪切操作去除水印(与签字只是简单地附加到含有对象规格说明的文件中的情况不同)。添加水印保持法向矢量的场原样。换言之,与通常的表面设计变换不同,添加水印不修改法向矢量的场。其使得添加水印对绘制的影响最小化。实际上,由于法向矢量的场保持相同,因而添加水印并未修改阴影。因而,添加水印从统计学的角度是不为人眼所见的。图3提供了上述讨论的例子。提供初始表面S,该表面是由在图中未表示的初始点的场和通过全箭头表示的法向矢量N定义的。通过修改点的场,同时保持法向矢量的场原样对对象添加水印。由于修改了点的场,因而修改了表面S的几何结构。将其表示为表面S’,该表面是添加水印之后表面S的几何结构。使法向矢量N的场保持原样。将其表示为转移到表面S’上的法向矢量N的场。出于说明的目的,还通过虚线箭头示出了“实际”法向矢量M(即,在几何意义上根据新的几何结构实际与新的表面S’正交的矢量,所述实际法向矢量M可以通过重新计算法向矢量的场获得)的场。可以看出,尽管初始表面S是圆的理想平滑弧形,但是添加水印在新的表面S’中建立了“凸起”。例如,新的表面S’的点Ptl(其未必是点的场中的点)处于凸起的顶部。如果采用由经修改的点的场和实际的法向矢量M的场定义的表面S’绘制对象,那么通过计算施加到对应于点Ptl的像素的阴影的水平表示出点Ptl,其取决于预先定义为眼睛所在位置的位置与实际法向矢量Mtl形成的角度。从例子中可以看出,所述角度相对较大,这意味着所施加的阴影的水平高,就像点Ptl是被月亮照亮的一样。因而,所述凸起变得可见。但是,由于添加水印使法向矢量N的场保持原样,因而实际上施加至对应于点Ptl的像素的阴影的水平并不是那样高,因为该水平是以眼睛所在位置和初始法向矢量形成的相对较小的角度为基础的。因而,所述阴影水平就像是太阳照亮了 Ptl—样。因而,所述凸起并非像绘制当中那样可见。实际上,并未在法向矢量的场上复制通过添加水印在所述表面的几何结构中创建的凸起。因而,所述方法提供了实现水印的视觉“隐匿”的解决方案,其中,对形状造成的扰动在潜在的层面上强到足以可见。实际上,由于使法向矢量的场保持原样,因而添加水印可以包括对点的场执行重要的修改,而这些修改是可见的。使法向矢量的场保持原样允许以高得多的强度施加水印,否则就不可能做到。其提高了面对攻击的鲁棒性,并且提高了 3D添加水印方案的可靠性。添加水印的鲁棒性是其“耐受”表面的变换的能力(即,保留水印的能力)。例如,添加水印的鲁棒性可以使得,在添加水印之后,如果通过变换表面,例如,通过根据“常规”的随机游动(例如遵循正态密度函数或任何其他概率函数,即,时刻t+ι上的位置是时刻t上的位置加u,其中,u是矢量,该矢量的坐标是遵循密度函数N(0,1)的随机变量,其中,N是正态密度函数)修改20% (在其他范例中为50%、75(%或100(%)的点的场中的点的位置,那么仍然无法消除水印。可以通过本身已知的方法,例如,下文解释的方法的例子达到这样的鲁棒性级别。实际上,所述方法还可以包括通过修改点的场,并相应地修改法向矢量的场变换表面的步骤。这样的变换是任何正在针对对象工作的设计者执行的对对象的修改。添加水印越鲁棒,随机变换清除水印的可能性越低。因而,所述方法允许对将被其他设计者重新使用和转换的对象添加水印。此外,由于水印是隐藏的,因而添加水印可以包括修改很多点的场的点(即,对该场全局修改),因而去除水印是非常困难的。在这种情况下,水印的清除对于潜在的侵权者而言是非常困难的,将使其丧失侵权带来的“利益”。在例子中,可以修改高达10%、20%、30%、50%乃至75%的点。或者,添加水印可以更为局域性的,即,局部修改点的场(即,修改表示少于10%的点的连续区域内的点)。这样使得水印可见性降低。因而,所述方法的原理在于将未加标记的模型的法线场重新应用到施加了标记的模型上。这意味着对象携带了所有允许在必要时读出水印但从视觉上又使其看起来就像根本没有施加过标记的扰动。理论上,所述扰动可以保持在侧影上可见(即,在屏幕上的根据模型的点的场的不施加任何阴影的投影),因为侧影仅是位置数据的函数而不是法线图的函数。但是,有一点是众所周知的,那就是面对观察者的表面上的细节比对象侧影上的细节(局部粗糙、凸起)更引人注意(如先前所述的Blirm的1978年的文章中所提到的)。现代的视频游戏对此有着非常广泛的应用。例如,覆盖着疙疙瘩瘩的鳞片的怪物实际上是由完全无特征的身体和含有疙瘩的法线图表示的。由于该生物的形状跨越屏幕移动,因而眼睛被法线图所生成的光的反射的变化所吸引,从而建立起了疙疙瘩瘩的表面的错觉;在对象侧影上不存在所述的疙瘩,但是这一点不受注意。相应地,在所述方法中,在面向观察者的对象表面上隐藏了水印扰动,只有在侧影上所述水印的一些效果仍然可见。因而,所述方法还可以包括根据点的场绘制建模对象的3D表示的步骤。所述绘制可以包括根据点的场计算屏幕上的投影。其提供了对对象的未施加阴影的表现,并且实现了更好的水印的可视化。在添加水印就是在表面上(例如,采用可以和表面上与之直接相邻的周围环境区分开的颜色或者采用浮雕)“书写”文本标签,例如,所有者公司的名称的情况下,这样的绘制允许读出文本。但是,所述绘制还可以包括根据法向矢量对投影施加阴
9影。由于法向矢量是添加水印之前的法向矢量(保持下来的),因而这样的绘制向作为用户的人“隐藏”了水印。从实践的角度来讲,可以直接对含有对象规格说明的文件,例如对表面的定义(特别是点的场和法向矢量的场)应用上述方法,由此对正在设计的对象添加水印。或者,可以出于添加水印的目的创建所述文件的备份。所要散布的是这样的备份。因而,所述方法允许对预先设计好的对象的添加了水印的副本进行设计。严格来讲,要想创建作为另一对象的添加了水印的副本的对象,所提供的表面将是另一对象的表面。由此,添加水印的步骤包括(从所述另一对象的文件)提取点的场以及提取表面的法向矢量的场。之后,如上文讨论的,所述添加水印包括修改点的场,同时使法向矢量的场保持原样。最后,所述添加水印包括向正在设计的对象应用由经修改的点的场和未经修改的法向矢量的场定义的表面,由此正在设计的对象变成了另一对象的添加了水印的副本。所述添加水印可以包括点的场的致密化。所述添加水印还可以相应地包括法向矢量的场的致密化。换言之,提高了点的数量,并且可以根据新的点计算新的法向矢量。在一些情况下,法线初始对象不具有足够数量的能够携带水印的特征点。在这种情况下,可以首先使初始点的场更加致密,这意味着在不改变形状或法线场的情况下插入新的点。全局处理保持相同,唯一的变化是输入更加致密的新的点的场替代初始点的场。点的场的致密化可以包括执行细分(例如,Catmull-Clark或Loop细分)。法向矢量的场的致密化可以包括通过内插先前的法向矢量而创建新的法向矢量。其允许采用大多数CAD软件执行所述方法,所述软件通常允许这样的细分和这样的内插。可以遵循施加水印位序列的方案执行添加水印。因而水印就是水印位序列。为了证明对象的违法使用,可以对对象执行逆处理,以确定位序列。之后,将所确定的位序列与水印位序列进行比较。如果是相同的,就能以取决于添加水印方案的一定程度的概率证明侵权。图4示出了所述方法的例子。在所述例子中,所述方法包括提供所要添加水印的初始对象(其包括对象的表面)的步骤Si。之后,所述方法包括测试是否有足够的点以及在不够时添加新的点的步骤S15。对对象添加水印的步骤S21、S22和S23包括向对象的特征点的位置引入一组扰动,与此同时,从对象提取法线场,尔后对位置和法线场数据进行重新组合,以生成存在于添加了水印的位置信息和初始法线场信息内的新的对象。采用W. H. Cho,Μ. E. Lee,H. Lim 和 S. Y. Park 提出的,在文章 “Watermarkingtechnique for authentication of 3-D polygonal meshes"(Proc. of the InternationalWorkshop on Digital Watermarking' 05,2005,pp. 259—270”)中描述的 3D 添力口水印技术测试所述方法。更具体而言,提供具有长度L的水印位序列。计算所述表面的重心。创建L个同心球(S1,...,,从而(例如)使球Si的半径遵循数学序列(或者,半径可以使得在每一 crown内都具有相同数量的点,下文将对此给出说明),并且最大的球&包括所述点的场的所有的点。之后,在"Crwor^Ci中对点分组,其中,C1 = S1, Ci = Si-Si^1, i的范围是从2到L。每一 crown对应于水印位序列的相应的位Iv之后,基本上将每一 CrownCi内的点JA crown Ci内的重心移开(例如,如果h = 1)或者朝向该重心移动(例如,如果h = 0)。应当指出,如果crown内没有足够的点,那么如上文所述可以使crown内的点致密。相反,要想检验是否已经添加了水印,则计算所述中心,并如上文所述创建L个crown,并且对于每一 crwon而言在点大多数都处于“外部”时(即较S"而言还是更加接近Si的边界)将相应的位屯确定为等于1,在点大多数都处于“内部”时(更加接近SiJ将相应的位屯确定为等于0。之后,可以将如此确定的位序列与水印位序列进行比较,如果相同,那么可以以1-0. 5"L的概率确定存在侵权。在该文章中还提供了更多的有关(例如)如何在crown内将点从重心“移开”或“移向”重心的细节。这样的方法提供了非常鲁棒的添加水印,其能够抵御表面的全局变换(例如放大)以及大部分局部变换,因为位序列是采用全局数据确定的。结果是,如果在绘制中不施加阴影,那么水印将强到足以能够瞬间可见,但是通过所述方法的使用(即根据保持添加水印之前的原样的法向矢量的场对所述表现施加阴影)将得到充分隐藏。在比较未加标记的对象和添加了水印的相同对象,并且两对象都采用阴影法绘制时,很多设计者都被问到过是否察觉到了带有阴影的侧影的修改。对带有阴影的侧影的潜在影响是难以察觉的,即使是富有经验的人也难以用肉眼察觉。上述方法是计算机实现的,这意味着所述方法的步骤是通过计算机执行的。但是,可以通过用户-计算机交互执行对所述方法的至少一些步骤的触发。所需要的用户-计算机交互的水印水平可以取决于所预见的用来与实现用户的迫切要求的需要保持平衡的自动性的水平。在实施例中,这一水平可以使用户规定的和/或是预先规定的。因而,本发明还涉及一种适于执行所述方法的CAD系统。在实践中,为用户提供图形用户界面(或GUI),例如,CATIA的图形用户界面,所述GUI与诸如数据库的用于存储执行所述方法所需的数据的模块相关。参考图5,作为例子的图形用户界面(或GUI) 2100可以是典型的CAD类界面,其具有标准的菜单栏2110、2120以及底部和侧面工具栏2140、2150。这样的菜单栏和工具栏含有一组用户可选图标,每一图标与一个或多个操作或函数相关,这是本领域公知的。这些图标中的一些与软件工具相关,所述软件工具适于编辑和/或处理作为建模产品2000或产品2000的部分的3D对象,例如,在⑶I 2100中显示出了产品2000。在下述说明中,为了简化起见可以将“产品”、“部分”、“组件”等称为“部分”。注意,实际上可以将“部分”这一概念笼统视为“对象”的概念,其中,对象可以只是所设计的产品的“实际”部分,更一般而言,其也可以是任何参与设计过程的软件工具(而未必处于最终的产品“之内”)。可以将软件工具分组成工作台。每一工作台包括软件工具的子集。具体而言,所述工作台之一是编辑工作台,其适于对建模产品2000的几何特性进行编辑。在操作当中,例如,设计者可以预先选择对象2000的部分,之后通过选择适当的图标触发操作(例如,改变尺寸、颜色等)或对几何约束进行编辑。例如,典型的CAD操作是对显示在屏幕上的3D建模对象的冲压或折叠进行建模。例如,⑶I可以显示与所显示的产品2000相关的数据2500。在图5的例子中,显示为“特征树”的数据2500及其3D表示2000属于包括制动卡钳(caliper)和制动盘的制动组件。所述⑶I还可以示出各种类型的图形工具2130、2070、2080,例如,所述工具用于促进所述对象的3D定向,触发对经过编辑的产品的操作的模拟,或者描绘所显示的产品2000的各种属性。可以通过触觉装置控制光标2060,从而允许用户与图形工具进行交互。应当理解,部分2000可以是任何对象,只要其具有的构造能够由CAD/CAM/CAE系统或者任何用于从变化的观察点显示对象的视图的系统定义即可。因而,可以通过计算机在包括指令的计算机程序上实现本发明,所述指令包括用于使上述系统执行上述方法的模块。例如,可以通过数字电子线路或者计算机硬件、固件、软件或其组合实现本发明。可以通过确实地包含在机器可读存储装置内的、供可编程处理器执行的计算机程序产品实现本发明的设备;可以通过可编程处理器执行本发明的方法步骤,所述可编程处理器执行指令的程序,从而通过对输入数据进行运算并生成输出来执行本发明的功能。有利地,可以通过一个或多个计算机程序实现本发明,所述计算机程序可以在可编程系统上执行,所述系统包括至少一个可编程处理器,所述可编程处理器被耦合为与数据存储系统、至少一个输入装置和至少一个输出装置之间进行数据和指令的接收以及数据和指令的发送。所述应用程序可以通过高级过程编程语言或面向对象的编程语言,或者根据预期通过汇编或机器语言实现;在任何情况下,所述语言都可以是编译语言或解释语言。图6示出了客户计算机系统,例如,用户的工作站。客户计算机包括连接至内部通信总线1000的中央处理单元(CPU) 1010以及同样连接至总线的随机存取存储器(RAM) 1070。客户计算机还配备有与连接至总线的视频随机存取存储器1100相关的图形处理单元(GPU)lllO。在本领域,视频RAM 1100又被称为帧缓存器。大容量存储装置控制器1020管理着对诸如硬盘驱动器1030的大容量存储装置的访问。适于确实地包含计算机程序指令和数据的大容量存储装置包括所有形式的非易失性存储器,例如,其包括诸如EPROM、EEPROM和闪速存储器的半导体存储装置;诸如内部硬盘和可移动盘的磁盘;磁-光盘;以及CD-ROM盘1040。上文所述的任何装置均可以由专用设计ASIC(专用集成电路)补充或者结合在其中。网络适配器1050管理对网络1060的访问。客户计算机也可以包括触觉装置1090,例如,光标控制装置、键盘等。在客户计算机中采用光标控制装置,从而允许用户有选择地将光标放在显示器1080的任何预期位置上,如参考图5所提及的。此外,光标控制装置允许用户选择各种命令,输入控制信号。光标控制装置包括很多信号生成装置,用于向系统输入控制信号。典型地,光标控制装置可以是鼠标,采用鼠标的按钮生成信号。
权利要求
1.一种用于设计3D建模对象的方法,其包括步骤-提供(Si)至少一个表面,所述表面由所述表面的点的场和与所述表面正交的法向矢量的场定义;以及-通过修改所述点的场同时使所述法向矢量的场保持原样而对所述对象添加水印(S2)。
2.根据权利要求1所述的方法,还包括根据所述点的场绘制所述建模对象的3D表示的步骤。
3.根据权利要求2所述的方法,其中,所述绘制步骤包括根据所述点的场计算屏幕上的投影。
4.根据权利要求3所述的方法,其中,所述绘制还包括根据所述法向矢量对所述投影施加阴影。
5.根据权利要求1-4中的任何一项所述的方法,其中,所提供的表面是另一对象的表面,并且其中,所述添加水印的步骤包括-提取所述点的场,以及提取所述表面的法向矢量的场,-修改所述点的场同时使所述法向矢量的场保持原样,-向正在设计的对象应用由经过修改的点的场和未经修改的法向矢量的场定义的表面,由此所述正在设计的对象变成了另一对象的添加了水印的副本。
6.根据权利要求1-5中的任何一项所述的方法,其中,所述添加水印的步骤包括所述点的场的致密化并且相应地包括所述法向矢量的场的致密化。
7.根据权利要求6所述的方法,其中,所述点的场的致密化包括执行细分,所述法向矢量的场的致密化包括通过内插先前的法向矢量而创建新的法向矢量。
8.根据权利要求1-7中的任何一项所述的方法,其中,遵循施加了水印位序列的方案而执行添加水印。
9.根据权利要求8所述的方法,在所述添加水印的步骤之后,所述方法还包括步骤-根据添加水印所遵循的方案确定位序列,以及-将所确定的位序列与所述水印位序列进行比较。
10.根据权利要求1-9中的任何一项所述的方法,还包括通过修改所述点的场以及相应地修改所述法向矢量的场而对所述表面加以变换的步骤。
11.根据权利要求1-10中的任何一项所述的方法,其中,在对对象添加水印的步骤中,对所述点的场进行局部或全局修改。
12.根据权利要求1-11中的任何一项所述的方法,其中所述点的场对应于三角形网格,所述法向矢量的场使矢量与所述三角形网格的每一顶点相关,并且/或者所述法向矢量的场是具有查找算子的法线图。
13.一种计算机辅助设计系统,包括-用于存储至少一个表面的模块,所述表面由所述表面的点的场和与所述表面正交的法向矢量的场定义;以及-图形用户界面,适于采用根据权利要求1-12中的任何一项所述的方法设计3D建模对象。
14.一种计算机程序,其包括由计算机执行的指令,所述指令包括使计算机辅助设计系统执行根据权利要求1-12中的任何一项所述的方法的模块,所述计算机辅助设计系统包括用于存储至少一个由表面的点的场和与表面正交的法向矢量的场定义的表面的模块、和适于设计3D建模对象的图形用户界面。
15.一种计算机可读存储介质,其具有记录于其上的根据权利要求14所述的计算机程序。
全文摘要
提供了一种用于设计3D建模对象的方法,其包括步骤提供至少一个表面,所述表面由表面的点的场和与表面正交的法向矢量的场定义;以及通过修改点的场同时使法向矢量的场保持原样而对对象添加水印。这样的方法提供了用于根据3D建模对象的技术,所述对象是通过表面的点的场和与表面正交的法向矢量的场建模的。
文档编号G06T1/00GK102385744SQ20111025404
公开日2012年3月21日 申请日期2011年8月26日 优先权日2010年8月27日
发明者D·邦纳, P·欧克沙内穆伊 申请人:达索系统公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1