The SEDRIS Data Representation Model
APPENDIX A - Classes
Mesh Face Table

Class Name: Mesh Face Table

Superclass - <Data Table>

Subclasses

This DRM class is concrete and has no subclasses.

Definition

An instance of this DRM class is a 2-dimensional <Data Table>, classified as ECC_MESH_FACE_SET, which defines the face elements of a <Finite Element Mesh> instance in terms of vertex numbers in the ordered <Vertex> component list of the <Finite Element Mesh>.

The two <Regular Axes> of a <Mesh Face Table> instance are constrained as follows.

The <Table Property Descriptions> of a <Mesh Face Table> instance are constrained as follows.

  1. The first <Table Property Description> specifies, for cell i, j, the index in the ordered <Vertex> list of the <Vertex> representing the jth node of the ith mesh face.

    If the ith mesh face contains less than j nodes, so that j is greater than the number of the last listed node of mesh face i, then the cell data element contains zero (0).

    Field Value
    meaning { SE_ELEM_CODE_TYP_INDEX, { SE_INDEX_CODE_MESH_VERTEX}}
    value_type SE_PDV_INTEGER_UNSIGNED
    value_unit EUC_UNITLESS
    value_scale ESC_UNI

    Note that the edges of each mesh face i are implicitly defined by this <Table Property Description>, by pairing node j to node j + 1.

  2. The optional second <Table Property Description> defines surface topology by indicating, for each edge (j, j + 1) of mesh face i, the index of mesh face k (if any) that is adjacent to mesh face i along the edge.

    A value of 0 indicates an "outside" or "universal" adjacency. A value of i for mesh face i indicates that the edge is artificially connecting an inside perimeter ring to another perimeter ring.

    Field Value
    meaning { SE_ELEM_CODE_TYP_INDEX, { SE_INDEX_CODE_ADJACENT_MESH_FACE}}
    value_type SE_PDV_INTEGER_UNSIGNED
    value_unit EUC_UNITLESS
    value_scale ESC_UNI

For a given SE_INDEX_CODE_MESH_FACE i (>0) and SE_INDEX_CODE_MESH_NODE j, the (i, j)-th cell gives the vertex number that comprises the j-th node of the i-th mesh face. The mesh face vertices are listed (j index) in clockwise order around the outer perimeter of the mesh face, starting and ending with a first vertex. If inner perimeter rings are present, the vertex list along the SE_INDEX_CODE_MESH_NODE axis continues with inner perimeter vertices in counter-clockwise order starting and ending with a first vertex on each inner ring.

The mesh face node ordering implicitly defines the edges of each mesh face. The data provider has the option of defining Surface topology by adding a second <Table Property Description>, with meaning SE_INDEX_CODE_ADJACENT_MESH_FACE, to each cell. The SE_INDEX_CODE_ADJACENT_MESH_FACE in cell (i,j) is the mesh face adjacent to mesh face i at the edge between nodes j and j+1.

Primary Page in DRM Diagram:

Secondary Pages in DRM Diagram:

Example

  1. Consider 6 <Vertex> instances, used to define a <Mesh Face Table>, where the mesh would be diagrammed as follows.

        (k) =  k
    
        Mesh:
    
            (1)-----(2)-----(3)
             \  A  /  \  B   |
              \   /  C \     |
               (4)------(5)-(6)
    

    So in this example, 6 <Vertex> instances form the nodes of the mesh, which has 3 mesh faces (A, B, C).

    The corresponding <Mesh Face Table>, without surface topology, would be organized as follows, where each individual cell contains a vertex number.

    ALIGN=CENTER>Node Number
    1 2 3 4 5
    1 (Mesh Face A) 1 2 4 1 0
    2 (Mesh Face B) 2 3 6 5 2
    3 (Mesh Face C) 4 2 5 4 0

  2. Consider the <Mesh Face Table> from the previous example, with the addition of surface topology. In this instance, each individual cell contains a {vertex number, adjacent mesh face number} pair.

    ALIGN=CENTER>Node Number
    1 2 3 4 5
    1 (Mesh Face A) 1, 0 2, 3 4, 0 1, 0 0, 0
    2 (Mesh Face B) 2, 0 3, 0 6, 0 5, 3 2, 0
    3 (Mesh Face C) 4, 1 2, 2 5, 0 4, 0 0, 0

FAQs

Isn't a <Mesh Face Table> just an instance of a <Property Table>?

No. A <Mesh Face Table> has very rigid constraints on the values of its <Axis> and <Table Property Description> components, cell data ordering, and classification. Furthermore, a <Mesh Face Table> can only be instantiated as a component of a <Finite Element Mesh>.

What is the ordering rule for the SE_INDEX_CODE_MESH_VERTEX <Table Property Description>?

The rule is:

For a given SE_INDEX_CODE_MESH_VERTEX i, the nodes j shall be listed starting from a vertex on the outside perimeter of the Mesh Face and continuing consecutively around the perimeter in clockwise direction until the first vertex is reached (and repeated). If "inside" perimeters exist, node numbering continues counter clockwise around each internal ring in similar fashion. Clockwise implies an "up" direction. If the <Finite Element Mesh> is a surface, then "up" should be chosen consistently across all Mesh Faces. However, if the mesh is a solid mesh, then "up" is arbitrary for each Mesh Face.

Constraints

Composed of (two-way)(inherited)

Composed of (two-way)

Composed of (two-way metadata)(inherited)

Component of (two-way)(inherited)

Component of (two-way)

Inherited Field Elements

This class has no inherited field elements.

Notes

Composed of Notes


Classification_Data

 This indicates the kind of information represented by the
 <Data Table>, such as terrain elevation or
 water characteristics.

Prev: Map Scale Level Of Detail Data. Next: Model. Up:Index.

Last updated: May 15, 2003 Copyright © 2003 SEDRIS™