Filling Arbitrary Holes in Finite Element Models 17 th International Meshing Roundtable 2008...

Post on 20-Dec-2015

217 views 3 download

Tags:

Transcript of Filling Arbitrary Holes in Finite Element Models 17 th International Meshing Roundtable 2008...

Filling Arbitrary Holes in Finite Element Models

17th International Meshing Roundtable

2008Schilling, Bidmon, Sommer, and

Ertl

Motivation

Source: Schilling et al.

• Computer-Aided Engineering (CAE)– Preprocessing for Finite Element

analysis• e.g. computational fluid dynamics

simulation for acoustics• thousands of holes

Related Work• Volumetric Approaches

– Split region around a hole into inner and outer parts• Boundary layer defines missing surface

– [Davis et al.]: Signed distance function is “extended through the volume” until it spans all holes

• Resulting quality not sufficient for CAE– [Podolak et al.] Spatial decomposition for complex holes

• Hard to treat many independent meshes• Geometry-Based Techniques (more promising)

– [Wang et al.]: Moving least squares (MLS) to reconstruct locally smooth surface

• MLS: Evaluate vertices’ neighborhood using weighted least squares • Unsuitable for CAE general hole shapes

– [Tekumalla et al.]*: Advancing front method to close holes incrementally

– [Liepa et al.]*: Dynamic programming to create minimal surfaces– Holes need not be planar

– * basis of this new work

Source: Schilling et al.

Types of Holes

Source: Schilling et al.

Hole Patching Requirements

• Preserve existing geometric features.

• Provide acceptable results even when neighborhood information is absent.

• Interactive influence on shape of patching mesh.

Source: Schilling et al.

Setting up Semantic Holes across Multiple Meshes

• Balance user effort and computation speed for complex semantic holes.

• vs, vt are selected by user (could be from different meshes)

• Use a bounding volume hierarchy to calculate distances and find connecting node pairs.

• Connection criteria (see Figure 3):1) Minimize . 2) Minimize ||dj|| 3) Minimize

Source: Schilling et al.vj1

j

Setting up Semantic Holes across Multiple Meshes (continued)

Source: Schilling et al.

Patching Holes: Advancing Front

• Adapted from [Tekumalla et al.]*• Edge (by default) is part of advancing front.

Source: Schilling et al.

makeConvex addVertices

bisector of edge

uses MLS

*DP approach from [Liepa et al.] is adapted to fill small, simple holes with minimal surfaces.

Patching Holes: Potential Advancing Front

Problems• Enclosed feature lines can be removed by

makeConvex.• MLS in addVertices can extend patching mesh

too far (see Figure 6.)

Source: Schilling et al.

[11]= Tekumalla et al. [12] = Wang et al.

Patching Holes: Fixing Advancing Front

Problems• In makeConvex, test & avoid cutting feature lines

(Fig. 7a).

• Instead of MLS, place new node in plane of adjacent element. User-defined bending angle is enforced

later.

Source: Schilling et al.

Patching Holes: User-Defined Bending

Source: Schilling et al.

Patching Holes: Collinearity Issue

• Collinear neighboring nodes can prevent a node from moving, hindering optimization.

– Moving might increase distance to neighbors.

Source: Schilling et al.

Patching Holes: Fronts Missing Each Other

• Fronts not oriented towards each other can miss each other as they grow.

Source: Schilling et al.

consider as a neighbor

Patching Holes: Bending Enforced by User

• Sometimes only C0 continuity is desired.

• Initial maximum bend is allowed.

Source: Schilling et al.

Patching Holes:Edge Lengths of New

Triangles• Two user-controllled edge length

options:

Source: Schilling et al.

leaves gap between meshes

(a) (b)

Results• Hole detection, hole meshing and volume mesh generation

can be done now in hours rather than days.• Hole classification filters help reduce number of holes.

– Car model: 463 parts and 3359 initial holes, reduced to 248 holes. 201 holes closed automatically.

Source: Schilling et al.

Results

Source: Schilling et al.

Results

Source: Schilling et al.