ece 600 – summer2009 course supplements …. ece 600 · 2019-08-19 · flavor of computational...

Post on 10-Jul-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Flavor of Computational Geometry

Lecture 10Mesh Generation

ECE 600 – Summer2009Course Supplements ….

Aly A. Farag

University of LouisvilleAcknowledgements:

Help with these slides were provided by Shireen Elhabian

ECE 600 - Su 09; Dr. Farag

Introduction

ECE 600 - Su 09; Dr. Farag

3D Objects

How can this object be represented in a computer?

ECE 600 - Su 09; Dr. Farag

3D Objects

This one?

ECE 600 - Su 09; Dr. Farag

3D Objects

How about this one?

ECE 600 - Su 09; Dr. Farag

3D Objects

This one?

ECE 600 - Su 09; Dr. Farag

Types of 3D object data

• Polygon meshes for complex real-world objects

• Spline patches from modeling programs

• Volume data or voxels (e.g. visible human project)

• Machine parts (Constructive Solid Geometry)

• And a few more

All have advantages, disadvantages. Increasingly, meshes areeasiest to use and simplest

ECE 600 - Su 09; Dr. Farag

Comparisons

• Efficient hardware rendering (meshes simple)

• Manipulation (edit, simplify, compress etc.)

– Splines easiest originally, but now many algorithms for polygon meshes

• Acquisition or Modeling

– Splines, CSG originally used for modeling

– But increasingly, complex meshes acquired from real world

• Compactness (Splines provide compact representation)

• Simplicity (meshes win big here)

ECE 600 - Su 09; Dr. Farag

Point Cloud

• Unstructured samples• Advantage: simplicity• Disadvantage: no

information onadjacency / connectivity– Have to use e.g.

k-nearest neighbors

ECE 600 - Su 09; Dr. Farag

Range Image

• Image: stores an intensity / color along each of a set of regularly-spaced rays in space.

• Range image: stores a depth along each of a set of regularly-spaced rays in space

• Obtained using devices known as range scanners

• Advantages:

– Uniform parameterization

– Adjacency / connectivity information

ECE 600 - Su 09; Dr. Farag

Range Image

• Not a complete 3D description: does not include partof object occluded from viewpoint

ECE 600 - Su 09; Dr. Farag

Range Image

• Adjacency in range image ≠ adjacency onsurface

ECE 600 - Su 09; Dr. Farag

Range Image Terminology

• Range images

• Range surfaces

• Depth images

• Depth maps

• Height fields

• 2½-D images

• Surface profiles

• xyz maps

• …

ECE 600 - Su 09; Dr. Farag

Polygon Soup

• Unstructured set of polygons:

– Often the output of interactive modeling systems

– Often sufficient for rendering, but not other operations

ECE 600 - Su 09; Dr. Farag

Mesh

Connected set of polygons (usuallytriangles)

– May not be closed

– Representation (simplest): Vertices,Indexed Face Set

ECE 600 - Su 09; Dr. Farag

Subdivision Surface

• Coarse mesh + subdivision rule

– Smooth surface is limit of refinements

ECE 600 - Su 09; Dr. Farag

Mesh Generation Algorithms

ECE 600 - Su 09; Dr. Farag

Overview• What is Mesh Generation?

• Geometry Basics

• Meshing Algorithms

– Tri/Tet Methods

– Quad/Hex Methods

– Surface Meshing

• Algorithm Characteristics

ECE 600 - Su 09; Dr. Farag

What is it?

• Mesh generation is the practice of generating a polygonalor polyhedral mesh that approximates a geometric domain.The term "grid generation" is often used interchangeably.

• Typical applications are for rendering to a computer screenor for physical simulation such as finite element analysis orcomputational fluid dynamics.

• The input model form can vary greatly but a commonsources are CAD, NURBS, B-rep and STL (file format).

• The field is highly interdisciplinary, with contributionsfound in mathematics, computer science, and engineering.

ECE 600 - Su 09; Dr. Farag

GeometryOur geometric domain …

ECE 600 - Su 09; Dr. Farag

Geometry

