CN103150416B - 设计由深度元素表示的建模体 - Google Patents

设计由深度元素表示的建模体 Download PDF

Info

Publication number
CN103150416B
CN103150416B CN201210586049.0A CN201210586049A CN103150416B CN 103150416 B CN103150416 B CN 103150416B CN 201210586049 A CN201210586049 A CN 201210586049A CN 103150416 B CN103150416 B CN 103150416B
Authority
CN
China
Prior art keywords
line
group
initial
depth elements
depth
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.)
Active
Application number
CN201210586049.0A
Other languages
English (en)
Other versions
CN103150416A (zh
Inventor
N·蒙塔那
M·蒙泰伊
R·诺森佐
A·利厄捷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dassault Systemes of America Corp
Original Assignee
Dassault Systemes of America Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dassault Systemes of America Corp filed Critical Dassault Systemes of America Corp
Publication of CN103150416A publication Critical patent/CN103150416A/zh
Application granted granted Critical
Publication of CN103150416B publication Critical patent/CN103150416B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]

Abstract

提供一种用于设计建模体的计算机实现的方法。该方法包括:提供(S10)对建模体的造型处理、初始线,以及初始的一组深度元素,所述初始的一组深度元素代表经历造型处理之后的建模体并且所述初始的一组深度元素基于初始线;接着通过改进初始线提供(S20)新的线;并且确定(S30)新的一组深度元素,所述新的一组深度元素代表经历造型处理之后的建模体并基于新的线,其中确定所述新的一组深度元素包括确定(S31)代表每条新的线和经历造型处理之前的建模体之间的交叉的至少一条线段的组,接着在确定的至少一条线段的组上应用(S32)造型处理。该方法改善了一组深度元素所代表的建模体的设计。

Description

