Presentation is loading. Please wait.

Presentation is loading. Please wait.

Extracting the Topology Information from STL Model in order to Generate Cross-sectional Loops Efficiently Islam Md. Olioul*, Ho Chan Kim*† Department.

Similar presentations


Presentation on theme: "Extracting the Topology Information from STL Model in order to Generate Cross-sectional Loops Efficiently Islam Md. Olioul*, Ho Chan Kim*† Department."— Presentation transcript:

1 Extracting the Topology Information from STL Model in order to Generate Cross-sectional Loops Efficiently Islam Md. Olioul*, Ho Chan Kim*† Department of Mechanical and Automotive Engineering, Andong National University, South Korea. M I L Manufacture Information Lab Introduction In Additive Manufacturing, a CAD 3D model is sliced into several 2D Cross-Sections to produce the physical model layer-by-layer. CAD produced STL files contain triangular tessellation to define the surface of the model. It includes many errors like holes, gaps and corrupted disks. In this paper, we are presenting some data structure and methods to fix STL errors and create Cross-sectional Loops for each layer. STL Data Format STL Formatted Model ASCII Format Binary Format Triangular Mesh Facet Representation Methodology We checked the identical vertices and created a vertex list where each mesh vertex exists exactly once. We created a TrianglesMap and VerticesMap data structure. TrianglesMap represents the original STL data structure using vertex’s indexes. VerticesMap is a LookUp data type object, contains a collection of vertex keys and their iteration mapping. These three data objects will help us to extract the topology of the mesh. In STL, each triangle has three edges. Each edge in a mesh is shared exactly by two adjacent triangles. These edges are called Half Edges. Each half edge must have two faces. If we simplify these half edges with their faces, we can simply detect the Holes by counting the number of faces each edge has. After that we can categorize the edges depending on cross-sectional planes and find the cross section points. Finally, we can add the cross-sections on the plane to create the Cross-sectional Loop. Errors in STL Formatted Models Proposed Data Structures and Results Hole in Mesh Duplicate Facets Corrupted Disk Data Object for Vertices: V: {Vi  (x, y, z)i} Here, “i” defines index of unique vertex in vertices list and i = 0, … …, Nv Data Object for Normal/Faces: N: {Ni  (x, y, z)i} Here, “i” defines index of unique normal in normal list and i = 0, … …, Nn Data Object for Triangular Meshes: T: {Ti  (Iv1, Iv2, Iv3)i} Here, “Iv1, Iv2, Iv3” define the indices of each vertex in triangles and i = 0, …, Nt Data Object for Edges: E: {Ei  (Iv1, Iv2)i} Here, “i” defines index of unique edge in edge list and i = 0, … …, Ne Implemented Segments using C# .NET Benefits: All the described objects can help to find the topology of the mesh. VerticesObject and NormalObject eliminates all the duplicate Points/Coordinates, which can provide faster processing. TriangularMeshObject and EdgesObject can help to find STL errors and slice information. Analysis on new Data Structure: The following is a comparison of the number of vertices in STL Data Structure and our developed Data Structure: Conclusion There are no deterministic algorithms to fix STL errors and create Cross-sectional Loops. However, we found that it is much more suitable to use Edge-oriented data structure over triangular mesh for process planning. M I L Manufacture Information Lab


Download ppt "Extracting the Topology Information from STL Model in order to Generate Cross-sectional Loops Efficiently Islam Md. Olioul*, Ho Chan Kim*† Department."

Similar presentations


Ads by Google