530 likes | 537 Vues
3D Printing. Yingcai Xiao. 3D Printing. What and How Categories 3D Model Creation File Formats Printers Applications Services Challenges. What is 3D Printing?. A manufacturing process 3D objects Additive (one layer at a time) According to 3D models
E N D
3D Printing • Yingcai Xiao
3D Printing What and How Categories 3D Model Creation File Formats Printers Applications Services Challenges
What is 3D Printing? • A manufacturing process • 3D objects • Additive (one layer at a time) • According to 3D models • http://3dprinting.com/what-is-3d-printing/#whatitis
What is 3D Printing? "Rapid prototyping slicing" by Materialgeeza - Own work. Licensed under CC BY-SA 3.0 via Commons - https://commons.wikimedia.org/wiki/File:Rapid_prototyping_slicing.jpg#/media/File:Rapid_prototyping_slicing.jpg
How does it work? • Additive: one layer at a time • Common methods for producing layers: • FDM, SLS, SLA • FDM: fused deposition modeling • SLS: selective laser sintering • SLA: stereolithography
Categories of Additive Manufacturing (American Society for Testing and Materials) • Extrusion Deposit • Vat Photopolymerisation • Material Jetting • Binder Jetting • Powder Bed Fusion • Sheet Lamination • Directed Energy Deposition
Extrusion Deposit • A.k.a: fused deposition modeling (FDM) • Most commonly used • Prototyping • Inexpesive "FDM by Zureks" by Zureks - Own work. Licensed under GFDL via Commons - https://commons.wikimedia.org/wiki/File:FDM_by_Zureks.png#/media/File:FDM_by_Zureks.png
Extrusion Deposit • Structure of an Extruder • Demo of FDM • https://youtu.be/WHO6G67GJbM "Extruder lemio" by Lemio - http://reprap.org/wiki/File:Extruder_lemio.svg. Licensed under GFDL via Commons - https://commons.wikimedia.org/wiki/File:Extruder_lemio.svg#/media/File:Extruder_lemio.svg
Extrusion Deposit • Extrusion Materials • acrylonitrile butadiene styrene (ABS) • polylactic acid (PLA) • high-impact polystyrene (HIPS) • thermoplastic polyurethane (TPU) • aliphatic polyamides (nylon), • Polyether ether ketone (PEEK) • paste-like materials (ceramic, chocolate, …)
Powder Bed Fusion • E.g.: Selective laser sintering (SLS) • "Selective laser melting system schematic" by Materialgeeza - Own work. Licensed under CC BY-SA 3.0 via Commons - https://commons.wikimedia.org/wiki/File:Selective_laser_melting_system_schematic.jpg#/media/File:Selective_laser_melting_system_schematic.jpg
Powder Bed Fusion • Selective laser sintering (SLS) • Developed in 1980s at UT Austin • Patent expired 2014 • Materials: metals, polymers, nylon • In powder form. • Un-melted powder becomes supporting material.
Vat Photopolymerisation Examples: SLA (stereolithography) CLIP (Continuous Liquid Interface Production) "Stereolithography apparatus" by Materialgeeza - Own work. Licensed under CC BY-SA 3.0 via Commons - https://commons.wikimedia.org/wiki/File:Stereolithography_apparatus.jpg#/media/File:Stereolithography_apparatus.jpg
Material Jetting • Image source: CustomPartNet Image source: CustomPartNet
Binder Jetting Image source: additively.com
3D Model Creation • 3D Scanners • e.g.: Kinect • CAD (Computer-Aided Design) software • e.g.: AutoCAD (free for students) • http://www.autodesk.com/education/free-software/all • Visualization software • e.g. VTK • http://www.vtk.org/
3D Print File Format • STL: STereoLithography • https://en.wikipedia.org/wiki/STL_%28file_format%29 • By 3D Systems • Triangulated surface meshes • ASCII or binary • No unit • No color
3D Print File Format • 3MF: 3D Manufacturing Format • www.3mf.io • Geometries (Triangulated, NURBs, …) • Materials (Color, Texture, Composite) • Open source
3D Print File Format • 3MF: 3D Manufacturing Format www.3mf.io • Microsoft • Consortium • https://github.com/3mfconsortium • Microsoft donated code reads STL/OBJ/3MF, writes 3MF • http://www.3mf.io/what-is-3mf/3mf-specification/
3D Print File Format • 3MF Example created by • Kinect • Supported in Windows 10
3D Printers • Prusa (RepRap.org) • MakerBot Replicator • LulzBot TAZ • MakerGear • Formlabs • Ultimaker • Polymaker (printing materials)
Applications • Prototyping • Manufacturing (cars, houses,..) • Arts • Entertainment • Medicine • Food • Personal • https://www.google.com/search?q=3D+printing&biw=1280&bih=689&source=lnms&tbm=isch&sa=X&ved=0CAgQ_AUoA2oVChMI3rKu4IWLyAIVi0mSCh1NwQpL
3D Printing Services • Printing Services: • Sculpteo • Ponoko • Shapeways
3D Printing Services • Model Services: • Pinshape • CGTrader • MyMiniFactory • Thingiverse • Yeggi
Challenges in 3D Printing • True color objects • Supporting curved objects in FDM • Voxelization (non smooth surface and internal fracture)
Summary Infographics by Sculpteo http://3dprinting.com/what-is-3d-printing/#whatitis http://3dprint.com
3D Data Representation • Yingcai Xiao
Characteristics of Data • DiscreteInterpolation • P1, P2 • Regular/Irregular • Data Dimensions
Data Structure Design Criterion • Compact (save space) • Efficient (fast retrieval) • Map-able (easy to convert) • Minimal Coverage (small foot prints) • Simple (easy to use)
Dataset • Data objects in the visualization pipeline are called datasets • consisting of two pieces: an organizing structure and supplemental data attributes.
Dataset • Structure: topology and geometry • Topology: is the set of properties invariant under certain geometric transformations. • Geometry: is the instantiation of the topology; the specification of positions in a 3D space. • VTK Model: the structure consists of cells and points. The cells specify the topology; while the points specify the geometry
Dataset • Dataset Attribute: • Data to be visualized. • Associated with each point. • Typical attributes: color, texture, and user-defined data.
Cell Types • A data set consists of one or more cells • A cell is defined by a “type” and an ordered list of point • Type: topology, cell type • Ordered list: geometry, points • Together: organizational structure • Use Set: all the cells using a point: • U(pi) = {Ci: pi Ci}
Cell Types Vertex: zero-dimensional cell, It is defined by a single point. Line: one dimensional cell. It is defined by two points. Polyline: is a composite one-dimensional cell consisting of n connected lines. It is defined by an ordered list of n+1 points. Triangle: is a primary two-dimensional cell. The triangle is defined by a counter-clockwise ordered list of three points. Polygon: is a primary two-dimensional cell. The polygon is defined by an ordered list of three or more points lying in a plane Tetrahedron: is a primary three-dimensional cell. It is defined by a list of four nonplanar point.
Attribute Data • Attribute data is information associated with the structure of the dataset. It is what to be visualized. • Dataset Attribute Model • Scalars • Vectors • Normals • Texture Coordinates • Tensors (The rank of a tensor is the dimension of the matrix containing its values.) • User-defined
Type of Datasets • Dependent on topology of the dataset. • Uniform Grid (uniform in each direction) • Parameters: • Dimension: nx, ny, nz • Origin: x0, y0, z0 • Spacing: dx, dy, dz
Rectlinear Grid • IJK space. x = x[I]; y = y[J]; z = z[K]; • Data array (i, j, k), i changes first, then j, k last. • Simple • compact (takes O(nx +ny + nz) more space) • speedy retrieval • Little more flexible
Structured Grid • Dimension: nx, ny, nz • Nonuniform spacing • IJK space (no formula) • Coordinates of each grid node need to be given. x(I,J,K), y(I,J,K), z(I,J,K)
Unstructured Grid • No dimensions parameters: nx, ny, nz • No IJK space • Coordinates of each node need to be given • Most flexible, can represent any structures of data • Not compact (need space to save xyz values and cell information) • Slow retrieval
Unstructured Surface • Polygonal Surface • No dimensions parameters: nx, ny, nz • No IJK space • Coordinates of each node need to be given • Data value(s) on each node needs to be given
Structure Representation • P1 of T1 and P2 of T2 are connected at P(1,0,0)
Structure RepresentationThe Wrong Way: Making Copies • class Tri { public: point P1, P2, P3; }; • Tri T1, T2; • T1.P1.x=1.0; • T1.P1.y=0.0; • T1.P1.z=0.0; • ……. • T2.P2.x=1.0; • T2.P2.y=0.0; • T2.P2.z=0.0; • ………
Structure Representation: Wrong Way • Each triangle keeps a copy of the vertex values. • Drawback: if the coordinate of Pis changed, all cells having a copy of its value need to be updated.
Structure Representation: Correct Way • Save the vertex values in an array (Point List). • Store the indexes of the vertexes for each triangle in the triangle definition
Structure RepresentationThe Correct Way: Indexing • P2.x=1.0; • P2.y=1.0; • P2.z=0.0; • P3.x=0.0; • P3.y=1.0; • P3.z=0.0; • Point List • P0.x=0.0; • P0.y=0.0; • P0.z=0.0; • P1.x=1.0; • P1.y=0.0; • P1.z=0.0;
Structure RepresentationThe Correct Way: Indexing • class Tri{ public: int ID1, ID2, ID3; }; • Tri T1, T2; • T1.ID1=0; • T1.ID2=1; • T1.ID3=3; • T2.ID1=1; • T2.ID2=2; • T2.ID3=3;
Structure Representation: The Correct Way: Indexing • Each triangle keeps an index list (cell list) of its vertexes. • If the coordinate of Pis changed, none of the cells using it needs to be changed. Only the one copy of its value in the point list needs to be updated.