-
abstract
- build upon existing physically based methods
-
introduction
- does not simulate dynamic forces or elastic waves
- the nodes do not move or have velocity
- use a first-order quasi-static system
- inherently more stable than a second-order system
- optionally move nodes as a post-processing step to create crack width
-
where cracks occur and how they propagate
- O'brien1999
-
Background
-
two categories of methods
for generating crack patterns
-
non-physical approach
- maps some form of procedural crack pattern to an object’s surface[16]
- carves out a volume to generate crack depth [18,5]
- form cracks on a 2D surface to replicate Batik painting cracks [35]
- create cracks similar to an input image [20]
-
physically based methods
- reproduce crack patterns in microsphere monolayers[32]
- model tree bark[6]
- cracks in surfaces[12]
- volumes[13]
- multi-layer surfaces [10]
- materials peeling off of surfaces [11]
- Paint cracking and peeling [28]
- wedge-shaped finite elements to model cracks [7,8]
-
previous works
-
methods
- simulating elastic [34] and inelastic deformation of objects, including fracture [33]
- mass-spring system [24]
-
Finite elements
- brittle fracture [27]
- ductile fracture [26]
- elasto-plastic materials and interactive fracture [21]
- fracture and deformation of voxelized surface meshes [22]
-
other algorithms
- virtual node algorithm [19]
- a membrane-bending model for thin shell objects [9]
- a meshless framework [29]
-
similar works
-
Valette and colleagues [36]
-
use both physical and non-physical processes
- precompute a 2D crack network
- model the volume decrease in the material
- compute the resulting crack widths
- apply it to a parameterized 3D surface
-
Our method
- use heuristics to initialize the stress field
- a relaxation process to compute the resulting crack pattern.
- run our simulation directly on the 3D triangle mesh of the model.
-
Mesh updates
- Relaxation
-
Other stress field updates
- Modeling anisotropic materials
- Modeling impact patterns
- Using curvature
- Defining arbitrary stress patterns
-
Generating cracks
- We do not add a new crack edge if it is too close to a current crack edge
-
Stress, forces and the separation tensor
-
The algorithm
- Initialize the stress field according to heuristics
and optionally evolve it with relaxation.
- Compute the failure criteria for each node and store
the nodes in a priority queue based on this value.
-
While failure can occur and
the user wishes to continue
- Crack the mesh at the node associated
with the top of the priority queue.
-
Evolve the stress field
- Perform relaxation.
- Optional: Add shrinkage tension
and/or curvature biasing.
- Update the mesh information and priority queue.
-
For display, either
- Post-process the mesh by moving the vertices to
give the cracks width and filling in the gaps with
side-walls for the cracks.
- Directly render crack edges.
-
Stress field
-
equilibrium
- when the stress field is initialized to zero
-
drying and shrinkage
- uniform tension
- or
- curvature tensor
-
example
- left: Curvature; right: Uniform
- Forces
-
The separation tensor
-
to determine
- whether a crack occurs at a node
- the resulting orientation for the crack surface
-
Post-processing
- curling effect