Vertices:x,y,z location

ECE 600 - Su 09; Dr. Farag

Geometry

Vertices:x,y,z location

Edges: bounded by two vertices

ECE 600 - Su 09; Dr. Farag

Geometry

Vertices:x,y,z location

Faces: closed set of edges

Edges: bounded by two vertices

ECE 600 - Su 09; Dr. Farag

Geometry

Vertices:x,y,z location

Faces: closed set of edges

Volumes: closed set of faces

Edges: bounded by two vertices

ECE 600 - Su 09; Dr. Farag

Geometry

Body: collection of volumes

Vertices:x,y,z location

Faces: closed set of edges

Volumes: closed set of faces

Edges: bounded by two vertices

ECE 600 - Su 09; Dr. Farag

Meshing Algorithms

ECE 600 - Su 09; Dr. Farag

Structured Meshing • Many of the algorithms for the generation of

structured meshes are descendents of "numerical gridgeneration" algorithms, in which a differential equationis solved to determine the nodal placement of the grid.In many cases, the system solved is an elliptic system,so these methods are often referred to as ellipticmethods.

• A structured mesh can be recognized by all interiornodes/vertices of the mesh having an equal number ofadjacent vertices.

• The mesh generated by a structured grid generator istypically all quadrilateral (polygon with four edges andfour vertices) or hexahedral (polyhedron with sixfaces).

• Algorithms employed generally involve complexiterative smoothing techniques that attempt to alignelements with boundaries or physical domains.

Volume-based meshing

Boundary-based meshing

ECE 600 - Su 09; Dr. Farag

Unstructured Meshing• Unstructured mesh generation, on the other

hand, relaxes the node valence (neighborhood)requirement, allowing any number of elementsto meet at a single node/vertex.

• Triangle (polygon with three vertices and threeedges) and Tetrahedral (polyhedron composedof four triangular faces, three of which meet ateach vertex) meshes are most commonlythought of when referring to unstructuredmeshing, although quadrilateral and hexahedralmeshes can also be unstructured.

• While there is certainly some overlap betweenstructured and unstructured mesh generationtechnologies, the main feature which distinguishthe two fields are the unique iterative smoothingalgorithms employed by structured gridgenerators.

Volume-based meshing

Boundary-based meshing

ECE 600 - Su 09; Dr. Farag

Tri/TetMethods

http://www.simulog.fr/mesh/gener2.htm

http://www.ansys.com

ECE 600 - Su 09; Dr. Farag

Octree/Quadtree

• Define initial bounding box (root of quad tree)

• Recursively break into 4 leaves per root to resolve geometry

• Find intersections of leaves with geometry boundary

• Mesh each leaf using corners, side nodes and intersections with geometry

• Delete Outside

Mark A.Yerry and Mark S, Shephard, (1984) "Three-Dimensional Mesh Generation by Modified OctreeTechnique", International Journal for Numerical Methodsin Engineering, vol 20, pp.1965-1990

Mark S. Shephard and Marcel K. Georges, (1991) "Three-Dimensional Mesh Generation by Finite OctreeTechnique", International Journal for Numerical Methodsin Engineering, vol 32, pp. 709-749

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Begin with boundary mesh - define as initial front

• For each edge (face) on front, locate ideal node C based on front AB

A B

C

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Determine if any other nodes on current front arewithin search radius r of ideal location C (Choose Dinstead of C)

A B

Cr

D

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Book-Keeping: New front edges added and deleted from front as triangles are formed.

• Continue until no front edges remain on front

D

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Book-Keeping: New front edges added and deleted from front as triangles are formed.

• Continue until no front edges remain on front

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Book-Keeping: New front edges added and deleted from front as triangles are formed.

• Continue until no front edges remain on front

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Book-Keeping: New front edges added and deleted from front as triangles are formed.

• Continue until no front edges remain on front.

ECE 600 - Su 09; Dr. Farag

Advancing Front

• Where multiple choices are available, use best quality (closest shape to equilateral)

• Reject any that would intersect existing front

• Reject any inverted triangles (|AB X AC| > 0)

A

B

Cr

