Presentation is loading. Please wait.

Presentation is loading. Please wait.

APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING 14 - 16 June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of.

Similar presentations


Presentation on theme: "APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING 14 - 16 June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of."— Presentation transcript:

1 APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING 14 - 16 June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of Mathematics and Information Science Warsaw University of Technology Visualisation of Solids in 5C Machining Simulation

2 1.Statement of the problem 2.Solution overview 3.Surface triangulation 4.Results Visualisation of Solids in 5C Machining Simulation Plan of the presentation

3 Visualisation of Solids in 5C Machining Simulation voxel – an element of the grid of cubes octree – a tree of voxels, where each voxel can be a parent of any of the 8 smaller voxels that appear after its subdivision white (black) point – point inside (outside) the solid white (black) voxel – voxel with all points white (black) gray voxel – voxel with both white and black points gray edge – edge between white and black corners edge partition point – approximate intersection of gray edge and boundary of a solid 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Definitions Representation of a solid 5C machining simulation

4 leaves of the octree - set of gray voxels covering the boundary of the solid Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Definitions Representation of a solid 5C machining simulation leaves of the octree - set of gray and black voxels covering the solid We use model 2 of the octree to represent a solid. Model 1 Model 2

5 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Definitions Representation of a solid 5C machining simulation object size: > 1 m accuracy of verification: 1 micrometer tool path: 75 CLDATA files trajectory length: > 8km octree: few milions of voxels voxel size: 1 mm

6 Top layer - buckets that hold triangulations - triangulations updated if simulation or LOD sets dirty flag - at that level field of view and occlusion culling happens Middle layer - triangulated voxels selected with level of detail heuristic Bottom layer - data from 5C machining simulation Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Three layers of the octree Dynamic updates of the octree Level of detail

7 Prepare triangulation (B) of the copy of the middle layer (dirty buckets only) Update the bottom layer of the octree Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Three layers of the octree Dynamic updates of the octree Level of detail time Update copy of the middle layer to match the middle layer (use LOD to select middle layer) Simulation threadVisualisation threads Display triangulation (A) (interactive camera) Wait for visualisation Exchange the roles of triangulation (A) and triangulation (B) and repeat. Additional objects involved: - copy of the middle layer - triangulation (A), triangulation (B)

8 Sequence of spheres centered at the camera position. Radiuses make geometric sequence with ratio 2:1. Spheres separate space into regions of different precision. Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Three layers of the octree Dynamic updates of the octree Level of detail

9 Marching cubes algorithm [Lorensen and Cline ‘84] - Configuration of the voxel – colors of the 8 corners - Look-up table indexed by configuration holds prepared triangulations - Triangulations are invariant of exact placement of Edge Partition Points - If two cubes with consistent colors of corners meet at a common face there is no discontinuity between their triangulations Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

10 Advantages of MC triangulation: a)If voxels of same size cover boundary of the solid then the triangulation is 2-manifold. Smooth normal field can be defined based on the normals of triangles. b)One degree of freedom for each vertex. Allows to: -better approximate the surface of the solid -avoid object space aliasing (visible artifacts caused by voxel representation of the surface) Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results EPPs Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

11 One degree of freedom for each vertex allows to better approximate the surface of the solid. Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results assumed EPP Triangulated voxels which have children in the octree leaves of the octree Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

12 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results 1. A set of voxels Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

13 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results 2. MC algorithm with all EPPs in the middle of the edge. Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

14 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results 3. One additional level in the octree used to choose between two positions (¼ or ¾ of the edge) for each EPP. Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

15 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results 4. Two additional level in the octree used to choose between four positions 1/8, 3/8, 5/8 or 7/8 of the edge) for each EPP. Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

16 Use any heuristic that lowers: Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results EPPs in half of the edges Simple EPP placement heuristic One degree of freedom for each vertex allows to avoid object space aliasing. Σ (all edges in the triangle mesh) (angle between normals of two triangles adjacent to the edge) Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

17 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Original MC algorithm produces discontinuity between voxels of different sizes. LOD results in triangulation of voxels of different sizes. Our solution is to add triangles that cover the holes. Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

18 MC algorithm for two different grids produces two different black regions on big face. Colors of 9 points from denser grid determine shape of both black regions. Triangulate symmetric difference of both black regions. Store prepared triangulations in the lookup table indexed by the combination of colors of 9 points from denser grid. Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Marching cubes algorithm Edge partition points Voxels of different sizes Data size observations …

19 (Only) 2 triangles per voxel on average Number of vertices is ≈ number of voxels 2 times better precision comes at a price of 4 times more voxels, vertices, triangles Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results object octree height number of octants [o] number of leaves [l] number of triangles [t] number of edges /vertices [e] l/(o-l)t/le/l metaballs993636070228814045606971513.002.000.99 metaballs82340821755463510681729823.002.000.99 car81725991304962600121253303.101.990.96 bumper84422643326726189993307353.041.860.99 Edge partition points Voxels of different sizes Data size observations Comparison of methods …

20 Simple CubesMarching Cubes Average number of triangles per voxel 62 Smooth normal fieldNoYes Avoiding object space aliasingNoYes Voxels of different sizeYesYes (after additional effort) TransparencyExpensiveComplexity = O(number of voxels) Additional storageNo≈ 1 vertex structure per voxel Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Edge partition points Voxels of different sizes Data size observations Comparison of methods …

21 Visualisation of Solids in 5C Machining Simulation Size of the model ≈ 1m Exact rendering of octree with precision ≈ 1mm and normals computed from the tool trajectory. 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary

22 Visualisation of Solids in 5C Machining Simulation Realtime rendering of the same octree without explicit information about normals. Size of rendered voxels ≈ 0.5cm. Size of the model ≈ 1m 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary

23 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary Test machine: Pentium 4 Prescott 3.00 GHz processor, 1GB DDR2 400 MHz RAM and nVidia GeForce 6800 Measured efficiency with and without using a)transparency, b)level of detail, c)occlusion culling 2 different objects (octree with >700,000 voxels and with >980,000 voxels) >100 of frames for different camera positions

24 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary Conclusions: Number of triangles reduced ≈8.5 times 29.4 frames/s on average 10.7 frames/s with transparency

25 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary Initial state of the octree consisted of over 170,000 octants and represented a car object. 3 bouncing balls had been thrown into the bounding box of the object. All the material inside swept volume of the balls was removed every frame. Test machine: Pentium 4 Prescott 3.00 GHz processor, 1GB DDR2 400 MHz RAM and nVidia GeForce 6800

26 Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary Conclusions: 32.3 frames/s on average (peeks probably caused by modifications of the octree, not visualisation)

27 Summary: 1. Realtime visualization, low refresh times for triangulations 2. Simple implementation – all calculations are done locally for single vertex or voxel 3. Quality of images good enough for preview of the 5C geometric simulation of machining 4. Transparency gained at little additional cost (both implementational and computational) Visualisation of Solids in 5C Machining Simulation 1. Problem statement 2. Solution overview 3. Surface triangulation 4. Results Static octree visualisation Bouncing balls test Summary

28 Visualisation of Solids in 5C Machining Simulation Thank you for your attention


Download ppt "APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING 14 - 16 June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of."

Similar presentations


Ads by Google