CN1533521A - 重构表面的方法和系统 - Google Patents
重构表面的方法和系统 Download PDFInfo
- Publication number
- CN1533521A CN1533521A CNA018219861A CN01821986A CN1533521A CN 1533521 A CN1533521 A CN 1533521A CN A018219861 A CNA018219861 A CN A018219861A CN 01821986 A CN01821986 A CN 01821986A CN 1533521 A CN1533521 A CN 1533521A
- Authority
- CN
- China
- Prior art keywords
- point
- milling
- triangle
- data points
- dimensional data
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4069—Simulating machining process on screen
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32352—Modular modeling, decompose large system in smaller systems to simulate
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32354—Divide, analyse process into subprocesses, until elementary unit operations
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45058—Grinding, polishing robot
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本发明涉及一种重构表面的方法和系统。为了特别简便快速而且多维地进行表面再现,本发明在对利用按时间顺序序列形式的3D数据点所描述的结构的表面进行重构的方法中,借助于线性内插这样对3D数据点进行处理,使在时间顺序上直接相邻的3D数据点保持不变。
Description
技术领域
本发明涉及一种借助多维数据点、尤其是三维(3D)数据点重构表面的方法和系统,以及一种用于实施该方法的计算机程序产品,和利用该计算机程序产品编程的计算机。
背景技术
这样的方法例如可以应用于对表面或结构的重构或模拟,例如,要利用铣床加工的工件的表面。为此,通常借助于所谓的CAD系统(计算机辅助设计系统)对待加工的工件进行模型化。为了进行检查,利用铣点和铣道将表示工件的轮廓可视化。这种仅对表面进行采集的可视化对于复杂的、特别是具有向后凹轮廓(Hinterschnittkontur)的工件来说,是不充分且不准确的。以这种方式对工件轮廓进行判断是不充分的。特别是不能重构三维表面。
发明内容
因此,本发明要解决的技术问题是,提供一种重构表面的方法,该方法可以非常简单的方式再现多维表面。
本发明的上述技术问题是通过权利要求1、8、9和10的特征解决的,本发明的优选改进方案由从属权利要求给出。
本发明所基于的考虑是,在重构或模拟表面、特别是工件表面时,产生描述该表面的数据点。在此,表面重构应在没有几何信息的情况下借助于数据点的相邻关系来实现。为此,优选采用按时间顺序序列形式的3D数据点来描述结构,从而可利用线性内插来处理这些数据点,其中,使时间顺序上直接相邻的3D数据点保持不变。作为结果,优选产生一表面网,特别是三角网,将给出的数据点连结成网,并将多角形铣道的原始边作为网格的边包括进来。这种方法优选称之为“网格化”(Meshing)方法,因为每个数据点都作为一个网眼被编织到网里,或连接到网里。因此可以保证,利用这样构建的网(优选是三角网),可以尽可能准确地复制出表面轮廓。尤其可以保证对物体或结构的基本拓扑学的考虑。
依据结构或物体的类型和构造,尤其是对于在相邻数据点间的步长很小的复杂物体,将产生多个网或子网。为了简化和降低复杂性,有针对性地将相互距离小于预定步长的数据点结合成一个网数据点,其中,要考虑可预先给定的允许近似误差。由此可以确定所谓的简并三角(degeneriertDreiecke)并将其除去,由此以非常简单的方式降低了网复杂性。这种方法优选地被称为“网栅化(Rasterizing)”方法,因为通过对步长的量化而实现了一种网栅。
为了描述很复杂的物体,优选利用网数据点这样将多个网相互连接起来,使得边缘多边形保持不变。由此保证物体的轮廓,尤其是其边缘点,在重构或模拟时保持不变。这种方法被优选称为“合并(Fusion)”方法,因为通过连接网数据点,将物体的子表面借助于拼合在一起的网而相互连接。因此,这种“合并”允许例如可以追溯到工件的平面部分的合并。这例如在通过现有非轮廓方法途径、例如传输途径(Zustellwege)将工件或工件的3D数据分解成各个处理部分时是需要的。
根据各种表面重构方法的类型和功能,可将这里所描述的方法:“网格化”方法、“网栅化”方法或“合并”方法作为独立的方法,并因而可以相互独立地实现。这尤其与输入数据的类型和/或要达到的连网度有关。对于要尽可能准确且接近真实地重构表面,将分段实现该三种方法,其中,可以根据需要对已有的数据利用每一方法步骤进行补充或者不加以采用(ausdienen)。
优选将上述方法用于重构由铣道形成的工件轮廓。其中,利用3D数据点有目的地对铣道进行定义,并对铣过的工件表面进行近似。在此,优选使用一种系统对数组进行可视化和/或变换,该系统具有用于重构物体表面的装置。这种系统例如有CAD系统,如用于对工件进行模型化的可编程计算单元。在此,这种CAD系统,特别是其CAD/CAM接口,提供一种计算机程序产品,例如所谓的NC程序(NC=numerical control,数值控制)。
借助于CAD系统实施的工件的CAD模型化导致起铣刀中点铣行程(Fraesvorschrift DES Werkzeugmittelpunkts)作用的NC子程序、即3D数据点。在此,该铣行程典型地为曲折形或环形的。此外,在CAD模型化中产生一NC子程序,其为控制提供不同的NC控制组件,如压缩器、内插器。可视化优选平面地实现,以便能够更好地确定轮廓的不完善性。如果例如假定为一零维铣刀,例如点铣刀,则在这种情况下工件轮廓是以可回溯到平面的铣刀中点的铣道形式产生的。据此,可以推断出待铣工件轮廓的不完善性。
在此,本发明以非常简单的方式解决了所遇到的平面回溯问题。为此,借助所确定的三角网,对作为平面网上数据点的铣点进行内插。此外,直到边缘区域仍能保证得到铣道,即在非相互对置的铣道上不产生三角形。由此保证在借助内插实现的三角网的优化中,尽量真实地再现该表面、尤其是这些表面的边。本方法的突出特点在于,无需对工件的拓扑结构进行限制。因此,对向后凹的轮廓也可以利用本方法进行回溯。
本发明所获得的优点尤其在于,能够实现保证获得边、如铣道的平面回溯。由此在再现物体表面时可使轮廓尽可能地真实。尤其是充分考虑了物体的拓扑结构,从而也可以重构例如铣工件的向后凹轮廓。
附图说明
以下将借助附图对本发明的实施方式作详细描述。图中示出了:
图1至图3示出了不同铣道配置的示意图;
图4至图6示出了借助网技术重构的多边形表面的示意图;
图7至图8示出了具有贯穿点点的直接相邻道的示意图;
图9至图10示出了一部分重构表面和一提纯平面的示意图;
图11示出了非单调相连点下标序列以及由此而形成的不一致结网的示意图;
图12至图13示出了部分结网的表面和整体结网表面的示意图;
图14至图15示出了具有几何伪影的表面和消除了几何伪影的表面的示意图;
图16示出了具有网的相邻三角的表面的示意图;
图17至图20示出了具有不同的允许近似误差的表面的示意图;
图21至图23示出了相邻子网以及它们相互结网的示意图。
附图中对相应的部分使用了相同的附图标记。
具体实施方式
下面将以一对待用铣床加工的工件进行表面重构的算法为例对本发明进行描述。该算法或方法也适用于对各种表面进行重构。
在重构待铣工件表面时,预先给定了离散的铣道数据作为数据点、特别是3D数据点。为了随后对工件进行加工,借助NC程序将这些数据点按时间顺序传输给铣床。换言之,就是将那些按时间顺序表示铣头开始位置的一系列点坐标或铣道数据作为数据点预先给定。作为结果,按照本方法,将产生一三角网,其将给出的数据点连结成网,并将多边形铣道的原始边作为网边的子集包括进来。除了相互接续的铣道点的相邻关系外,不需要其它输入,特别是不需要几何附加信息。
本方法优选借助平面几何探索(flaechengeometrische Heuristike)、例如正切平面的存在来优化。优选将本方法划分为将在下面详细描述的三个相互独立的阶段。以下的描述将集中在对基本算法的描述上。其中,这三个阶段可以单独实现或前后相接作为一个总方法实现。
阶段1:“网格化”
实际的网格化是通过将相邻铣道之间的空间连结成网来连接数据点或铣道数据,以进行表面重构。其结果是一个三角网,其中,各三角分别以三个点下标给出。
对于相邻铣道主要区分螺旋形配置和曲折形配置。在螺旋形配置下,两条铣道有相同的运行方向,而在曲折形配置下,两条铣道的方向相反。当变换主铣方向时,会出现空间上相近铣道的其它配置,在此,对它们的处理与对相邻铣道不同。由此在表面重构中造成的空隙可在一后续阶段中、例如“合并阶段”中使之闭合。在图1至3中举例示出了相邻铣道的不同配置。对于结网,优选考虑关于铣道和表面的几何学似然性假设。这里,首先包括关于相邻铣道延伸的假设,如使其便于识别的准平行性假设。依据预先给定的数据,这种简化的表面结网足以用于对其进行重构。
阶段2:“网栅化”
作为另一种选择或补充,可以对在网格化阶段产生的网通过所谓的“网栅化”进行处理,由此降低数据复杂度并因此简化了可继续处理性。特别是在开销大的NC程序或沿铣道的很小步长的情况下,可使在网格化阶段重构的网非常复杂。为了能够利用计算机程序产品进一步简单而快速地对数据进行处理,需在尽量保持表面的视觉效果的情况下降低网复杂度。这里,将相互间距离小于预先给定步长ε的数据点、即铣道点组合成一个网数据点。通过去除由此造成的简并三角,降低了网复杂度。由于这种简化导致的近似误差可以通过网栅的大小来估计,并作为允许近似值来考虑。
阶段3:“合并”
作为另一种选择或补充,可以对在网格化和/或网栅化阶段产生的网通过所谓的“合并”进行处理,由此再一次改善了表面重构。在处理实际数据时,例如可通过铣头的放下和再次抬起将各NC程序划分为多个子程序。此外,在网格化阶段之后在重构的表面中存在由于主铣方向变换而可能造成的空隙。在合并阶段,优选将这些子网连结成一个总表面。由于这些子网是由铣道重构的表面,可能的几何配置数可通过一一对应地配置有关的边缘多边形来减少。
图4中举例示出了由预先给定的数据点(铣道数据)重构多边形表面。图5示出了借助于通过网格化而不合并子网产生的三角网的铣道的实际结网。图6示出了在保持表示边缘点的网数据的情况下将多个子网合并。
根据图5,网格化阶段的主要任务在于,将多边形铣道的每个边与相邻铣道的相应数据点相对应。当多边形铣道的每个边至少从属于两个三角时,例如各有一个三角分别连接到左相邻铣道和右相邻铣道时,则结网是完全的。这种连网保证按照图4的原始铣道的边包含在三角形中。附加的三角将会破坏表面拓扑结构。在此,该算法以搜索阶段开始,在其中,确定初始相邻关系,并借助于连接建立初始相邻关系。初始连接将通过各种探索进行修改,以改善表面的质量。由于对于铣道之间的表面特性不可能给出确切的判断,因此这里优选使用探索法。接着,由此确定的铣道间的连接将产生图5所示的、拓扑一致的网。随后对网结构进行优化,如网栅化或合并,这提高了重构表面的几何平滑度,并闭合了在铣道转换处(Wendepunkt)的小缝隙,如图6所示。
当对每个三角或数据点(也称为顶点)确定了其直接邻居的完整列表时,就在很大程度上完整地定义了一个三角网。由于预先给定的或确定的点数据或数据点Pi表示一多边形铣道,则对每个数据点Pi公知的约定为,其与数据点Pi-1和数据点Pi+1相邻。这一结果是根据铣道边应构成重构的三角网的网边的子集这一要求得到的。为了实现完整的表面重构,优选以与铣道正切正交的方式重构相邻关系信息。在此,优选为每个边
PiPi+1至少产生两个三角。在工件的边缘,即对第一铣道和最后铣道及其折返点,将分别对每一铣道确定至少一个三角。对于一个边
PiPi+1,将通过一个在一相邻铣道上的第三点Pj唯一地确定一个三角。为了优化该算法的性能,并避免出现拓扑上的不一致,对每个边通过相邻关系检索仅确定一个三角。第二个三角将有针对性地在实际结网阶段通过反向连接来确定。
优选将边
PiPi+1用作待重构表面的切线。此外,还确定一个通过点Mi=1/2(Pi+Pi+1)并垂直于所观察的边的中间平面Ei。所有其它铣道边
PjPj+1上贯穿中间平面Ei的点的集合相应于待重构表面的离散截面轮廓。通过中间平面Ei定义的多边形给出了正交的正切方向。为了产生相邻关系,将确定最近的贯穿点,并将其与边
PiPi+1相关联。对于每个铣道边,将通过相邻关系检索确定一个三角,例如通过向上或向下检索(“上游”或“下游”)。也就是说,将利用j<i或j>i+1来确定点Pj。
由于每条铣道是由组合在一起的各个部分构成的,所以在空间相邻的部分之间必须有很强的一致性,且其下标偏移为|j-i|。由此,可对用于确定相邻关系的检索空间加以限制。例如,在预先给定的窗口Pi+2,...,Pi+r内检索最近的贯穿点就足够了。所有其它贯穿点描述其它相距较远的铣道,在此不加以考虑。窗口的大小r取决于在同一铣道上最多有多少个点Pi。例如,预先给定一最大数s。对于按照图1的具有螺旋铣道的螺旋形配置,预先给定大小r为r>s。而对于按照图2的具有所谓的犁沟(Ackerfurchen)的曲折形配置,预先给定大小r为r>2s。此外,在确定大小r时,还可以考虑其它信息。通常,减小大小r可大大加快总的运行时间;增大大小r可使本方法更可靠,特别是在利用非常小的步长的NC程序的情况。
通过计算通过中间平面Ei的贯穿点来检索相邻关系还存在另一问题。首先,当同一铣道的平面法线发生很大变化时,中间平面Ei可与之重新相切。此外,在较大的步长和相对小的曲率半径下,可能出现较远铣道的贯穿点在几何上比直接相邻铣道的贯穿点更接近输出边
PiPi+1,如图7和图8所示。为了避免这种“相移”,将预先给定一个相对特征值λ。该相对特征值λ的值为局部最小几何特性的值与相邻铣道间局部最大距离的比值。换言之,当两相邻铣道的局部最大距离为ρ时,则在其周围不允许出现曲率半径小于λ×ρ的情况。这在铣道方向上和与其正交的正切方向上都是适用的。对于相对特征值λ的值优选采用由经验确定的估计值λ=2。对于明显小的值,在铣道具有大步长和小半径时,例如,在不光滑的立方体边缘,会导致错误的相邻关系。而明显较大的值在铣道方向出现非常小的曲率半径时,则会导致将多个边沿着同一铣道连接。
在按照所述的方式为每个边
PiPi+1确定了连接、即相邻铣道的数据点Pj之后,将对初始连接进行清理,其中,将导致超长三角的连接去除。作为数据点Pj,尤其要确定贯穿中间平面Ei的边
PjPj+1上的端点。由此,该算法相对于相对特征值λ的子优化选择具有鲁棒性。
初始连接将借助一个边与中间平面Ei的贯穿点来确定。在有些情况下,首先是在与铣道正交的正切方向上表面陡度较高的情况下,可以对已找到的连接点再进行改善。第一步的检索为每个边
PiPi+1找到一个例如在下游相邻铣道上的较近的点Pj。但该点不必是该铣道上距其最近的点。因此,在第二阶段,将对所获得连接信息进行修改,以使对于每个边
PiPi+1,点Pj恰好位于具有至边中点Mi最小欧几里德距离的相邻铣道上。通过这种后改善有时还可以消除尚存在于同一铣道中的错误连接。例如,在图9和10中,初始连接的改善是通过避免不一致的结网实现的。改进后的连接是由局部梯度检索给出的。
为了避免错误连接,有针对性地实施一致性检查。这里,检查是沿着一条铣道和其相邻铣道对按升序或按降序排列的数据点这样进行的,即对前后相接的铣道边,其连接点的下标有同样构成一个升序或降序的单调序列。通过一致性检查,将去除连接点的非单调下标序列。此外,对于曲折形铣道边折返点处的非单调下标序列,在必要时将其考虑为是正确的。如果这些连接点被无意地消除了,由此产生的表面空隙可在后续阶段,例如合并阶段再次被闭合。
在一致性检查结束之后,对每一边
PiPi+1或者配有一个下游连接点Pk(i),其中,k(i)>i,或者未找到在相邻铣道上的相应的点。图9和图10举例示出了已部分重构的表面几何形状。此外,为了结网,为每个边确定向上游方向的三角。在此有针对性地采用了与下游连接相同的算法。出于效率的考虑,优选采用考虑所产生的三角网的拓扑一致性的算法,如图11、12、13所示。图11示出了至三个前后相接的铣道边
PiPi+1、
Pi+1Pi+2、Pi+2Pi+3的连接点的非单调下标序列[j+2;k+1;j],因此示出了一个不一致结网的例子。数据点Pk(i)和Pk(i+1)例如可以是为直接相接的铣道边
PiPi+1和
Pi+1Pi+2找到的连接点。这一信息足以用来为在数据点Pk(i)和Pk(i+1)之间的铣道多边形的公共子序列确定“向上”连接(上游连接)。图12中示出了这样的例子。图12和13示出了在第一阶段中借助“向上”连接实现的重构的部分结网,以及借助于“向下”连接实现的总的结网。
借助于这种两级结网重构了大部分表面的几何形状。但典型地在曲折形或犁沟形铣道转折点的周围仍留有未定义的区域。这一方面导致对在相邻铣道间的过渡边的中间平面Ei无法确定有意义的贯穿点,另一方面由于不能满足单调性标准而导致在一致性检查时,误将已找到的连接点消除。将对具有未结网的转折弯道的问题配置进行检测,其中,首先通过测试k(i-1)<μ确定转折弯道的存在(其中μ=全局常数)。如果子多边形Pi+1,...,Pk(i)-1事实上未被结网,将产生附加三角扇形,也称为三角扇形(TriangleFan)。在对转折弯道进行处理之后,可看出依然可能出现空隙。这典型地表现为到目前为止重构的多面体表面的边缘多边形上的切口。通过简单地确定边缘多边形的内角,可以识别这些切口,并可通过补充另一三角消除该切口。为此,将通过另一常数定义相应的阈值。
换言之,就是首先建立一个较粗糙的网结构,其包括各三角形边的全部相邻关系。利用该信息可以确定所有包含一特定网节点的三角。特别是通过相邻关系还可以找到到目前为止已重构的网的边缘边和边缘节点。边缘节点的内角将被确定为所有相邻三角的内角之和。
尽管在第一处理阶段之后完整的结网表面是拓扑一致的,但以小块重构的线性几何结构仍可能包含几何伪影。其在原始几何形状的实际拐点处被放大,如图14所示。为了消除这些伪影,将对所涉及的在第一阶段产生的连接进行修正,即在必要时修改铣道间的结网。通过这种对结网的后优化,可以减少在待重构表面的清晰边缘上的几何伪影。图15示出了这种提纯的表面。
在此,将每个连接相邻铣道上两个点的网边作为四边形的对角线来确定,该四边形是由两个以该边为界的三角形定义的。在此,借助所谓的“边交换”(Edge-Swap)操作,将一个边用相应的该四边形的对角线来代替。即,如设Δ(A,B,C)和Δ(D,C,B)为两个相邻的三角形,则“边交换”操作将该两个三角形替换为Δ(A,B,D)和Δ(D,C,A)。通过“边交换”操作,改变了多边形表面的几何结构,而不影响网的拓扑结构。由此,实现了一种非常简便的后优化。
例如,在图16中示出了两个相邻的三角1和2以及与之相邻的其它三角3、4、5和6。对多边形表面质量进行评价的一个好的准则是相邻三角的法向矢量之间的最大角。优选采用Ti和Tj(其中,(i,j)∈{(1,3),(1,4),(2,5),(2,6)})之间的最大法向角作为三角1和2之间的边的质量度量。作为另一种选择或补充,将确定“边交换”操作后的结果质量。如果质量得以改善,即最大法向角变小,则实施“边交换”操作,否则将保持原始配置。换言之,就是实施所谓的“渴求的(Greedy)”优化,其中,按序测试所有的边,并在必要时进行替换。依据预先给定的优化度,可以多次执行该过程。
为了降低大数据量时的网复杂度,在遵守预先给定的允许近似误差的情况下,有针对性地对原始数据进行粗略近似。由于减少的网数据尤其应能用于可视化,采用了一种特别简单而有效的简化方法。优选采用一种所谓的“顶点簇(Vertex-Clustering)”算法(=组合或分组网数据点)。该算法的实现可对任意三角网进行处理,且不局限于连网算法(=“网格化”)的结果。
例如,一个三角网可由点Pi的集合和三角Ti=[i1,i2,i3]的集合来给出。下标i1,i2和i3在此表示数据点列表的参考(=现有数据点、3D数据点的时间顺序序列),并定义了三角形Ti的三个角点。在“顶点簇”方法中,将点Pi组合成空间上的簇或组,即将空间上相近的点用一个表示或数据点来代替。由此,当三角形的至少两个角点属于同一簇或组(以下均称为簇)时,这些三角的一部分将被简化。简化的三角将被消除,剩下的三角将以降低的复杂度构成结果网。不同“顶点簇”技术的区别主要在于对簇的定义,以及对每个簇的表达的选择。最简单的簇结构是由统一的空间网栅(Raumraster)给出的,其中,对点Pi进行排序。优选预先给定网栅大小ε。由此保证了该简化方法的允许近似误差为
因为这是两个在同一簇中的点所能相隔的最大距离。在计算机程序产品中,将网栅大小ε作为程序参数预先给定,或在需要时传递给其它NC程序部分。
在选择簇的表达时,可以有多种不同的实现和测试方式。一种可能的将每个网栅单元的中点选作表达的应用会导致不可接受的结果,因为最终的表面具有极强的表面法线的抖动。如果用各簇中所有点的重心来代替网栅单元的中点,可改善表面的质量,但法向矢量仍可能跳跃。如果不是简单地使用簇的重心,而是使用那些离重心最近的簇点,则可得到明显的改善。由此可保证该简化网中的点构成原始点的子集。但在此应考虑到,在这种简单的中值策略中表达的位置取决于簇点的分布。即,在网中三角的大小变化时,表达向点密度增加的方向移动,尽管很多小三角并不比稍大的三角具有更重要的几何意义。这种效应优选借助所谓的平方误差来减小或消除。
平方误差是对任意点与原始平面间的实际距离的二次近似,并表示允许近似误差。在此,预先给定一具有法向矢量ni的三角Ti,其中,位于附近的点x与Ti的平方距离为(nT ix-nT iai)2,其中,ai是三角Ti的一个任意角点。此外,例如对三角网中的每个顶点预先给定一平方误差,其中,对每个相邻三角求平方距函数的和。例如,如果所有相邻的三角都位于一个平面内,则可将公共点在该平面内移动,而不改变表面的几何结构。如果该点位于一条边上,即所有相邻三角位于两个不同的平面内,则点沿着该边的移动不会造成几何误差。在一般情况下,对于非共面的三角,点的移动不可能不带来几何失真,但平方误差允许至少使误差的量化与移动方向有关。在图17至图20中,示出了具有不同允许近似误差的不同的三角网,为使结果三角网的复杂度能够调节,采用了“顶点簇”技术。在图17至20所示的三角网中,允许近似误差分别为0mm、1mm、2mm和4mm。
对于网简化使用了平方误差技术,其中,对一个簇的所有三角的平方距离求和,并由此为每个簇确定一个平方值。通常,该平方值不包含任何未导致几何误差的点,但至少可找到一个点,对于该点,求和的平方距离最小(“最优点”)。这里,对于簇表达给出了两种不同的定义。其一是可以选出平方误差值最小的簇点。另一种是可选出与最优点距离最短的簇点。后者是优选的实施方式。
将多个子网合并的实施与网格化所实施的实际结网策略相似。其中,连接算法不是应用到相邻铣道,而是应用到各分块的边缘多边形。但与铣道的情况完全一样,相邻的多边形基本上平行地延伸,由此减少需考虑的特殊情况的数量。通过在读入数据点时记录三角相邻关系,将首先标识出所有边缘边。这些边恰好就是只属于一个三角的边。为了闭合子网间的空隙,将确定位于相对位置的边缘边,并将它们彼此连接起来。对于检索相对置的边,预先给定了最大距离δ(在计算机程序产品中,该最大距离作为自变量被传送)。通过这种限制可以保证,重构表面的外边缘不会被连接,而是保持敞开。对与边缘边相对应的连接点的确定基本上与实际结网算法相同,也是通过确定下一个贯穿点来实现的。在此要考虑的是,不能再采用简化的反向连接,因为无法对边缘多边形的下标进行假设。出于这一原因,确定各个连接点,并将对置边直接相互连接,由此在每个配属步骤中产生两个三角形。在连接中产生的新边其本身再被作为边缘边。图21至23示出了在相邻子网间被闭合的空隙,其中,将“处于相对位置”的边相互连接起来。
以下将借助命令行变量以及其在各NC程序中的应用对计算机程序产品进行描述。由于各算法是自动工作的,无需用户的交互。
例如,标以“mesh.c”的程序通过标准输入装置读入一个点文件,实施结网,并通过标准输出以下述方式将结果再写到ASCII文件中:
mesh<IN_PTS>OUT_TRI (1)用于该算法的参数和常数被调整到依经验确定的缺省值,但可以在源代码文件的头中被改变。为了提高灵活性,当不期望对某些特殊的数组进行优化时,可按下述方式借助相应的#define将算法的不同阶段开通或关闭:
#define REMOVE_ABOVE_MEDIAN/**/ (2)
#define ADJUST_TO_CLOSEST/**/
#define DELETE_NON_MONOTONIC/**/
/*#define REMOVE_LONGER_THAN_MAX_EDGE/**/
#define CONNECT_BACKWARDS/**/
#define PROCESS_U_LOOPS/**/
#define FILL_GAPS/**/
#define SWAP_EDGES/**/
另一个标以“raster.c”的程序是顶点簇算法的一种实现。以下述方式可通过#define调整不同的算法变化:
/*#define FIND_SVD_POINT/**/ (3)
/*#define FIND_MINIMAL_QUADRIC_ERROR/**/
#define FIND_CLOSEST_TO_CENTER_OF_GRAVITY/**/
#define BAD_RASTER_DEBUG/**/
在基本版中,网栅的表达是通过中值确定的。所得到的网示出所涉及的阶梯形伪影。通过以下方式可以实现一种细化的方法:
/*#define FIND_SVD_POINT/**/ (4)
#define FIND_MINIMAL_QUADRIC_ERROR/**/
/*#define FIND_CLOSEST_TO_CENTER_OF_GRAVITY/**/
/*#define BAD_RASTER_DEBUG/**/在此,对原始表面进行了明显改善的近似。以下述方式作出的变化可最后产生最佳结果:
#define FIND_SVD_POINT/**/ (5)
/*#define FIND_MINIMAL_QUADRIC_ERROR/**/
/*#define FIND_CLOSEST_TO_CENTER_OF_GRAVITY/**/
/*#define BAD_RASTER_DEBUG/**/
该程序将按如下方式被调用:
raster IN_PTS IN_TRI EPS OUT_PTS OUT_TRI (6)其中,raster.exe是编译过的程序的名称,IN_PTS是一点文件的名称,而IN_TRI是一三角下标文件的名称(正如其由MESH.EXE所产生的)。EPS是一给出最大允许近似误差的浮点值。结果相应地存储在文件OUT_PTS和OUT_TRI中。
一标以“join.c”的程序的运行是这样实现的:
join IN_PTS IN_TRI EPSILON>OUT_TRI (7)其中,IN_PTS是点的列表,IN_TRI是三角列表,EPSILON是表示待闭合空隙的最大尺寸的浮点数。值EPSILON是必须的,以便将非相对置的边相连接。在此,事先确定待估计的空隙的宽度。作为结果,产生一个包含已有的和新产生三角的新三角列表。如果需将多个分离结网的网格相连接,则须首先将它们转换为一个具有多个相连部分的公共网格,然后,JOIN程序将该公共网格上的空隙闭合。在此预先给定了两个点列表:具有n1个数据点的点列表P1,和具有n2个数据点的点列表P2。T1是涉及P1的三角列表,而T2是涉及P2的三角列表。因此,(P1,T1)以及(P2,T2)构成了两个分离的网。通过P=[P1;P2]可以轻易地将两个点列表相结合。而在将两个三角列表相结合时,还须将对T2的下标进行匹配,即T=[T1;T2+n1],其中,n1为点列表P1的长度。
综上所述,按照本发明,为了特别简便快速而且多维地进行表面再现(Flaechenrueckfuehrung),在对利用按时间顺序序列形式的3D数据点所描述的结构的表面进行重构的方法中,借助于线性内插这样对3D数据点进行处理,使在时间顺序上直接相邻的3D数据点保持不变。
Claims (10)
1.一种重构结构表面的方法,该结构借助于按时间顺序序列形式的三维数据点来描述,其中,对所述三维数据点利用线性内插来处理,使在时间顺序上直接相邻的三维数据点保持不变。
2.根据权利要求1所述的方法,其特征在于,对于相互间距离小于预定步长的三维数据点,在考虑可预先给定的允许近似误差的情况下,将其组合成一个网数据点。
3.根据权利要求2所述的方法,其特征在于,借助于网数据点将若干网这样相互连接起来,使得边缘点或边缘多边形通过连接保持不变。
4.根据权利要求1至3中任一项所述的方法,其特征在于,借助所述三维数据点确定铣道,以及近似表示被铣工件的表面。
5.根据权利要求1至4中任一项所述的方法,其特征在于,将所述三维数据点这样相互连接,使得可将在相邻铣道间的空隙结成网。
6.根据权利要求5所述的方法,其特征在于,为了将所述空隙结网,为一个多边形铣道的一个边至少配置两个三角形。
7.根据权利要求6所述的方法,其特征在于,所述铣道的三角形是这样配置的,使得其中一个三角形将该铣道与一相邻铣道相连接。
8.一种用于对数组进行可视化和/或变换的系统,其具有用于实现上述权利要求之一所述方法的装置。
9.一种计算机程序产品,用于实施权利要求1至7中任一项所述的方法。
10.一种计算机,其利用权利要求9所述的计算机程序产品编程。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10056143 | 2000-11-13 | ||
DE10056143.8 | 2000-11-13 | ||
DE10135992.6 | 2001-07-24 | ||
DE10135992A DE10135992A1 (de) | 2000-11-13 | 2001-07-24 | Verfahren und System zur Rekonstruktion einer Fläche |
PCT/DE2001/004149 WO2002039380A2 (de) | 2000-11-13 | 2001-11-05 | Verfahren und system zur rekonstruktion einer fläche |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1533521A true CN1533521A (zh) | 2004-09-29 |
CN1318929C CN1318929C (zh) | 2007-05-30 |
Family
ID=26007643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB018219861A Expired - Fee Related CN1318929C (zh) | 2000-11-13 | 2001-11-05 | 重构表面的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7062353B2 (zh) |
EP (1) | EP1334468B1 (zh) |
CN (1) | CN1318929C (zh) |
DE (1) | DE50109239D1 (zh) |
WO (1) | WO2002039380A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107966954A (zh) * | 2017-11-24 | 2018-04-27 | 江俊逢 | 一种计算机数字控制方法与系统 |
CN114355841A (zh) * | 2022-01-07 | 2022-04-15 | 宁波大学 | 一种复杂曲面分区域测点规划方法 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10157964B4 (de) * | 2001-11-26 | 2011-06-22 | Siemens AG, 80333 | Verfahren zur Optimierung einer Oberflächengüte eines zu fertigenden Werkstücks anhand von CNC-Programmdaten |
KR20050092745A (ko) * | 2003-01-14 | 2005-09-22 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 표면 지형의 재구성 |
US7856125B2 (en) * | 2006-01-31 | 2010-12-21 | University Of Southern California | 3D face reconstruction from 2D images |
US7683914B1 (en) * | 2007-02-12 | 2010-03-23 | Bentley System, Inc. | Triangulation based raster image interpolation |
US20090153552A1 (en) | 2007-11-20 | 2009-06-18 | Big Stage Entertainment, Inc. | Systems and methods for generating individualized 3d head models |
US9245382B2 (en) * | 2008-10-04 | 2016-01-26 | Microsoft Technology Licensing, Llc | User-guided surface reconstruction |
TWI385544B (zh) * | 2009-09-01 | 2013-02-11 | Univ Nat Pingtung Sci & Tech | 基於密度式之資料分群方法 |
TWI391837B (zh) * | 2009-09-23 | 2013-04-01 | Univ Nat Pingtung Sci & Tech | 基於密度式之資料分群方法 |
CN102662915B (zh) * | 2012-03-01 | 2015-08-05 | 成都鹏业软件股份有限公司 | 用于建筑算量领域的三维布尔计算方法 |
CN102750553B (zh) * | 2012-06-28 | 2015-06-17 | 北京中科广视科技有限公司 | 一种墙体平面轮廓的识别方法 |
CN102867332B (zh) * | 2012-08-29 | 2016-03-09 | 电子科技大学 | 基于复杂边界约束的多级细分网格曲面拟合方法 |
CN104732192B (zh) * | 2013-12-23 | 2018-02-23 | 中国移动通信集团设计院有限公司 | 一种建筑图纸墙体识别方法和装置 |
CN106163622B (zh) * | 2014-01-23 | 2018-11-09 | 珀福曼斯Sk8控股公司 | 用于制造板体的系统和方法 |
CN106097446A (zh) * | 2016-06-07 | 2016-11-09 | 中国石油集团川庆钻探工程有限公司地球物理勘探公司 | 一种基于大规模地震数据的三维地质曲面重建方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3401060A1 (de) | 1984-01-13 | 1986-01-23 | Dr. Johannes Heidenhain Gmbh, 8225 Traunreut | Verfahren zum grafischen darstellen eines gebildes |
US5796618A (en) * | 1992-10-09 | 1998-08-18 | Omron Corporation | CAD system, method and medium for creating and encoding NC data based before and after workpiece models |
US5710709A (en) * | 1993-08-19 | 1998-01-20 | Iowa State University Research Foundation, Inc. | NC milling simulation and dimensional verification via dexel representation |
US6016153A (en) * | 1996-07-30 | 2000-01-18 | International Business Machines Corporation | Method to convert non-manifold polyhedral surfaces into manifold surfaces |
US5886702A (en) | 1996-10-16 | 1999-03-23 | Real-Time Geometry Corporation | System and method for computer modeling of 3D objects or surfaces by mesh constructions having optimal quality characteristics and dynamic resolution capabilities |
WO2000045237A2 (en) * | 1999-01-27 | 2000-08-03 | Enbaya Ltd. | Progressive compression of triangular meshes |
WO2002037198A2 (de) * | 2000-11-06 | 2002-05-10 | Siemens Aktiengesellschaft | Verfahren und system zur näherungsweisen wiedergabe der oberfläche eines werkstücks |
-
2001
- 2001-11-05 DE DE50109239T patent/DE50109239D1/de not_active Expired - Lifetime
- 2001-11-05 WO PCT/DE2001/004149 patent/WO2002039380A2/de active IP Right Grant
- 2001-11-05 EP EP01993905A patent/EP1334468B1/de not_active Expired - Lifetime
- 2001-11-05 CN CNB018219861A patent/CN1318929C/zh not_active Expired - Fee Related
- 2001-11-05 US US10/416,746 patent/US7062353B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107966954A (zh) * | 2017-11-24 | 2018-04-27 | 江俊逢 | 一种计算机数字控制方法与系统 |
CN107966954B (zh) * | 2017-11-24 | 2020-04-17 | 江俊逢 | 一种计算机数字控制方法与系统 |
CN114355841A (zh) * | 2022-01-07 | 2022-04-15 | 宁波大学 | 一种复杂曲面分区域测点规划方法 |
CN114355841B (zh) * | 2022-01-07 | 2024-01-16 | 宁波大学 | 一种复杂曲面分区域测点规划方法 |
Also Published As
Publication number | Publication date |
---|---|
US20040070585A1 (en) | 2004-04-15 |
EP1334468B1 (de) | 2006-03-15 |
DE50109239D1 (de) | 2006-05-11 |
WO2002039380A2 (de) | 2002-05-16 |
US7062353B2 (en) | 2006-06-13 |
WO2002039380A3 (de) | 2003-06-12 |
EP1334468A2 (de) | 2003-08-13 |
CN1318929C (zh) | 2007-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1533521A (zh) | 重构表面的方法和系统 | |
Kumar et al. | An approach to modeling multi-material objects | |
White et al. | Automated hexahedral mesh generation by virtual decomposition | |
Wu | Adaptive split-and-merge segmentation based on piecewise least-square approximation | |
Boykov et al. | Graph cuts in vision and graphics: Theories and applications | |
JP2021516801A (ja) | 材料ヤード縮減級数展開に基づく構造トポロジー最適化方法 | |
Fayolle et al. | An evolutionary approach to the extraction of object construction trees from 3D point clouds | |
CN1967596A (zh) | 三维扫描系统中三维散乱点集的三角剖分构造方法 | |
JP2003162550A (ja) | 3次元オブジェクトをモデリングする方法 | |
Chang et al. | Surface reconstruction from point clouds by transforming the medial scaffold | |
CN111243091A (zh) | 基于分布式系统的海量dem金字塔切片并行构建方法 | |
Stewart | Tunneling for triangle strips in continuous level-of-detail meshes | |
Yu et al. | Evolutionary decomposition for 3D printing | |
Zhang et al. | Dual contouring for domains with topology ambiguity | |
CN108022307A (zh) | 基于增材再制造点云模型的自适应平面分层方法 | |
CN115481497A (zh) | 一种基于特征框架的体参数化建模方法 | |
CN110757806A (zh) | 一种面向3d打印的双类形状密铺方法及系统 | |
CN110322548A (zh) | 一种基于几何图像参数化的三维网格模型生成方法 | |
Cignoni et al. | Zeta: A resolution modeling system | |
Diaz‐Gutierrez et al. | Hierarchyless simplification, stripification and compression of triangulated two‐manifolds | |
CN104504719A (zh) | 一种图像边缘检测方法及设备 | |
Németh et al. | 2d parallel thinning algorithms based on isthmus-preservation | |
CN107507276A (zh) | 用于任意方向的岩心切片显示的三维数字岩心存储方法 | |
Lalley | Growth profile and invariant measures for the weakly supercritical contact process on a homogeneous tree | |
CN106027032A (zh) | 一种单位延时模型下rm逻辑电路延时优化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070530 Termination date: 20161105 |