设计由深度元素表示的建模体
技术领域
本发明涉及计算机程序及系统领域,更特别地涉及用于设计由一组深度元素表示的建模体的方法、系统和程序。
背景技术
在市场上提供了许多用于对象设计、工程和制造的系统和程序。CAD是计算机辅助设计的首字母缩略词,例如其涉及用于设计对象的软件解决方案。CAE是计算机辅助工程的首字母缩略词,例如其涉及用于仿真未来产品的物理行为的软件解决方案。CAM是计算机辅助制造的首字母缩略词,例如其涉及用于定义制造处理和操作的软件解决方案。在这种系统中,图形用户界面(GUI)在技术效率方面发挥了重要的作用。这些技术可嵌入产品生命周期管理(PLM)系统中。PLM指的是这样一种经营策略:在扩展企业的概念上帮助公司在产品的从概念到其生命期终止的开发中共享产品数据、应用通用处理并利用共同知识。
达索公司(Dassault Systemes)提供的PLM解决方案(商标为CATIA、ENOVIA以及DELMIA)提供了组织产品工程知识的工程中心、管理制造工程知识的制造中心,以及使得企业能够集成并连接到工程中心和制造中心的企业中心。系统一起传送链接产品、处理、资源的开放对象模型,以实现驱动优化产品定义、制造预备、生产和服务的动态的基于知识的产品创建和决策支持。
这些系统中的一些允许用一组深度元素表示建模体。一些论文或专利文献特别提出使用深度元素表示进行加工仿真或交互造型。
这些文献的例子是:
--Computer-Aided Design and Applications,2009中Xiaobo Peng和WeihanZhang的题为“A Virtual Sculpting System Based on Triple DexelModels withHaptics”的论文;
--Proceedings of the 21st annual conference on Computer graphicsandinteractive techniques,1994中Yunching Huang和James H.Oliver的题为“NCMilling Error Assessment and Tool Path Correction”的论文;
--SM’03Proceedings of the eighth ACM symposium on Solid modelingandapplications中Heinrich Muller,Tobias Surmann,Marc Stauter,FrankAlbersmann,Klaus Weinert的“Online Sculpting and Visualization ofMulti-Dexel Volumes”;
--Virtual and Physical Prototyping,2006中Yongfu Ren,Susana K.LaiYuen以及Yuan-Shin Lee的题为“Virtual prototyping and manufacturingplanning byusing tri-dexel models and haptic force feedback”的论文;
--The International Journal ofAdvanced Manufacturing Technology,1995中Sabine Stifter的题为“Simulation of NC machining based on the dexelmodel:Acritical analysis”的论文;
--Computer Graphics International,1998.Proccedings中Konig,A.H.以及Groller,E.的题为“Real time simulation and visualization of NCmillingprocesses for inhomogeneous materials on low-end graphics hardware”的论文;
--美国专利5,710,709;
--美国专利7,747,418.
GPGPU(图形处理单元上的通用计算)是使用图形处理单元(GPU)的技术,所述图形处理单元典型地仅处理计算机图形的计算,以在传统上由中央处理单元(CPU)处理的应用程序中执行计算。一些论文考虑将现代图形处理单元(GPU)的计算能力用于深度元素表示。这些论文使用LDNI(分层的标准深度图像)算法,其与特定存储器模型相关联。
这些论文的例子是:
--CCP:94:Proceedings of the Seventh International ConferenceonEngineering Computational Technology中B.Tukora和T.Szalay的题为“GPGPU-basedMaterial Removal Simulation and Cutting Force Estimation”的论文;
--Proceedings of ASME international design engineeringtechnicalconferences.Brooklyn(NY)中Charlie C.L.Wang和Yong Chen的题为“LayeredDepth-Normal Images:a Sparse Implicit Representation of SolidModels”的论文。
一些作者建议通过使用分层网格细化管理细节的级别来改善深度缓冲器模型,该深度缓冲器模型是深度元素模型的最简单化身。特别的,这在S.Q.Liu,S.K.Ong,Y.P.Chen,A.Y.C.Nee的题为“Real-time,dynamiclevel-of-detail management for three-axis NCmilling simulation”的论文中被提出。
然而,尤其从用户使用的角度来看,以上列出的解决方案缺乏效率。在此上下文中,仍然需要改良用于设计由一组深度元素表示的建模体的解决方案。
发明内容
因此,根据一个方案,提供了一种用于设计建模体的计算机实现的方法。该方法包括:提供对建模体的造型处理、初始线,以及深度元素的初始组,该深度元素的初始组代表经历造型处理之后的建模体并且该深度元素的初始组基于初始线。初始组中的每个深度元素包括代表每条初始线和建模体之间的交叉的至少一条线段的组。该方法接着包括:通过改进初始线提供新的线。该方法还包括:确定深度元素的新组,该深度元素的新组代表经历造型处理之后的建模体并基于新的线。确定深度元素的新组包括确定代表每条新的线和经历造型处理之前的建模体之间的交叉的至少一条线段的组,接着在确定的至少一条线段的组上应用造型处理。
该方法可包括下述的一个或多个:
-改进初始线包括下列中的任何一个或组合:增加初始线的密度;改变初始线的方向;和/或丢弃初始线的一部分。
-改进初始线包括提供对在经历造型处理之前的建模体的至少一部分进行限定的框、框的视图,以及追踪在视图方向上与框交叉并有预定密度的线。
-深度元素的初始组中的深度元素与影响其的造型操作相关联,该造型处理被作为造型操作序列而提供。
-造型操作被链接到其最后影响的深度元素的线段。
-每个造型操作被链接到深度元素的相应线段,并且所述每个造型操作是之前执行的对相应线段具有影响的造型操作的结果。
-该方法包括在屏幕上显示建模体,其中改进初始线包括增加初始线的密度,直到屏幕上的每个像素具有一条线,由此一条线与屏幕上的每个像素相关联。
进一步提出了一种CAM系统,其包括在其上记录用于执行上述方法的指令的存储器,与存储器耦合的处理器,以及与处理器耦合并适用于指令的执行的至少一个图形用户界面。该处理器可是GPU(图形处理单元)。
进一步提出了一种包括用于执行上述方法的指令的计算机程序。
进一步提出了一种其上记录有上述计算机程序的计算机可读存储介质。
附图说明
现在将通过非限定性例子并参考附图来描述本发明的实施例,其中:
--图1示出了方法的例子的流程图;
--图2示出了图形用户界面的例子;以及
--图3示出了客户端计算机系统的例子;
--图4-图10示出了方法的实例。
具体实施方式
图1示出了用于设计建模体的计算机实现的方法的例子的流程图。该方法包括提供(S10)对建模体的造型处理、初始线,以及深度元素的初始组。深度元素的初始组表示经过造型处理之后的建模体并且其基于初始线。初始组中的每个深度元素包括表示在每个初始线和建模体之间的交叉的至少一条线段的组。该方法接着包括通过改进初始线而提供(S20)新线。该方法进一步包括确定(S30)深度元素的新组,该新组表示经过造型处理之后的建模体并且其基于新线。确定(S30)深度元素的新组包括确定(S31)表示在每个新线和经过造型处理之前的建模体之间的交叉的至少一条线段的组,接着在所确定的至少一条线段的组上应用(S32)造型处理。此方法改进了建模体的深度元素表示。
该方法可以包括在设计CAD建模对象的处理中。“设计CAD建模对象”是指详细描述建模对象的处理的至少一部分的任意动作或动作序列。因此,该方法可以包括从草图(scratch)开始创建CAD建模对象。可替换的,该方法可以包括提供之前创建的CAD建模对象,接着修改所述CAD建模对象。无论如何,该方法设计的建模体可代表CAD建模对象或CAD建模对象的至少一部分,例如CAD建模对象占用的3D空间。由于该方法改善了深度元素组所表示的建模体的设计,所以该方法也改善了CAD建模对象的设计。
建模对象是由存储在计算机系统的存储器中的数据所定义的任何对象。通过扩展,“建模对象”的表述是指数据本身。CAD建模对象是由在CAD系统的存储器中存储的数据所定义的任何对象。根据系统的类型,建模对象可由不同类型的数据所定义。CAD系统是至少适合于基于建模对象的图形表示设计建模对象的任何系统,例如CATIA。因此,定义CAD建模对象的数据包括允许表示建模对象的数据(例如几何数据,如包括空间中的相对位置)。
该方法可包括在制造处理中,制造处理可以包括:在执行该方法之后,产生与建模体相对应的物理产品。无论如何,该方法设计的建模体可以表示制造对象。因此,建模体可为建模固体(即,表示固体的建模对象)。制造对象可为产品,例如零件或零件的组件。由于该方法改善了建模体的设计,所以该方法也改进了产品的制造,并因此增加了制造处理的生产率。可使用例如DELMIA之类的CAM系统来实施该方法。CAM系统是至少适于定义、仿真和控制制造处理和操作的任何系统。
该方法是计算机实现的。这意味着该方法在至少一个计算机或任何类似的系统上执行。除非另有说明,否则该方法的所有步骤由计算机执行,即无需用户的干涉。例如,确定步骤(S30)可由单独的计算机执行,而提供步骤(S10)和提供步骤(S20)可通过用户交互执行。事实上,提供步骤(S10)可预先由用户执行。因此,该方法允许基于用户可能提供(S20)的新线对表示建模体的深度元素组进行自动修改。
该方法的计算机实现的典型例子是使用适合此目的的系统执行该方法。该系统可包括其上记录有用于执行该方法的指令的存储器。换句话说,软件已经在存储器上准备好以立即使用。该系统因此适于执行该方法而不需要安装任何其它软件。这样的系统也可包括用于执行指令的与存储器耦合的至少一处理器。换句话说,该系统包括在耦合到处理器的存储器上编码的指令,所述指令提供用于执行该方法的模块。这种系统是用于设计建模体的有效工具。
这种系统可以是CAD系统。该系统也可以是CAE和/或CAM系统,并且CAD建模对象也可以是CAE建模对象和/或CAM建模对象。事实上,CAD、CAE以及CAM系统并非彼此排他的,这是因为建模对象可由与这些系统的任何组合相对应的数据定义。
系统可包括用于例如由用户发起指令的执行的至少一个GUI。尤其是,GUI可允许用户执行提供步骤(S10)。这可在提供(S20)之前完成。或者,在用户通过优化初始线而提供(S20)新线时获取造型处理、初始线和深度元素的初始组。GUI也可以允许用户提供造型操作(S20)。GUI可以包括GPU。在这种情况下,处理器可以为GPU。换句话说,执行该方法的至少部分步骤(特别是执行确定(S30)步骤)的处理器可以为GPU。这种系统是用户设计建模体的有效工具。由于基于深度元素的算法很好地适于大规模并行硬件,所以很自然的想到使用现代图形处理单元(GPU)的计算能力。
建模体可为3D(即三维)。这意味着建模体是由允许其3D表示的数据定义的。3D表示允许从所有角度查看所表示的体。例如,当使用3D表示时,可以处理建模体并可以围绕着建模体的任何轴或围绕在其上显示所述表示的屏幕中的任何轴转动该建模体。这特别地排除了不是3D建模的2D图标。3D表示的显示有利于设计(即,提高了设计者统计地完成其任务的速度)。这加速了工业的制造过程,这是因为产品的设计是制造处理的一部分。
图2示出了代表性的CAD系统的GUI的例子。
GUI 2100可以是代表性的类CAD界面,具有标准的菜单栏2110、2120以及底部和侧面工具栏2140、2150。本领域公知的是,这样的菜单栏和工具栏包括一组用户可选图标,每一图标与一个或多个操作或功能相关联。这些图标中的一些与软件工具相关联,适用于对在GUI 2100上显示的3D建模对象2000进行编辑和/或在其上工作。软件工具可分组为工作台。每一工作台包括软件工具的子集。特别地,工作台之一是编辑工作台,适用于编辑建模产品2000的几何特征。在操作中,例如,设计者可通过选择合适的图标来预先选择对象2000的一部分,并接着发起操作(例如造型操作、或任何其它操作,例如改变维度、颜色等等)或编辑几何约束。例如,典型的CAD操作是对在屏幕上显示的3D建模对象的冲压或折叠进行建模。
GUI可以例如显示与被显示的产品2000相关的数据2500。在图2的例子中,显示为“特征树”的数据2500及其3D表示2000属于包括制动钳和盘的制动组件。GUI可进一步示出例如有助于对象的3D定向、触发所编辑的产品的操作的仿真的各种类型的图形工具2130、2070、2080,或呈现所显示的产品2000的各种属性。指针2060可由触觉装置控制以允许用户与图形工具交互。
图3示出了作为客户端计算机系统(例如,用户的工作站)的系统的架构的例子。
客户端计算机包括连接到内部通信总线1000的中央处理单元(CPU)1010、也连接到总线的随机存取存储器(RAM)1070。客户端计算机还设置有图形处理单元(GPU)1110,该图形处理单元1110与连接到总线的视频随机存取存储器1100相关联。视频RAM 1110在本领域内也称为帧缓冲器。大容量存储装置控制器1020管理对大容量存储装置(例如,硬盘驱动器1030)的访问。适于有形地体现计算机程序指令和数据的大容量存储装置包括所有形式的非易失性存储器,举例来说包括半导体存储装置,例如EPROM、EEPROM以及闪存装置;磁盘,例如内部硬盘以及可移动磁盘;磁光盘;以及CD-ROM盘1040。前述提及的任何装置可由特殊设计的ASIC(专用集成电路)补充或集成在ASIC中。网络适配器1050管理对网络1060的访问。客户端计算机也可包括触觉装置1090,例如指针控制装置、键盘等等。如参考图2所提及的,指针控制装置用在客户端计算机内,以允许用户将指针选择性地定位在屏幕1080的任何期望的位置。对于屏幕,其意味着可以在其上执行显示的任何支持设备,例如计算机监视器。另外,指针控制装置允许用户选择各种命令,和输入控制信号。指针控制装置包括向系统输入控制信号的若干信号生成装置。典型地,指针控制装置可为鼠标、用于产生信号的鼠标按钮。
为了使得该系统执行该方法,提供包括用于由计算机执行的指令的计算机程序,所述指令包括用于此目的的模块。该程序可以例如在数字电子电路中实现,或在计算机硬件、固件、软件或其组合中实现。本发明的装置可以用计算机程序产品实现,该计算机程序产品有形地体现在机器可读存储装置中并由可编程处理器执行;本发明的方法步骤可由通过操作输入数据并生成输出执行指令程序以实现本发明功能的可编程处理器执行。指令可有利地在一个或多个计算机程序中实现,所述一个或多个计算机程序在可编程系统上是可执行的,该可编程系统包括耦合来从数据存储系统接收数据和指令并向数据存储系统传输数据和指令的至少一个可编程处理器、至少一个输入装置和至少一个输出装置。应用程序可使用高级过程编程语言或面向对象编程语言实现,或者如果希望的话使用汇编语言或机器语言实现;无论如何,语言可以是编译语言或解释型语言。程序可以是完整安装程序或更新程序。在后一种情况下,程序将现有的CAD系统更新到使该系统适于执行该方法的状态。
该方法使用表示建模体的深度元素组。这允许建模体的轻度表示(换句话说,可使用很少的存储空间表示建模体)。这也使得建模体的表示更易于控制。尤其是,在建模体由深度元素组表示时,由于深度元素组的数据结构,可以十分有效地执行建模体的设计操作。事实上,可以以高响应和高健壮性执行设计操作。尤其是,对深度元素组的操作可通过并行处理基于逐线执行,以便获得效率。
在步骤(S10)提供的深度元素的初始组是基于初始线(即第一线)的第一组深度元素,而深度元素的新组是基于新线的第二组深度元素,所述新线是在步骤(S20)提供的第二线。
术语“深度元素(dexel)”众所周知是“深度元素(depth element)”的缩略(就像术语“像素(pixel)”是“图像元素(picture element)”的缩略一样)。深度元素的概念在大量的研究论文中均有提及。在该方法的上下文中,深度元素包括至少一条线段(即一对3D点)的组。在例子中,建模体包括至少一个深度元素,该深度元素包括至少两条线段的组(例如,深度元素的初始组和/或深度元素的新组包括至少两条线段)。如果深度元素的线段是几个的话,则深度元素的线段可为有序的(在这种情况下,深度元素是列表)或是无序的。深度元素的线段表示线和建模体的交叉。换句话说,考虑到虚拟线和建模体交叉,深度元素是来源于给定线的线段的组并且由交叉的计算产生。为此原因,就说深度元素是基于线的(即,深度元素的线段依赖于线)。例如,深度元素的初始组基于初始线,而深度元素的新组基于新线。提供(S10)深度元素的初始组和/或确定(S30)深度元素的新组因此可以包括计算这样的交叉,例如通过追踪虚拟线并计算其与建模体的交叉,该建模体初始可由B-Rep或任何其它体表示所表示。因此深度元素的组表示建模体。
值得重视的是,深度元素的组被提供为计算机实现的数据。因此,在以上和以下提供的关于建模体的任何表示的定义具有来自数据结构角度的含义。例如,线段可以被提供为一对3D位置(例如,彼此链接的两个3D位置)。3D位置本身可以被提供为与参考3D框架相关联的三个坐标(例如,浮点)的列表。深度元素是线段的组,这意味着线段是在组结构中链接在一起的。深度元素组中的深度元素也可链接到一起。由深度元素组表示建模体(所述深度元素本身包括至少一条线段的组)允许快速的确定(S30)。
现在参考图4-图6示出深度元素的概念,图4-图6呈现了将深度元素的初始组作为深度元素结构67提供(S10)的步骤的例子。确定(S30)深度元素的新组也可基于图4-图6的例子来执行。
给定建模体和给定无限线,深度元素是表示无限线和建模体的交叉的线段(或间隔)的组。在存储器中,将线段的该组捕获为每条线段的一组边界点。深度元素结构是被组织(例如,被在直角坐标网上排序)的一组深度元素(每个包括一组线段)。图4和图5示出了建模体40以及10×10网格线50。如图4所示出的,本例子的方法包括提供建模体40,例如B-Rep。如图5所示,本例子的方法接着包括定义与建模体40(至少部分)交叉的10×10网格线50。如图6所示出的,本例子的方法接着包括计算包括线段60和/或线段62的组的深度元素65。在图中圈出了一个深度元素65。深度元素65可包括几条线段60或一条线段62,这取决于线50与建模体40是在一个点上还是在几个分开的点处交叉。当然,可替换地,该方法可以从存储器获取深度元素65。无论如何,都因而提供了深度元素结构67。
图6示出了获得的深度元素结构67。值得注意的是,不是所有的线50都与建模体40交叉(在例子中,只有五十二条线与建模体40交叉),从而产生出许多深度元素65(不与建模体40交叉的线事实上可被丢弃并且不产生深度元素)。此外,一些线50通过一条线段62与建模体40交叉(例如,深度元素(2,3)或深度元素(9,6)),而其它线通过几条线段60与建模体40交叉,例如通过两条线段(例如深度元素(7,7)或深度元素(4,7)),或通过三条线段(深度元素(2,8)或深度元素(5,8)),或通过四条线段(深度元素(2,9)或深度元素(4,9))。获得的深度元素结构67包括五十二个深度元素65,该五十二个深度元素65包括具有一条线段62的三十六个深度元素65、具有两条线段60的六个深度元素65、具有三条线段60的五个深度元素65以及具有四条线段60的五个深度元素。
在(S10)提供的(或在(S30)确定的)一组深度元素可为三维深度元素(tridexel)结构。三维深度元素结构是通过包括三个深度元素结构定义的,典型的,一个深度元素结构平行于x轴,一个深度元素结构平行于y轴,并且一个深度元素结构平行于z轴。该方法可包括在任何时间(例如,在提供(S20)和确定(S30)期间)显示建模体的图形表示。此显示可基于深度元素的组(深度元素的初始组或深度元素的新组,这取决于显示发生在何时)。由于三维深度元素结构较少依赖于“观察方向”,所以三维深度元素结构提供良好的显示。尤其当用户改变视角时,三维深度元素结构提供更精确的显示。
图6-图8中的每个代表表示相同建模体的深度元素结构。换句话说,可由三维深度元素数据定义建模体,该三维深度元素数据包括图6-图8的三个深度元素结构。图6示出了沿着y轴的深度元素结构67。图7示出了沿着x轴的深度元素结构68。图8示出了沿着z轴的深度元素结构69。在每个图中,深度元素的线平行于各自的轴。
在数据中也可以提供在线段的终点处建模体的边界的外部法向量。这允许更精细地呈现建模体。
该方法还包括提供对建模体的造型处理。造型处理是具有至少一个造型操作的任何序列。造型操作是系统提供的用于对建模体进行造型的任何操作。通过对建模体造型,意味着通过布尔运算从建模体增加和/或移除体。因此,造型操作是建模体上的至少一个体布尔运算的任意组合。例如,局部体移除和局部体增加是造型操作,而表面的挤压不是造型操作,这是因为其并不是基于布尔运算的。在例子中,造型操作是一系列连续的布尔运算,其涉及在持续时间段内被增加到建模体(或从其减去)的连续体(即,非间断的)。例如,造型操作表示机械加工操作。
因此,一组深度元素可表示任何固体,造型处理可仿真固体的真正造型。特别地,利用计算机辅助设计系统可将该方法包括在实时加工仿真中。换句话说,固体可为原料,而该方法可显示由切削刀具虚拟加工的原料的形状。在这种情况下,建模体代表原料,而处理是切削处理。此实例可推广到在向零件增加材料的其他制造过程,例如在虚拟粘土上的合成制造和形状造型。也可推广到所有的传统固体建模应用,包括机械设计、形状设计、建筑结构等等。最后,由于其工作能力,该方法可处理更加高级的应用,例如交互式3D造型。更通用的,造型操作可代表机械加工操作。在这种情况下,建模体可代表经历机械加工操作的工件,因此该方法改善了工件加工的仿真。从而该方法可以作为测试虚拟加工过程的良好基础。
事实上,该方法进一步包括通过改进(即,应用户请求而修改)初始线而提供(S20)新的线以及确定(S30)深度元素的新组,该深度元素的新组代表经历造型处理之后的建模体并且其基于新的线。换句话说,该方法将造型处理应用到新的线,或者换言之,根据造型处理,该方法基于新的线确定由一组深度元素定义的建模体的造型结果。基于改进的一组线,深度元素的新组表示造型(例如加工)之后的对象。因此,该方法允许朝着更精细的表示来修改已经经历造型处理的建模体的表示。
每个深度元素包括一组线段。线与建模体交叉的所有线段被分组为一个深度元素。例如由于其允许并行处理,因而允许对建模体的逐线的以及因此更有效率的处理。事实上,在逐线的基础上,该方法可由并行处理执行。
并行处理由系统同时执行多个任务所组成。在该方法的情况下,确定(S30)深度元素的新组可包括对每个新的线运行单一的指令线程。确定(S30)深度元素的新组因此可由SIMD(单指令多数据)并行处理执行。特别地,执行该方法的系统的处理器可为大型并行处理单元,例如如果所述系统联网有10个或100个以上的处理器。
在例子中,该方法包括由用户执行的加工仿真阶段(或在该阶段之后执行该方法)。按照现在的情况,一组深度元素总是为代表任何固体(例如工件)的建模体的表示。在加工仿真阶段,用户在深度元素的“起源”组上应用造型处理。如以上参考图4-图8所讨论的,深度元素的“起源”组可从存储器获取,或者通过一组“起源”线与参考体(例如存储为诸如B-Rep的原料)交叉而获得。在深度元素的“起源”组上应用造型处理可根据任何公知的程序执行。例如,如果造型处理包括切削操作,则受影响的深度元素可被减去其一条或多条线段,或者其一条或多条线段可被缩短。相反,如果造型处理包括材料添加操作,则可看到受影响的深度元素的一条或多条线段被延长或者增加一条或多条新线段。最后,在深度元素的“起源”组上应用造型处理修改了所述深度元素组,以便获得深度元素的初始组。关于造型处理的数据和关于参考建模体(例如B-Rep或深度元素的起源组)的数据也被保存。
此时,用户(可能是相同的用户或另一个用户)可执行该方法。例如,该用户可以获取深度元素的初始组。根据此数据,可确定初始线。可替换的,可能已经存储了初始线,并且该方法可包括直接获取初始线。同样,该方法包括提供加工阶段的造型处理。换句话说,提供指示建模体已经经历的造型处理(以便根据参考体达到深度元素的初始组)的数据。这允许在任何时间获取建模对象的造型历史。可向用户显示深度元素的初始组。
接着,该方法通过改进初始线而提供(S20)新的线。改进初始线可为由用户执行的任何请求,用以修改建模体的表示(此时,这样的表示是深度元素的初始组)。改进初始线可包括以下的任意一个或其组合:增加初始线的密度(即每个体单位的数量);改变(至少一部分)初始线的方向;和/或丢弃(即删除)部分初始线。换句话说,用户请求建模体的新表示,该方法通过提供与建模体交叉的新的线而处理这样的请求。在步骤(S30)确定新的深度元素,并可向用户显示新的表示。这允许根据用户的请求对建模体的表示进行有效修改。因此,这可允许对显示给用户的建模体的表示进行按需修改。因此可有助于用户的工作,例如进一步的加工仿真阶段。
例如,用户可请求缩放。在此情况下,该方法可选择建模体的与请求的缩放区域相应的区域,并丢弃没有穿过该区域的初始线。该方法可进一步增加穿过该区域的线的密度,这产生新的线。该方法也可包括修改(显示器的)视角,因此包括修改初始线的方向以便根据新的视角定向。这允许更好的表示,尤其是在屏幕上建模体的投影边界。
同样,用户可在任何时间请求造型处理的高清晰度可视化。在此情况下,该方法可包括增加线的数量,例如增加到每像素一条线。例如,一条线可与屏幕上的每个像素相关联。换句话说,一条线通过屏幕的每个像素,并可与建模体交叉。这允许在使用最理想数量的线的同时进行最优的显示。
该方法确定(S30)深度元素的新组,该深度元素的新组代表经历造型处理之后的建模体并且基于新的线。这可通过确定新的线与参考体(即未处理的建模体)的交叉而完成,即确定(S31)代表每个新线和经历造型处理之前的建模体之间的交叉的至少一条线段的组,接着在确定出的至少一条线段的组上应用(S32)造型处理(根据任何已知的方法,正如以上所讨论的)。
通过保持关键数据,例如关于造型处理的数据以及关于建模体经历造型处理之前的数据,该方法可改进代表建模体的深度元素组,并且例如因此在任何时候以有效的方式基于一组深度元素改进建模体的显示。事实上,该方法可专门提供新的线,接着对这些新线执行操作以将这些新的线缩减成定义深度元素的线段的组。这从处理器的角度呈现了高效率。同样,此改进是非常健壮的,并响应于用户的请求(该方法的执行是安全和快速的)。这在将建模体显示给用户时是十分有益的,用户提供新的线以便实时修改显示。
可基于用户的动作,例如作为用户与深度元素的初始组的图形显示交互的结果,执行初始线的改进。例如,改进初始线可包括提供对在经历造型处理之前的建模体的至少一部分进行限定的框、框的视图,以及追踪沿视图方向与框交叉并有预定密度的线。该框典型的可为平行六面体、球体或任何体,其对至少部分建模体进行限定。例如,用户可使用系统的触觉装置例如通过定义一个或多个照相机的位置和/或方向而选择视角,从而该方法自动提供相应的框。现在,可以根据或不根据(例如相同的)用户动作而定义框的视图。通过“视图”,意味着显示建模体的角度。因此,可在视图的方向上执行对与框交叉的线的追踪(即,绘出)(即每个被追踪的新线可相应于观看对象的方向)。换句话说,可沿着建模体的点投影在屏幕上的方向追踪线。值得注意的是,所述线可为平行的或非平行的。观看的方向实际上可以是单个,但也可以是多个,例如在圆锥透视的情况下。在任何情况下,总是根据观看所应用的方向(该方向可能每条线都不同)而追踪线。
深度元素的初始组中的深度元素可与影响其的造型操作相关联。在此情况下,造型处理被设置为一系列所述造型操作(例如,关于造型操作被执行的顺序的信息也被存储)。换句话说,为深度元素的初始组提供的数据可包括关于影响每个深度元素(即,修改深度元素的几何形状)的造型操作的信息。这允许有效率地应用(S32)。事实上,在提供(S20)之后,可保存一些初始线。通过将造型操作关联到深度元素或等同地关联到与所述深度元素相对应的线,该方法可以将造型处理应用(S40)为与保存的初始线相关联的造型操作序列,而非所有的造型操作序列。
造型操作可链接到造型操作最后影响的深度元素的线段。换句话说,在步骤(S10)提供的数据包括在造型操作和深度元素的线段之间的链接,因此通过其线段将造型操作关联到深度元素。这些线段是最后被所述造型操作影响的线段。
可替换地,每个造型操作被链接到深度元素相应线段,并且是之前执行的对各个线段具有影响的造型操作的结果。换句话说,组合若干造型操作以提供“合成”操作。这样,存储器被保存,并且以最优的方式将之前执行的造型操作作为导致对深度元素产生相同影响的单一造型操作进行存储。因此可更快速地执行应用步骤(S32)。
深度元素线段的每个末端可配备有基本操作参考字段(例如整数)。例如,在加工仿真的情况下,基本操作参考是对双方的参考(工具,例如切削工具或材料增加工具以及轨迹元素)。在仿真期间,当更新深度元素线段的末端时,将参考字段更新为造型处理中引起所述更新的对应基本操作参考。换句话说,每个线段的末端指向其修剪操作。
从而通过根据初始网格计算初始值并随后只进行造型操作的子集(通常是实际上对所表示的固体的当前状态的边界有贡献的布尔运算),来加速应用(S32)。这在当前固体状态导致大量造型操作时是十分有利的,其是所述方法的一个选择。例如,加工仿真通常可以处理由对扫描固体进行的无数局部布尔运算导致的固体状态。
由于可在任意小的并且因此是精细网格上执行有效的改进过程,所以在可负担的响应时间内提供了按需的任意精度。在实践中,这使得能够在合理的计算时间内实现局部精确缩放或改进计算。
现在讨论方法的例子。
给定造型处理,给定造型处理在其上之前执行到特定程度的参考网格,以及给定框,改进过程将在适合给定框的更精细的网格上再次执行造型处理。所述框捕获用户定义的新的缩放和视点。为了使得该执行有效率,所述过程执行下述步骤。
1.收集属于该框的一组线段端点,从所述一组线段端点搜集两种信息。首先是结果的几何近似,第二是与所收集的深度元素的端点相关联的一组基本操作参考。
2.根据收集的近似几何体初始化更精细网格。在负布尔运算(集合差)的情况下是上(包含)近似,例如加工操作,或在正布尔运算(并集、闵可夫斯基和等等)的情况下是下近似(被包含近似)。
3.在精细网格上执行与收集的基本操作参考相对应的造型处理的子集。在加工仿真情况下,如果一些收集到的深度元素线段的末端涉及,则这可包括初始化初始固体并重进行所有收集的轨迹元素。
由于更精细网格通常在参考网格的小子集上执行,所以需要执行的一组基本操作很可能比整个场景小很多。参考图9-图10,与更精细网格相对应的框可为不与轴系统平行的平行六面体90,或者如果改进的目标是局部可视化(缩放)则为截头锥体100。在后者的情况下,网格中的新线102不平行于给定的方向,而是适于圆锥透视。如所见的,新线92或102可为与初始深度元素94和104不同的方向。

