Proceedings of IDMME - Virtual Concept 2010 Bordeaux, France, October 20 – 22, 2010
Original Article
HOME
Reverse Engineering for NC Machining Simulation Nabil Anwer 1 , Yang Yi-Jun 2 , Zhao Haib in 3 , Olivier Co ma 4 , Jean-Claude Pau l 5
(1) LURPA, Eco le Normale Supérieure de Cachan, France
[email protected] (2) Geo metric Modelling & Scientific Visualizat ion Center, KAUST, Saudi Arab ia
[email protected] (3) Depart ment of Mechanical Engineering, KU Leuven, Belgiu m Haib
[email protected] leuven.be (4) Spring Technologies, Toulouse, France
[email protected] m (5) INRIA/Tsinghua University, Beijing, China
[email protected]
Abstract: Reverse engineering for NC Machining simu lation is becoming an important component of NC simu lation and verification. Design engineers need more accurate and complete CA D model o f the simulated machined part for finite element analysis or parametric feature-based modelling for design modification or update. The as-cut or inprocess geometry should be correctly accessed in the CAD/ CAM environment at any stage of the machining process. Few co mmercial software are addressing the reverse engineering issue and provide robust solutions. Until now, inprocess CAD models for NC simu lation have been created with many drawbacks and inaccurate methods are proposed. This paper addresses reverse engineering for NC mach ining simu lation based on polyhedral in-process geometry. Two complementary approaches are presented here. An enriched representation embedded in ”Spring technologies Reverse Engineering” or SRE file format enables to convert the polyhedral model to STEP file and a discrete shape recognition and segmentation approach provides a promising issue thanks to discrete differential geo metry. Key words: NC Simulat ion, Reverse Engineering, Polyhedral Representation, Segmentation, Discrete Differential Geo metry. 1- Introduction
Automotive, aerospace and other high tech industries require high surface finish quality and a short machining time to produce parts with complex sculptured surfaces such as dies, mo lds or turbine blades. The new capabilit ies of sophisticated Co mputer Nu merically Controlled (CNC) mach ines such as mu lti-axis control and error compensation have a significant
ICADAM_P193
-1-
effect on the competitiveness of such enterprises. Whereas NC technologies and hardware capabilit ies of CNC machines have increased proactively over the last few decades, various Co mputer-Aided Design (CAD) and Co mputer-Aided Manufacturing (CAM) software solutions have not overcome existing barriers in achieving interoperability in the CAD/ CAM/CNC chain. The simulat ion and verification of NC code is an important component of the CAD/ CAM/CNC chain. It can check errors to avoid machining errors such as undercutting and collision with fixtures and enable visualizing tool paths. Commercial software tools such as NCSIMUL, VERICUT, and DELM IA have been developed in the recent years for enabling a NC simu lation for a collision free tool path with optimized sequence of operations to reduce machining cycle time. Geo metrical simulat ion evaluates changes in the shape of the part (in-process workpiece) through geometric representation of the initial part, the tool path and the geometric description of the cutting tool. Two main techniques are used for geometrical simu lation. In pure solid modelling based techniques, the in-process workpiece is generated by subtracting a swept volume of the tool fro m the workpiece model using a regular boolean operation. This approach is theoretically capable of providing accurate NC simulation, but the difficult ies pointed here lie in the mathemat ics of swept volumes and the number of Boolean operations required. Both Constructive-Solid Geo met ry (CSG) and Boundary Representation (B-Rep ) modelling based techniques were reported in the literature [VH1]. Polyhedral modelling and other approximate techniques have received more attention. Co mputer Graphics techniques such as ZMap [KP1] [BM1], dexels [H1], vo xels [YT1] and discrete vector intersection [JD1] are co mputationally less demanding than solid modelling approaches but they still require user-
Copyright of IDMME - Virtual Concept
Reverse Engineering for NC Machining Simulation
2. Polyhedral representation for NC Simulation
Polyhedral representation is starting to receive more attention for modelling the in-process geometry thanks to a good compro mise between manageable co mputational speed, robustness and accuracy [A1]. A proper data structure for polyhedral representation plays a critical role in geometry p rocessing of polyhedral surfaces. Because of the lack of adjacency relationships, the facebased representation of polygonal mesh demonstrates its inconvenience for geometry computing. Instead, as mentioned in [K1], the boundary representation is given increasing considerations. A boundary representation of a polyhedral surface consists of a set of vertices, a set of edges, a set of facets and incidence relations on them. There are various types of boundary representations, such as Wingededge, Quad-edge, Half-edge, etc. A good survey of data representations for polygonal mesh can be found in [K1]. 2.1 The Half-edge Data Structure
As its name imp lies, the Half-edge Data Structure (HDS) splits each edge into two oriented half-edges having two opposite directions. The mutual relation between the two half-edges is added for convenient query. A half-edge is thus considered belonging to exactly one triangle. The half-edges of one triangle can be oriented as clockwise or counterclockwise around the facet. Figure 1 shows the HDS for triangle mesh representation. The HDS provides an efficient way for mesh representation of an oriented manifo ld polygon surface and also provides a convenient way to query the elements (vertices, edges, facets). It is sufficient for modelling the topology structure of commonly -used surfaces in engineering even in the presence of loops and multi-edges. opposite half-edge
Incident vertex
ge
alf ou
ed
lf-
ha
sh
xt
Incident facet
ed
ge
half-edge ne
Reverse engineering for NC Mach ining Simulat ion is becoming an important component of NC Simu lation and Verification. Design engineers need accurate and complete CAD model o f the simulated mach ined part for finite element analysis or parametric feature-based modelling for design modification or update. Other interesting applications are related to creating CAD models fro m o ld APT or G-code programs. Reverse engineering (RE) can be defined as the process of obtaining a geometric model fro m a real manufactured part acquired by 3D measuring and digit izing techniques. We extend here the concept of traditional reverse engineering in order to deal with virtual manufactured parts in analogy with real manufactured parts. The generic process of reverse engineering is a three-phase process [RF1]. The three phases are point acquisition, point processing (filtering, denoising, meshing, topology construction, registration) and application specific geo metric model develop ment (CAD model reconstruction, inspection, direct copying for CNC machin ing, etc.). In the context of NC Simu lation, the underlying geometrical model is mainly a polyhedral or a polygonal model. The raw data phase that addresses data registration, denoising, sampling and meshing will not be considered unless the polyhedral or polygonal model resulting fro m simulation presents serious inconsistency problems. The as-cut or in -process geometry should be correctly accessed in the CAD/CAM environ ment at any stage of the machining process. This new CAD model is enriched by new geometric shapes that represent machining features such as drilled holes, fillet blends, pocket corners and walls as well as surface micro geometries and scallops corresponding to very small machin ing features. Some co mmercial software such as NCSIMUL and VERICUT are addressing the reverse engineering issue and provide some solutions. VERICUT’s Model Export option can create either surface or solid model representations of the simulated mach ined part. Models can be exported in STL, IGES, STEP, ACIS, or CATIA V5 formats. Until now, in-process CAD models for NC simu lation have been created with many drawbacks and inaccurate methods are proposed.
polyhedral model to STEP file and a discrete shape recognition and segmentation approach provides a promising issue thanks to discrete differential geo metry.
ev i
defined accuracy depending on the size of the basic element and thus considerable co mputer resources. Polyhedral and more specifically triangulated models are used extensively in CAD visualization, CA E simulat ion and rapid prototyping. Although they are approximated to a specified chordal error, triangulated models provide the advantage of simplifying the workp iece surface geometry to triangles and the intersection computation is then reduced to line / triangle intersections. However the nu mber of t riangles and their irregular density is a bottleneck to achieve real time NC simu lation. So me solutions have been proposed to overcome these limitations. Lee [LL1] proposed a local mesh decimation algorith m to reduce the number of polygons, Liu and Ong [LO1] used an adaptive regular mesh decimation algorith m to adjust the polygon density.
pr
IDMME - Virtual Concept 2010
Figure 1: Half-edge data structure.
The generated polyhedral representation data need to be exported with specific file formats which can be recognized by different downstream applications. There are many file formats widely used to store and exchange the mesh data in computer graphics and engineering applications, such as VRM L (Virtual Reality Modelling Language) with an This paper addresses reverse engineering for NC mach ining extension “.wrl”, PLY (Po lygon File Format or Stanford simu lation based on polyhedral in-process geometry. Two Triangle Format) with an extension “.ply”, etc. Among them, complementary approaches are presented here. An enriched STL is the most popular. representation embedded in ”Spring technologies Reverse Engineering” or SRE file format enables to convert the
ICADAM_P193
-2-
Copyright IDMME - Virtual Concept
IDMME - Virtual Concept 2010
Reverse Engineering for NC Machining Simulation
2.2 STL file format
surface is unknown for the facet. At the moment, only planes, cylinders, spheres, tori, shear cylinders, swept tori STL (Stereo Lithography or Standard Triangulation Language) and cones are considered. is a widely used file format to specify the triangle mesh model in rap id prototyping, computer-aided manufacturing, o r other engineering applications. Typically, the STL file is saved with the extension “.stl”. The file format is supported by many CAD software packages, such as CATIA, etc. The STL format specifies both the ASCII and Binary representations [B1]. The binary STL files are more co mpact; however, the ASCII STL files are more co mprehensible by the human. A STL file is a facet based representation of the raw unstructured triangulated surfaces or solid entities. A STL file consists of a list of triangle facet data. Each triangle facet is uniquely identified by a unit normal vector and by three vertices. The normal vector points to the exterior o f the model and the three vertices are given by counter-clockwise direction. The normal and each vertex are specified by 3D coordinates. Figure 3: NCSimul model with additional information. Figure shows the representation of a complete triangle facet unit ext racted fro m a typical STL file. The co mplete STL model is also shown in figure 2. 3- Reverse Engineering of NC machining simulation data
facet normal 0.000000e+000 -9.957342e-001 9.226814e-002 outer loop vertex 4.500000e+001 -2.250000e+001 2.755364e-015 vertex 6.000000e+001 -2.250000e+001 2.755364e-015 vertex 4.500000e+001 -2.211690e+001 4.134364e+000 endloop endfacet
Figure 2: S TL file format and a typical S TL model.
The STL format is easy to be generated. However, there are also some drawbacks of the STL files: (a) Lack of topological informat ion. The STL file is only a “bucket of facets” [RW 1]. The connectivity entities, such as lines, curves, etc. and the attributes, such as layers, colours, etc. are ignored in the STL files. Moreover, the triangle facets stored in STL files are independent and there is no relationship with each other. This leads to great amount of redundant data directly. The topological informat ion is important for the further applications. Hence, the topological structure of the discrete model represented in STL format should be first constructed before any further processing. (b) STL errors. As other triangle mesh carriers, STL data sometimes contain errors and ill-formatted values. According to [SP1] and [SP2], the common errors are man ifold, vertex-tovertex rule error, missing data, etc. Therefore, when a STL file is encountered, the model healing and topology construction should be done first to build the neighbour information in the discrete model for the further use. 2.3 SRE file format
The “Spring technologies Reverse Engineering” or SRE file format is designed for reverse engineering for NC Simulat ion. The underlying data structure gathers a set of facets (mesh) and for each facet a colo r, a cut nu mber and a surface index. In NCSimu l, there is one color per tool so facets of same colors are generated by the same tool (figure 3). The cut number is unique for every tool movement which enables to gather facets. The surface index refers to the index of the underlying geometric surface. An index value of “-1” means that the
ICADAM_P193
-3-
The aim here is to rebuild a CAD file (STEP format) fro m the result of a machining simu lation described as a set of triangles (STL and SRE file formats). In this section, we propose two methods to obtain the Boundary representation. Open CASCADE functions are used to generate the Boundary representation and the STEP format. Open CASCADE is an open source software development platform. It includes components for 3D surface and solid modelling, visualization, data exchange and rapid application development. Open CASCADE Technology has been applied in develop ment of many modelling and numerical simu lation, as well as Product Data Management applications. 3.1 One Surface per Triangle Method
This method enables construction of a surface for each mesh. It is simp le while practical especially when the number of the meshes is small. The flo w of the method is described as follows. (1) Build the half edge structure. (2) Generate the open CASCADE vertex array. We generate first the TopoDS Vertex array and set each vertex value, then the array is added into the BRep Builder. (3) Generate the open CASCADE edges. (a) Generate the TopoDS Edge array; (b) Generate the Geo m Line fo r each edge in the mesh; (c) Add in the Brep builder and set the parameter. (4) Generate all the open CASCADE wires and faces. (a) Generate the TopoDS Wire and TopoDS Face array; (b) Generate the Geo m Plane for each face in the mesh; (c) Add in the Brep builder and set the parameter (One face is just one wire).
Copyright IDMME - Virtual Concept
IDMME - Virtual Concept 2010
Reverse Engineering for NC Machining Simulation
(5) Expo rt to STEP format file using open CASCADE. (a) Generate the STEPControl Writer; (b) Use transfer function with the parameter STEPControl ManifoldSo lid Brep. (c) Write the STEP file. 3.1 Surface Recognition Method
This method utilizes the additional information of the .sre file format. The additional information help to know which meshes belong to the same surface and what is the type of the surface to be constructed. The flo w of the method is described as follows: (1) Build the half edge structure. (2) Recognize the open CASCADE edge. The following steps are carried out for each surface. (a) Search all the meshes that lie on the surface. (b) Search all the edges on the boundaries. It should be mentioned that one edge on the boundary may include many mesh edges. The criterion for searching the mesh edges for the boundary edge is that all the mesh edges have the same adjacent surfaces and furthermore, the mesh edges are connected continuously. For each edge, record the start and end point of the edge and all mesh edges lying on this edge. We should notice that the start and end point may be not so precise that we should correct them. (3) Generate the open CASCADE vertex array and set the vertex position. (4) Generate the open CASCADE surfaces according to the surface information. (5) Generate the open CASCADE edges according to the types of the adjacent surface types. (a) If the two surfaces are planes, then generate a Geo m Line fro m the start and end points directly and update the parameters of the edge. (b) If the two surfaces are not all planes, compute the intersection lines of the two surfaces using the open CASCADE method Intersector and find the right edge (using the two end points). (6) Add seam edges for cylinder surfaces. (a) Co mpute intersection points of cylinder edges. (b) Add the intersection points to the cascade vertex array. (c) Div ide the corresponding cascade edge according to the intersection points. (d) Add the seam edge between adjacent intersection points. (7) Fill open CASCADE face topology. (a) Generate the open CASCADE wire and faces for each surface according to the type of the surface. Search all the edges lying the surface and compute the corresponding parameter curves lying in the parameter domain. (b) Make the shell and solid. Export the data to STEP format file.
ICADAM_P193
-4-
Figure 4: Results of surface recognition method.
The first method is simple and easy to implement. However, when the number of the meshes is large, the first method will introduce a lot of surfaces in the final result. The second method could generate fewer surfaces than the first method. However, it only works well for the model that only contains planes and cylinders (figure 4). Our future work is to extend the second method so that it could construct the models that contain quadric and NURBS surfaces. 4- Discrete shape segmentation
Considerable research activities in discrete shape segmentation have been ensued in recent years. The existing segmentation methods can be classified into two categories. The first one is devoted to segmenting the discrete model of natural object into pieces of meaningful regions from the viewpoint of human cognition. Most of the segmentation methods in computer graphics, biological and med ical applications, are devoted to this purpose. The second category is aiming at partitioning the discrete model into patches and each patch can be fitted by a single, mathematically analyzab le shape. Applications in mechanical engineering such as reverse engineering and dimensional metro logy, belong to this category. Most of the reported approaches are directly based on derivatives properties, such as normal, principle curvatures, Gaussian and mean curvatures. Estimation of the discrete differential geo metry properties, such as normal vector, curvatures, etc. are often required in many applications when the surface is defined by a set of discrete points rather than by mathematical formu lae [MW1]. Reliab le estimation of discrete curvatures is the basis of discrete shape segmentation for feature recognition and reverse engineering purposes. In our method, we assume that the initial discrete shapes are in the form of dense sets of points and can be broken down into various components, which meet along sharp or smooth edges. We also assume that the segmented components can be represented by analytical functions with degree no higher than three, which covers many engineering applications. With the above assumptions, our method can always provide robust and accurate segmentation results. The method can be decomposed into three main phases: discrete shape recognition, vertex clustering and connected region generation. Figure 5 shows the process flow of the whole method.
Copyright IDMME - Virtual Concept
IDMME - Virtual Concept 2010
Reverse Engineering for NC Machining Simulation
Polyhedral mesh Clustering refining Local surface type recognition Connected region labeling Edge points /High curvature point identification
Partition satisfying ?
Y
N
Vertex clustering
Region merging and refining Clustering satisfying ?
Figure 6: Discrete curvature estimation parameters.
N
Y
The two principal curvatures can be estimated as the first two eigenvalues of the matrix W ( B ) . The two principal directions can be also estimated by their corresponding eigenvectors.
Segmentation results
Figure 5: Process flow of discrete shape segmentation. 4.1 Discrete curvature estimation
In differential geo metry, the shape operator or Weingarten endomorphism [O1] determines the principal curvatures and the principal directions of a surface. In the case of discrete shapes, the discrete shape operator matrix [CM 1] is estimated at each vertex and then the principal curvatures are derived. The method proposed here is based on the work reported in [CM 1] wh ich has been improved by adding weights to the discrete shape operator matrix and modify ing neighbour region [Z1]. Considering an arbitrary vertex p on a polyhedral mesh surface Σ , the discrete shape operator mat rix at p can be
1 λe ⋅ β (e) ⋅ length(e B) ⋅ (e × e T ) ∑ A e∈E
Arbitrary s mooth surfaces can be decomposed into a union of primitive surfaces that are approximated by lower order bivariate polynomials [BJ1]. Shape index and curvedness [KD1] are two shape indicators that describe the second order geometry of a surface. Shape index is a quantitative measure of local surface type. It is a single value within [-1, 1] and has the following definit ion:
κ + κ2 2 s= ) (κ1 ≥ κ 2 ) − arctan( 1 π κ1 − κ 2
estimated as:
( B) W=
4.2 Shape index and curvedness
(3)
Curvedness is a positive value that specifies the amount or intensity of the surface curvature.
(1)
c=
Where, B is the local region around the vertex and A is its area. In our case, B is defined based on the Voronoi cell, (figure 6).
λe is the coefficient associated with the edge e and is defined
Where
κ12 + κ 22
(4)
2
κ1 and κ 2
are the maximu m and minimu m principal
curvatures.
as:
n ( p ) ⋅ n (e) λe* = arccos || n ( p ) || ⋅ || n (e) ||
λe* , λe = ∑ λe*
4.3 Local surface type recognition
(2)
e∈E
n ( p ) is the unit normal vector of vertex p . n (e) is the edge normal of the edge e , which is equal to the average normal vectors of the two triangles incident to the edge.
E is the set of all the mesh edges in B is the length of the edge e in B . β (e) is the dihedral angle between the two normal vectors of the triangles incident with e . In figure 2, these two normal vectors
length(e B)
are denoted as
n1 and n2 .
Besl and Jain specified eight fundamental surface types based on the signs of Gaussian and mean curvatures [BJ1]. However, it doesn’t give full description of shape and it is inconvenient to understand a shape intuitively [LG1]. On contrast, Koenderink and Doorn [KD1] defined nine basic surface types in a continuous way only using the shape index. Ho wever, planar shapes are not defined based on the values of the shape index (here, we affect the planar shape a shape index equal to 2). The curvedness only vanishes on the ideal planar shape. Hence, a point can be identified as a planar point in practice if its curvedness value is less than a given threshold. According to the above analysis, ten surface types are defined based on their shape index and curvedness (figure 7).
e is the unit vector along the edge e .
ICADAM_P193
-5-
Copyright IDMME - Virtual Concept
IDMME - Virtual Concept 2010
Reverse Engineering for NC Machining Simulation
Figure 9: vertex clustering and cluster refining. 4.6 Connected region generation
Figure 7: Surface type characterization. 4.4 High curvature points recognition
The high curvature points or the boundary points usually define the borders between different regions. They are useful in our segmentation process. Boundary points have larger curvedness value than the points in other regions. Therefore, the boundary points can be defined as the points whose curvedness is larger than a given threshold (figure 8). 111.417
0
Figure 8: Curvedness map.
Two basic steps are considered here. Connected region growing wh ich is performed to generate the initial segmentation result and region refining which aims to reduce the over-segmented regions and to improve the segmentation result. The connected region growing method is based on the connected component labelling technique which is widely used in image processing [HC1]. When a vertex that hasn’t been assigned with a region label is encountered, the vertex is marked with a region label according to its neighbour condition. With this associated region label, the encountered vertex will be added to an existing region or create a new region. The region refining is necessary to reduce the oversegmentation when the result of the connected region growing is not satisfying. The region refining is performed as an iterative process. A priority queue of adjacent region pairs is generated according to their region distances. The adjacent regions pair with the maximu m region distance are picked and merged into one region. The priority queue is then updated accordingly. Both the surface type and region label of the larger areas region are assigned to the new generated region. An examp le of the region refin ing is shown in figure 10.
4.5 Vertex clustering
The vertices are first clustered into ten categories according to their surface types. The high points detected in the previous section are not considered here. Due to STL drawbacks and computational errors (e.g. meshing error, curvature estimat ion error, etc.), the initial clustering results are far fro m being perfect. Therefore, we developed a cluster refin ing algorithm to imp rove the clustering performance. The cluster refining algorith m is based on an iterative process. Given a vertex, we firstly record all the surface types in its one-ring neighbourhood. Then, we calculate the refining possibility of every surface type that the given vertex should be refined to. Finally, the surface type of the given vertex is refined into the category whose surface type has the maximu m refining possibility. The iterat ion terminates when the surface type of each vertex doesn’t change or user-defined convergence condition occurs. Figure 9 gives an example of vertex clustering and cluster refining of a b lade.
ICADAM_P193
-6-
(2) Refined regions after region merging Figure 10: Connected region merging and refining. (1) Initial segmented regions
4.7 Experiments and results
The algorithms mentioned in the previous sections have been implemented and considerable cases have been tested. The implementation is embedded in Microsoft Visual C++ supported by the CGA L libraries .The visualization result is based on Open/GL libraries. Figure 11 gives the segmentation results for three main mechanical parts (1): blade; (2): casting; (3): die model.
Copyright IDMME - Virtual Concept
IDMME - Virtual Concept 2010
Reverse Engineering for NC Machining Simulation
INRIA for their support and funding of this project. 7- References
[A1] Aras E. Cutter-workpiece engagement identification in mult i-axis milling. Ph.D Thesis, the University of Brit ish Colu mb ia, 2008 [B1] Burns M. Automated fabrication: Improving productivity in manufacturing. Prentice Hall Press, 1993 [BJ1] Besl P.J., Jain R. C. Seg mentation through variable order surface fitting. Trans. of IEEE on Pattern Analysis and Machine Intelligence 10, 2, 167–192, 1988 [B M1] Baek N., Maeng S.R., Sh in S.Y., Choi B.K., A Z-map update method for linearly moving tools, Co mputer Aided design 35, 995-1009, 2003 Figure 11: Segmentation results.
[CM1 ] Cohen-Steiner D., Morvan J.-M. Restricted Delaunay triangulation and normal cycle. In 19th Annual ACM Table 1evaluates the performance of the proposed approach. Symposiu m on Co mputational Geo metry’03, pp. 312–321, The algorith ms were implemented with M icrosoft Visual C++ 2003 8.0 on a low-end PC platform (1.83 GHz CPU and 1G RAM). The testing results demonstrate that the proposed methods can [H1] Hook T. van. Real time shaded NC milling display. Co mputer Graphics, 20(4):15– 20, 1986 provide satisfying results for engineering applicat ions. [HC1 ] He L., Chao Y., Su zuki K., Wu K. Fast connectedcomponent labeling. Pattern Recognition 42, 9, 1977– 1987, 2009 [JD1] Jerard R.B., Drysdale R.L., Hauck K., Schaudt B., Magewick J. Methods for detecting errors in sculptured surface machining. IEEE Co mput Graph Appl, 9(1):26–39, 1989
Table 1: Time performance of the segmentation method.
[K1] Kettner L. Using generic programming for designing a data structure for polyhedral surfaces, Journal of 5- Conclusion Co mputational Geo metry: Theory and Applications, 13: 6590, 1999 This paper presents two main approaches to reverse engineering for NC Simulat ion. A Boundary representation of [KD1 ] Koenderin k J.J., Doorn A.J. Surface shape and the in-process geometry in NC Simu lation is constructed. A curvature scales. Imaging and Vision Co mputing 10, 8 557– simp le and straightforward one surface per triangle method is 565, 1992 described. However, when the number of the meshes is small, [KP1] Kim, C. B., Park, S., and Yang, M. Y., Verification of this method is efficient and robust. The second way utilizes the NC tool path and manual and automatic editing of NC code, additional informat ion. The additional information tells us the International Journal of Production Research,;33(3), 659– type of the surface to be constructed and whether two adjacent 673, 1995 meshes belong to a same surface. Using this method, we could obtain the Boundary representation of the solid that only [LG1 ] Lillholm M., Griffin L.D. Statistics and category contains planes and cylinders. A discrete shape segmentation systems for the shape index descriptor of local 2nd order method is then proposed based on discrete differential natural image structure. Image and Vision Co mputing 27, 6, geometry and the pair shape index curvedness. The method can 771–781, 2009 recognize and ext ract the regions surrounded by boundaries [LO1] Liu S.Q., Ong S.K., Chen Y.P., Nee A.Y.C., which can be sharp edges, smooth edges, inflexion edges, etc. Real-time, dynamic level-of-detail management for threeUnlike other segmentation methods in which the iterative axis NC milling simulat ion, Co mputer-Aided Design, 38 region growing algorith m is always used, we developed a new 378-391, 2006 approach to decompose the vertices into a group of regions [LL1] Lee SH, Lee KS. Local mesh decimation algorith m which can be represented by the primary shapes. Some for view-independent three-axis NC milling simulation. Int J experimental results demonstrate the usability and quality of Adv Manuf Technol, 19, 579–86, 2002 the proposed methods. [MW1] Meek D., Walton D. On surface normal and Gaussian curvature estimations given data sampled fro m a smooth surface, Journal of Co mputer-Aided Geo metry 6- Acknowledgements Design, 17, 521-43, 2000 We thank the French Embassy in China, the French [O1] O’neill B. Elementary Differential Geo metry, competitiveness cluster System@tic and Spring Technologies Academic Press, 1997 as well as France-China Innovation Coopol program and
ICADAM_P193
-7-
Copyright IDMME - Virtual Concept
IDMME - Virtual Concept 2010
Reverse Engineering for NC Machining Simulation
[RF1] Raja V., Fernandes, K. J. Reverse engineering: an industrial perspective. Springer series in advanced manufacturing, 2008 [RW1 ] Rock S., Wozny M. Generating topological informat ion fro m a “bucket of facets”, Proceedings of Solid freeform fabrication symposiu m, 251-9, 1992 [SP1] Sunil V., Pande S. Automat ic recognition of features fro m freeform surface CA D models, Journal of Co mputerAided Design, 40: 502-17, 2008 [SP2] Shin H., Park J., Choi B. et al. Efficient topology construction from triangle soup, IEEE Proceedings of the Geo metry Modeling and Processing, GMP’04, 359-65, 2004 [VH1 ] Voelcker H.B., Hunt W. A., Role of Solid Modelling in Machining-Process Modelling and NC Verificat ion, SAE Preprints, Vo l. 810195, 1981 [YT1] Yau H.T., Tsou L.S., and Tong Y.C., Adaptive NC Simu lation for Mult i-axis So lid Machining, Co mputer-Aided Design and Applications, Vo l.2, No.1, 2005 [Z1] Zhao H. Multisensor integration and discrete geometry processing for coodinate metrology. Ph.D Thesis, Eco le Normale Superieure de Cachan, France, 2010
ICADAM_P193
-8-
Copyright IDMME - Virtual Concept