R. Lohner, (1996) "Progress in GridGeneration via the Advancing FrontTechnique", Engineering with Computers,vol 12, pp.186-210

S. H. Lo, (1991) "Volume Discretization intoTetrahedra - II. 3D Triangulation byAdvancing Front Approach", Computersand Structures, vol 39, no 5, pp.501-511

ECE 600 - Su 09; Dr. Farag

Delaunay

TriangleJonathon Shewchukhttp://www-2.cs.cmu.edu/~quake/triangle.html

Tetmesh-GHS3DINRIA, Francehttp://www.simulog.fr/tetmesh/

ECE 600 - Su 09; Dr. Farag

Delaunay

circumcircle

Empty Circle (Sphere) Property: No other vertex is contained within the circumcircle (circumsphere) ofany triangle (tetrahedron)The idea is to have triangles with as minimum area as possible.

ECE 600 - Su 09; Dr. Farag

Delaunay

Delaunay TriangulationObeys empty-circle (sphere) property

ECE 600 - Su 09; Dr. Farag

Delaunay

Non-Delaunay Triangulation

ECE 600 - Su 09; Dr. Farag

Delaunay

Lawson Algorithm• Locate triangle containing X• Subdivide triangle• Recursively check adjoiningtriangles to ensure empty-circleproperty. Swap diagonal ifneeded

X

Given a Delaunay Triangulation of n nodes, How do I insert node n+1 ?

C. L. Lawson, (1977) "Software for C1 Surface Interpolation", Mathematical Software III, pp.161-194

ECE 600 - Su 09; Dr. Farag

Delaunay

X

Lawson Algorithm• Locate triangle containing X• Subdivide triangle• Recursively check adjoiningtriangles to ensure empty-circleproperty. Swap diagonal ifneeded

C. L. Lawson, (1977) "Software for C1 Surface Interpolation", Mathematical Software III, pp.161-194

ECE 600 - Su 09; Dr. Farag

Delaunay

Bowyer-Watson Algorithm• Locate triangle that contains the point• Search for all triangles whose circumcircle contain the point (d<r)• Delete the triangles (creating a void in the mesh)• Form new triangles from the new point and the void boundary

X

r c

d

Given a Delaunay Triangulation of n nodes, How do I insert node n+1 ?

David F. Watson, (1981) "Computing the Delaunay Tesselation with Application to Voronoi Polytopes", The Computer Journal, Vol 24(2) pp.167-172

ECE 600 - Su 09; Dr. Farag

Delaunay

X

Bowyer-Watson Algorithm• Locate triangle that contains the point• Search for all triangles whose circumcircle contain the point (d<r)• Delete the triangles (creating a void in the mesh)• Form new triangles from the new point and the void boundary

Given a Delaunay Triangulation of n nodes, How do I insert node n+1 ?

David F. Watson, (1981) "Computing the Delaunay Tesselation with Application to Voronoi Polytopes", The Computer Journal, Vol 24(2) pp.167-172

ECE 600 - Su 09; Dr. Farag

Delaunay

Begin with Bounding Triangles (or Tetrahedra)

ECE 600 - Su 09; Dr. Farag

Delaunay

Insert boundary nodes using Delaunay method (Lawson or Bowyer-Watson)

ECE 600 - Su 09; Dr. Farag

Delaunay

Insert boundary nodes using Delaunay method (Lawson or Bowyer-Watson)

ECE 600 - Su 09; Dr. Farag

Delaunay

Insert boundary nodes using Delaunay method (Lawson or Bowyer-Watson)

ECE 600 - Su 09; Dr. Farag

Delaunay

Insert boundary nodes using Delaunay method (Lawson or Bowyer-Watson)

ECE 600 - Su 09; Dr. Farag

Delaunay

Insert boundary nodes using Delaunay method (Lawson or Bowyer-Watson)

ECE 600 - Su 09; Dr. Farag

Delaunay

• Recover boundary• Delete outside triangles• Insert internal nodes

ECE 600 - Su 09; Dr. Farag

Delaunay

Node Insertion (refinement) based on:• Grid points• Centroid• Circumcenter• Advancing front• Voronoi segment• Edges

ECE 600 - Su 09; Dr. Farag

Delaunay

Node Insertion

Grid Based• Nodes introduced based on a regular lattice• Lattice could be rectangular, triangular, quadtree, etc…• Outside nodes ignored

h

ECE 600 - Su 09; Dr. Farag

Delaunay

Node Insertion

Grid Based• Nodes introduced based on a regular lattice• Lattice could be rectangular, triangular, quadtree, etc…• Outside nodes ignored

ECE 600 - Su 09; Dr. Farag

Delaunay

Node Insertion

Centroid• Nodes introduced at triangle centroids• Continues until edge length, hl ≈

ECE 600 - Su 09; Dr. Farag

Delaunay

Node Insertion

Centroid• Nodes introduced at triangle centroids• Continues until edge length, hl ≈

l

ECE 600 - Su 09; Dr. Farag

Delaunay

Node Insertion

Circumcenter (“Guaranteed Quality”)• Nodes introduced at triangle circumcenters• Order of insertion based on minimum angle of any triangle• Continues until minimum angle > predefined minimum

α

)30( o≈α

Jonathan RichardShewchuk, (1996)"Triangle:Engineering a 2DQuality MeshGenerator andDelaunayTriangulator",http://www.cs.cmu.edu/~quake/triangle.html , 1996

Paul L. Chew, (1989)"Guaranteed-QualityTriangular Meshes",TR 89-983,Department ofComputer Science,Cornell University,Ithaca, NY, April1989

Jim Ruppert, (1992)"A New and SimpleAlgorithm forQuality 2-Dimensional MeshGeneration".Technical ReportUCB/CSD 92/694,University ofCalifornia at Berkely,Berkely California

ECE 600 - Su 09; Dr. Farag

Delaunay

Circumcenter (“Guaranteed Quality”)•Nodes introduced at triangle circumcenters•Order of insertion based on minimum angle of any triangle•Continues until minimum angle > predefined minimum )30( o≈α

Node Insertion

Jonathan RichardShewchuk, (1996)"Triangle:Engineering a 2DQuality MeshGenerator andDelaunayTriangulator",http://www.cs.cmu.edu/~quake/triangle.html , 1996

Paul L. Chew, (1989)"Guaranteed-QualityTriangular Meshes",TR 89-983,Department ofComputer Science,Cornell University,Ithaca, NY, April1989

Jim Ruppert, (1992)"A New and SimpleAlgorithm forQuality 2-Dimensional MeshGeneration".Technical ReportUCB/CSD 92/694,University ofCalifornia at Berkely,Berkely California

ECE 600 - Su 09; Dr. Farag

Delaunay

Advancing Front•“Front” structure maintained throughout•Nodes introduced at ideal location from current front edge

Node Insertion

A B

C

David L. Marcumand Nigel P.Weatherill,"UnstructuredGrid GenerationUsing IterativePoint Insertion andLocalReconnection",AIAA Journal, vol33, no. 9, pp.1619-1625, September1995

ECE 600 - Su 09; Dr. Farag

Delaunay

Advancing Front•“Front” structure maintained throughout•Nodes introduced at ideal location from current front edge

Node Insertion

David L. Marcumand Nigel P.Weatherill,"UnstructuredGrid GenerationUsing IterativePoint Insertion andLocalReconnection",AIAA Journal, vol33, no. 9, pp.1619-1625, September1995

ECE 600 - Su 09; Dr. Farag

Delaunay

Voronoi-Segment•Nodes introduced at midpoint of segment connecting the circumcircle centers of two adjacent triangles

Node Insertion

S. Rebay, (1993)"EfficientUnstructured MeshGeneration by Meansof DelaunayTriangulation andBowyer-WatsonAlgorithm", JournalOf ComputationalPhysics, vol. 106,pp.125-138

ECE 600 - Su 09; Dr. Farag

Delaunay

Voronoi-Segment•Nodes introduced at midpoint of segment connecting the circumcircle centers of two adjacent triangles

Node Insertion

S. Rebay, (1993)"EfficientUnstructured MeshGeneration by Meansof DelaunayTriangulation andBowyer-WatsonAlgorithm", JournalOf ComputationalPhysics, vol. 106,pp.125-138

ECE 600 - Su 09; Dr. Farag

Delaunay

Edges•Nodes introduced at along existing edges at l=h•Check to ensure nodes on nearby edges are not too close

Node Insertion

h

h

h

P.L. George, F. Hechtand E. Saltel, (1991)"Automatic MeshGenerator withSpecified Boundary",Computer Methodsin AppliedMechanics andEngineering, vol 92,pp.269-288

ECE 600 - Su 09; Dr. Farag

Delaunay

Edges•Nodes introduced at along existing edges at l=h•Check to ensure nodes on nearby edges are not too close

Node Insertion

P.L. George, F. Hechtand E. Saltel, (1991)"Automatic MeshGenerator withSpecified Boundary",Computer Methodsin AppliedMechanics andEngineering, vol 92,pp.269-288

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Boundary Intersection•Nodes and edges introduced where Delaunay edges intersect boundary

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Boundary Intersection•Nodes and edges introduced where Delaunay edges intersect boundary

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

ECE 600 - Su 09; Dr. Farag

Delaunay

Boundary Constrained

Local Swapping•Edges swapped between adjacent pairs of triangles until boundary is maintained

ECE 600 - Su 09; Dr. Farag

D C

VS

Local Swapping Example•Recover edge CD at vector Vs

Boundary Constrained

DelaunayECE 600 - Su 09; Dr. Farag

D C

E1

E2

E3

E4E5

E6

E7

E8

Local Swapping Example•Make a list (queue) of all edges Ei, that intersect Vs

Boundary Constrained

DelaunayECE 600 - Su 09; Dr. Farag

D CE1

E2

E3

E4E5

E6

E7

E8

Local Swapping Example•Swap the diagonal of adjacent triangle pairs for each edge in the list

Boundary Constrained

DelaunayECE 600 - Su 09; Dr. Farag

D C

E2

E3

E4E5

E6

E7

E8

Local Swapping Example•Check that resulting swaps do not cause overlapping triangles. I they do, then place edge at the back of the queue and try again later

DelaunayECE 600 - Su 09; Dr. Farag

D C

E3

E4E5

E6

E7

E8

Local Swapping Example•Check that resulting swaps do not cause overlapping triangles. If they do, then place edge at the back of the queue and try again later

DelaunayECE 600 - Su 09; Dr. Farag

D C

E6

Local Swapping Example•Final swap will recover the desired edge.•Resulting triangle quality may be poor if multiple swaps were necessary•Does not maintain Delaunay criterion!

DelaunayECE 600 - Su 09; Dr. Farag

Quad/HexMethods

Structured

• Requires geometry to conform tospecific characteristics• Regular patterns of quads/hexesformed based on characteristics ofgeometry

Unstructured

• No specific requirements for geometry• Quads/hexes placed to conform togeometry.• No connectivity requirement (althoughoptimization of connectivity is beneficial)

• Internal nodes always attached to same number of elements

ECE 600 - Su 09; Dr. Farag

Structured

6

6

3

3

Mapped Meshing (Quad, polygon with four sides)

•4 topological sides•opposite sides must have similar intervals

Geometry Requirements

Algorithm

•Trans-finite Interpolation (TFI)•maps a regular lattice of quads onto polygon

ECE 600 - Su 09; Dr. Farag

Structured

3D Mapped Meshing (Hexa –polyhedron with six sides)

•6 topological surfaces•opposite surfaces must have similar mapped meshes

Geometry Requirements

ECE 600 - Su 09; Dr. Farag

Structured

http://www.gridpro.com/gridgallery/tmachinery.html http://www.pointwise.com/case/747.htm

Mapped Meshing

Block-Structured

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

• Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object • Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

• Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object • Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

• Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object • Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

• Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object • Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

•Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object •Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

• Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object • Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Medial Axis

Medial Axis

• Medial Object - Roll a Maximal circle or sphere through the model. The center traces the medial object • Medial Object used as a tool to automatically decompose model into simpler mapable or sweepable parts

ECE 600 - Su 09; Dr. Farag

Meshing Algorithms

ECE 600 - Su 09; Dr. Farag

Indirect Quad

Triangle splitting•Each triangle split into 3 quads•Typically results in poor angles

ECE 600 - Su 09; Dr. Farag

Indirect Hex

Tetrahedra splitting•Each tetrahedtra split into 4 hexahedra•Typically results in poor angles

ECE 600 - Su 09; Dr. Farag

Indirect Hex

Tetrahedra splitting•Each tetrahedtra split into 4 hexahedra•Typically results in poor angles

ECE 600 - Su 09; Dr. Farag

Indirect Hex

Tetrahedra splitting•Each tetrahedtra split into 4 hexahedra•Typically results in poor angles

ECE 600 - Su 09; Dr. Farag

Indirect Hex

Example of geometry meshed by tetrahedra splitting

ECE 600 - Su 09; Dr. Farag

Meshing Algorithms

ECE 600 - Su 09; Dr. Farag

Unstructured- Quad

Grid-Based

•Generate regular grid of quads/hexes on the interior of model•Fit elements to the boundary by projecting interior faces towards the surfaces•Lower quality elements near boundary•Non-boundary conforming

ECE 600 - Su 09; Dr. Farag

Unstructured- Quad

Grid-Based

•Generate regular grid of quads/hexes on the interior of model•Fit elements to the boundary by projecting interior faces towards the surfaces•Lower quality elements near boundary•Non-boundary conforming

ECE 600 - Su 09; Dr. Farag

Unstructured- Quad

Grid-Based

•Generate regular grid of quads/hexes on the interior of model•Fit elements to the boundary by projecting interior faces towards the surfaces•Lower quality elements near boundary•Non-boundary conforming

ECE 600 - Su 09; Dr. Farag

Grid-Based

•Generate regular grid of quads/hexes on the interior of model•Fit elements to the boundary by projecting interior faces towards the surfaces•Lower quality elements near boundary•Non-boundary conforming

Unstructured- Quad

ECE 600 - Su 09; Dr. Farag

Unstructured- Quad /Hex

Grid-Based

ECE 600 - Su 09; Dr. Farag

Unstructured-Hex

http://www.numeca.be/hexpress_home.html

Grid-Based

Gambit, Fluent, Inc.

ECE 600 - Su 09; Dr. Farag

Surface Meshing

A

B

3D Surface Advancing Front•form triangle from front edge AB

ECE 600 - Su 09; Dr. Farag

A

B

Surface Meshing

C

NC

3D Surface Advancing Front•Define tangent plane at front by averaging normals at A and B

Tangent plane

ECE 600 - Su 09; Dr. Farag

Surface Meshing

A

B

C

NC

D

3D Surface Advancing Front•define D to create ideal triangle on tangent plane

ECE 600 - Su 09; Dr. Farag

A

B

C

NC

D

3D Surface Advancing Front•project D to surface (find closest point on surface)

Surface Meshing

ECE 600 - Su 09; Dr. Farag

Surface Meshing

3D Surface Advancing Front•Must determine overlapping or intersecting triangles in 3D. (Floating point robustness issues)•Extensive use of geometry evaluators (for normals and projections)•Typically slower than parametric implementations•Generally higher quality elements•Avoids problems with poor parametric representations (typical in many CAD environments)

ECE 600 - Su 09; Dr. Farag

Surface Meshing

Parametric Space Mesh Generation

•Parameterization of the NURBS provided by the CAD model can be used to reduce the mesh generation to 2D

u

v

u

v

ECE 600 - Su 09; Dr. Farag

Surface Meshing

Parametric Space Mesh Generation

•Isotropic: Target element shapes are equilateral triangles

•Equilateral elements in parametric space may be distorted when mapped to 3D space.•If parametric space resembles 3D space without too much distortion from u-vspace to x-y-z space, then isotropic methods can be used.

u

v

u

v

ECE 600 - Su 09; Dr. Farag

Surface Meshing

•Parametric space can be “customized” or warped so that isotropic methods can be used.•Works well for many cases.•In general, isotropic mesh generation does not work well for parametric meshing

u

v

u

v

Parametric Space Mesh Generation

Warped parametric space

ECE 600 - Su 09; Dr. Farag

Surface Meshing

u

v

u

v

•Anisotropic: Triangles are stretched based on a specified vector field

•Triangles appear stretched in 2d (parametric space), but are near equilateral in 3D

Parametric Space Mesh Generation

ECE 600 - Su 09; Dr. Farag

Surface Meshing

•Stretching is based on field of surface derivatives

Parametric Space Mesh Generation

u

v

xy

z

⎟⎠

⎞⎜⎝

⎛zu

yu

xu

δδ

δδ

δδ ,,

⎟⎠

⎞⎜⎝

⎛zv

yv

xv

δδ

δδ

δδ ,,

⎟⎠

⎞⎜⎝

⎛=Δ

zv

yv

xv

δδ

δδ

δδ ,,v⎟

⎞⎜⎝

⎛=Δ

zu

yu

xu

δδ

δδ

δδ ,,u

uu Δ⋅Δ=E vu Δ⋅Δ=F vv Δ⋅Δ=G

⎥⎦

⎤⎢⎣

⎡=

GFFE

)(XM

•Metric, M can be defined at every location on surface. Metric at location X is:

ECE 600 - Su 09; Dr. Farag

Surface Meshing

•Distances in parametric space can now be measured as a function of direction and location on the surface. Distance from point X to Q is defined as:

XQXQXQl T )()( XM≈

u

v

xy

z

Parametric Space Mesh Generation

X

Q

)(XQl

u

v

X Q)(XQl

M(X)

ECE 600 - Su 09; Dr. Farag

Surface Meshing

Parametric Space Mesh Generation

•Use essentially the same isotropic methods for 2D mesh generation, except distances and angles are now measured with respect to the local metric tensor M(X).•Can use Delaunay or Advancing Front Methods

ECE 600 - Su 09; Dr. Farag

Surface Meshing

Parametric Space Mesh Generation

•Is generally faster than 3D methods (e.g. advancing front)•Is generally more robust (No 3D intersection calculations)•Poor parameterization can cause problems•Not possible if no parameterization is provided•Can generate your own parametric space (Flatten 3D surface into 2D)

ECE 600 - Su 09; Dr. Farag

Algorithm Characteristics

1. Conforming Mesh

•Elements conform to a prescribed surface mesh2. Boundary Sensitive

•Rows/layers of elements roughly conform to the contours of the boundary3. Orientation Insensitive

•Rotating/Scaling geometry will not change the resulting mesh4. Regular Node Valence

•Inherent in the algorithm is the ability to maintain (nearly) the same number of elements adjacent each node)

5. Arbitrary Geometry

•The algorithm does not rely on a specific class/shape of geometry

6. Commercial Viability (Robustness/Speed)

•The algorithm has been used in a commercial setting

ECE 600 - Su 09; Dr. Farag

Map

ped

Sub-

map

Tri S

plit

Tri M

erge

Q-M

orph

Grid

-Bas

edM

edial

Axi

sPa

ving

Map

ped

Sub-

map

Swee

ping

Tet S

plit

Tet M

erge

H-M

orph

Grid

-Bas

edM

edial

Sur

f.Pl

aste

ring

Whi

sker

W.

Algorithm Characteristics

Tris Hexes

Oct

ree

Dela

unay

Adv

. Fro

nt

QuadsTets

Conforming Mesh

Boundary Sensitive

Orientation Insensitive

Commercially Viability

Regular Node Valence

Arbitrary Geometry

1

2

3

4

5

6

ECE 600 - Su 09; Dr. Farag

This lecture was based on …

http://www.andrew.cmu.edu/~sowen/mesh.htmlwww.imr.sandia.gov/14imr/imr14_short_course.ppt

Meshing Research Corner

ECE 600 - Su 09; Dr. Farag

Thank You

ECE 600 - Su 09; Dr. Farag

top related