Claims (8)

1.一种用于设计建模体的计算机实现的方法,其中所述方法包括:
关于建模体,将造型处理提供(S10)成造型操作的序列、初始线以及初始的一组深度元素,其中,所述初始的一组深度元素表示经历所述造型处理之后的所述建模体并且所述初始的一组深度元素基于所述初始线,所述初始组中的每个深度元素包括表示每条初始线和所述建模体之间的交叉的线段的组,其中不同初始线的交叉由各自不同的线段的组表示,并且其中所述初始的一组深度元素的深度元素与影响所述深度元素的所述造型操作序列相关联;
通过改进所述初始线提供(S20)新的线,其中,改进所述初始线包括下面的至少一个:(i)增加所述初始线的密度以及(ii)丢弃所述初始线的一部分;并且
确定(S30)新的一组深度元素,所述新的一组深度元素表示经历所述造型处理之后的所述建模体并且所述新的一组深度元素基于所述新的线,其中确定所述新的一组深度元素包括(i)确定(S31)线段的组,所确定的线段的组中的每一组表示所述新的线中不同的新的线和经历所述造型处理之前的所述建模体之间的交叉,其中,通过获取所述建模体的历史来确定所述线段的组,并且(ii)在所确定的线段的组上使用与所述初始的一组深度像素相关联的所述造型操作序列来应用(S32)所述造型处理,其中,相关联的深度像素与被保持为所述新的线的一部分的所述初始线的线相对应。
2.如权利要求1所述的方法,其中改进所述初始线包括提供对经历所述造型处理之前的所述建模体的至少一部分进行限定的框、所述框的视图,以及追踪在所述视图的方向上与所述框交叉并有预定密度的线。
3.如权利要求1所述的方法,其中所述造型操作被链接到所述造型操作最后影响的深度元素的线段。
4.如权利要求1所述的方法,其中所述造型操作中的每一个被链接到所述深度元素的相应线段,并且是之前执行的对所述相应线段具有影响的造型操作的结果。
5.如权利要求2所述的方法,其中所述方法包括在屏幕上显示所述建模体,并且其中改进所述初始线包括增加所述初始线的密度,直到所述屏幕的每像素具有一条线,由此一条线与所述屏幕的每个像素相关联。
6.一种CAM系统,包括:
存储器,在其上记录用于执行如权利要求1-5的任一项所述的方法的指令,
与所述存储器耦合的处理器,以及
与所述处理器耦合并适用于所述指令的执行的至少一个图形用户界面。
7.如权利要求6所述的系统,其中所述处理器是GPU。
8.一种用于设计建模体的计算机实现的装置,其中所述装置包括:
用于关于建模体,将造型处理提供(S10)成造型操作的序列、初始线以及初始的一组深度元素的单元,其中,所述初始的一组深度元素表示经历所述造型处理之后的所述建模体并且所述初始的一组深度元素基于所述初始线,所述初始组中的每个深度元素包括表示每条初始线和所述建模体之间的交叉的线段的组,其中不同初始线的交叉由各自不同的线段的组表示,并且其中所述初始的一组深度元素的深度元素与影响所述深度元素的所述造型操作序列相关联;
用于通过改进所述初始线提供(S20)新的线的单元,其中,改进所述初始线包括下面的至少一个:(i)增加所述初始线的密度以及(ii)丢弃所述初始线的一部分;并且
用于确定(S30)新的一组深度元素的单元,所述新的一组深度元素表示经历所述造型处理之后的所述建模体并且所述新的一组深度元素基于所述新的线,其中确定所述新的一组深度元素包括(i)确定(S31)线段的组,所确定的线段的组中的每一组表示所述新的线中不同的新的线和经历所述造型处理之前的所述建模体之间的交叉,其中,通过获取所述建模体的历史来确定所述线段的组,并且(ii)在所确定的线段的组上使用与所述初始的一组深度像素相关联的所述造型操作序列来应用(S32)所述造型处理,其中,相关联的深度像素与被保持为所述新的线的一部分的所述初始线的线相对应。
CN201210586049.0A 2011-11-03 2012-11-02 设计由深度元素表示的建模体 Active CN103150416B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11306422.4A EP2590142B1 (en) 2011-11-03 2011-11-03 Designing a modeled volume represented by dexels
EP11306422.4 2011-11-03

