MeshRegion

MeshRegion[{p1,p2,},{mcell1[{i1,}],mcell2[{j1,}],}]
yields a mesh with cells , where coordinates given as integer i are taken to be .

MeshRegion[,{,wi[mcelli[]],}]
yields a mesh with cell properties defined by the symbolic wrapper .

Details and OptionsDetails and Options

  • MeshRegion is also known as a simplicial complex or cell complex.
  • MeshRegion can represent a piecewise linear region of any geometric dimension embedded in dimension 1, 2, or 3.
  • MeshRegion[] displays in a notebook as a plot of a mesh region.
  • MeshRegion is typically created using functions such as DelaunayMesh, DiscretizeGraphics, and DiscretizeRegion.
  • The region represented by MeshRegion consists of the disjoint union of mesh cells.
  • MeshRegion has an embedding dimension that is equal to the length of each point and can be found using RegionEmbeddingDimension.
  • Each cell has a geometric dimension and can be found using RegionDimension.
  • Possible mesh cells and their geometric dimensions:
  • Point[i]0point
    Line[{i1,i2,}]1line segments , ,
    Triangle[{i1,i2,i3}]2filled triangle
    Polygon[{i1,i2,}]2filled polygon
    Tetrahedron[{i1,,i4}]3filled tetrahedron
    Hexahedron[{i1,,i8}]3filled hexahedron
    Pyramid[{i1,,i5}]3filled pyramid
    Prism[{i1,,i6}]3filled prism
    Simplex[{i1,,ik}]0,1,2,3filled simplex
  • Tetrahedron, Hexahedron, Pyramid, and Prism can only be used with 3D coordinates.
  • Point, Line, Triangle, Polygon, Tetrahedron, Hexahedron, Pyramid, Prism, and Simplex all have multi-cell specifications as well.
  • The following special wrappers can be used for cells:
  • Labeled[cell,]display the cell with labeling
    Style[cell,]show the cell with the specified style
    Property[cell,name->value]associate the property with cell
  • Each cell in a MeshRegion is given a unique MeshCellIndex of the form , where d is the geometric dimension and i is the index.
  • For purposes of selecting cells of a MeshRegion, the following cell specifications may be used:
  • {d,i}cell with index i of dimension d
    {d,ispec}cells with index specification ispec of dimension d
    {dspec,}cells of dimensions given by dspec
    h[{i1,}]explicit cell with head h and vertex indices ,
    {c1,c2,}list of explicit cells
  • The index specification ispec can have the following form:
  • icell index i
    {i1,i2,}cells with indices
    Allall cells
    pattcells with indices matching the pattern patt
  • The dimension specification dspec can have the following form:
  • dexplicit dimension d
    Allall dimensions from 0 to geometric dimension of region
    pattdimensions matching the pattern patt
  • MeshRegion is always converted to an optimized representation and treated as raw by functions like AtomQ for purposes of pattern matching.
  • MeshRegion has the same options as Graphics for embedding dimension 2 and the same options as Graphics3D for embedding dimension 3 with the following additions and changes:
  • MeshCellLabelAutomaticlabels and placement for cells
    MeshCellStyleAutomaticstyles for cells
    MeshCellMarker0integer markers for cells
  • Style and other specifications for cells are effectively applied in the order MeshCellStyle, Style, and other wrappers, with later specifications overriding earlier ones.
  • Label style and other specifications for cell labels are effectively applied in the order MeshCellLabel and Labeled, with later specifications overriding earlier ones.
  • MeshRegion can be used with functions such as RegionMember, RegionDistance, RegionMeasure, and NIntegrate.

ExamplesExamplesopen allclose all

Basic Examples  (6)Basic Examples  (6)

A 1D (curve) mesh region in 1D:

In[1]:=
Click for copyable input
Out[1]=

Label each point with its index:

In[2]:=
Click for copyable input
Out[2]=

A 1D (curve) mesh region in 2D:

In[1]:=
Click for copyable input
Out[1]=

Label each point with its index:

In[2]:=
Click for copyable input
Out[2]=

A 2D (surface) mesh region in 3D with each point labeled by its index:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=

A 3D (volume) mesh region in 3D with points labeled by its index:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=

A mesh region containing cells of mixed dimensions:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=

A volume mesh region in 3D from DelaunayMesh:

In[1]:=
Click for copyable input
Out[1]=

Find its volume:

In[2]:=
Click for copyable input
Out[2]=
Introduced in 2014
(10.0)