Publications (2)

Publication Number Publication Date
CN103150416A CN103150416A (zh) 2013-06-12
CN103150416B true CN103150416B (zh) 2018-01-19

Family

ID=45218588

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210586049.0A Active CN103150416B (zh) 2011-11-03 2012-11-02 设计由深度元素表示的建模体

Country Status (6)

Country Link
US (1) US9117300B2 (zh)
EP (1) EP2590142B1 (zh)
JP (1) JP6042697B2 (zh)
KR (1) KR101944544B1 (zh)
CN (1) CN103150416B (zh)
CA (1) CA2794151C (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2590144B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Designing a modeled volume represented by dexels
EP2590143B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Simulation of the machining of a workpiece
CN104345686B (zh) * 2013-08-07 2016-12-28 中国科学院沈阳计算技术研究所有限公司 二维双向dexel毛坯建模方法及其加工仿真方法
CN107077123A (zh) 2014-10-29 2017-08-18 三菱电机株式会社 数控装置、nc加工装置及nc加工方法
EP3040797B1 (en) 2014-12-31 2020-10-28 Dassault Systèmes Simulating the machining of a workpiece
JP2018532182A (ja) * 2015-09-07 2018-11-01 シーメンス プロダクト ライフサイクル マネージメント ソフトウェアー インコーポレイテッドSiemens Product Lifecycle Management Software Inc. モデリング方法およびモデリングシステム
EP3503037A1 (en) * 2017-12-24 2019-06-26 Dassault Systèmes Visibility function of a three-dimensional scene

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833617A (en) 1987-08-14 1989-05-23 General Electric Company Solid modeling based adaptive feedrate control for NC machining
US5710709A (en) 1993-08-19 1998-01-20 Iowa State University Research Foundation, Inc. NC milling simulation and dimensional verification via dexel representation
DE19846426A1 (de) 1998-10-08 2000-04-13 Open Mind Software Technologie Verfahren zum Steuern der Arbeitsbewegung eines Werkzeugs zur materialabtragenden Bearbeitung eines Materialblocks
JP3571564B2 (ja) * 1999-02-15 2004-09-29 独立行政法人 科学技術振興機構 表示方法及び表示プログラムを記録したコンピュータ読み取り可能な記録媒体及び表示装置
US20020133264A1 (en) 2001-01-26 2002-09-19 New Jersey Institute Of Technology Virtual reality system for creation of design models and generation of numerically controlled machining trajectories
DE10330831A1 (de) 2003-07-08 2005-02-10 Mtu Aero Engines Gmbh Fräsverfahren zur Fertigung von Bauteilen
KR100517880B1 (ko) 2003-11-20 2005-09-28 학교법인 포항공과대학교 Cnc 가공에서 생산시간 단축과 가공 정밀도 향상을위한 이송속도 스케줄링 방법
US7747418B2 (en) 2005-12-09 2010-06-29 Leu Ming C Computer aided dental bar design
JP2009110100A (ja) * 2007-10-26 2009-05-21 Toshiba Corp Cadシステムおよび部品配置方法
DE102007059568A1 (de) 2007-12-11 2009-06-18 Mtu Aero Engines Gmbh Tauchfräsverfahren
DE112009004371T5 (de) 2009-01-15 2012-08-02 Mitsubishi Electric Corporation Kollisionsbestimmungsvorrichtung und Kollisionsbestimmungsprogramm
US8538574B2 (en) 2009-04-02 2013-09-17 Dmg Electronics Gmbh Method and apparatus for generating control data for controlling a tool on a machine tool
US8265909B2 (en) * 2009-05-19 2012-09-11 Mitsubishi Electric Research Laboratories, Inc. Method for reconstructing a distance field of a swept volume at a sample point
WO2011042764A1 (en) 2009-10-06 2011-04-14 Pécsi Tudományegyetem Method, computer system and computer program product for machining simulation and for visually presenting such simulation
CN102472617B (zh) 2009-11-10 2014-07-02 三菱重工业株式会社 工件测量装置、防止碰撞装置和机床
EP2590143B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Simulation of the machining of a workpiece
EP2590144B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Designing a modeled volume represented by dexels
US9177360B2 (en) * 2012-09-11 2015-11-03 Apple Inc. Automatic image orientation and straightening through image analysis

Also Published As

Publication number Publication date
EP2590142B1 (en) 2018-03-14
US9117300B2 (en) 2015-08-25
EP2590142A1 (en) 2013-05-08
KR20130049161A (ko) 2013-05-13
US20130116983A1 (en) 2013-05-09
KR101944544B1 (ko) 2019-01-31
JP2013097812A (ja) 2013-05-20
JP6042697B2 (ja) 2016-12-14
CN103150416A (zh) 2013-06-12
CA2794151A1 (en) 2013-05-03
CA2794151C (en) 2020-09-15

Similar Documents

Publication Publication Date Title
CN103150416B (zh) 设计由深度元素表示的建模体
JP6282798B2 (ja) 工作物の機械加工のシミュレーション
JP6469987B2 (ja) 三次元モデル化オブジェクトの圧縮
KR101955035B1 (ko) 기하학적 3차원 모델링된 오브젝트를 디자인하는 방법
JP6787661B2 (ja) 工作物の機械加工のシミュレート
KR102040988B1 (ko) 복수의 3d 곡선들로부터의 표면 생성
JP6721332B2 (ja) 3dモデル化されたアセンブリ上で境界ボックスを生成すること
CN104217066B (zh) 利用2d视图设计3d建模对象
CN103631981B (zh) 设计由深度元素表示的建模体
KR101925640B1 (ko) 3차원 장면에서 오브젝트들의 3차원 모델링된 어셈블리의 디자인
CN104239601B (zh) 织物片组合的仿真
KR20140139984A (ko) 3d 모델링된 오브젝트의 압축 및 압축해제
KR20140142470A (ko) 나무 모델과 숲 모델 생성 방법 및 장치
Wang et al. Advantages analysis of synchronous modeling technology based on solid edge
Van Gestel et al. Procedural modelling of destructible materials
CN115087982A (zh) 计算机辅助设计对象的基于机器学习的选择性实体化
Silva et al. Procedural Modelling of Destructible Materials

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant