Rectangle Faces (IFMERectangleFace)
A rectangular face is an optimized face representation that is rectangular and lies parallel on a coordinate plane (either xy-, xz-, or yz-plane), and may have an affine matrix applied.
The face specifies its position by using a first corner point and a second corner point in local coordinates. Because the face must lie parallel to a coordinate plane, the corner points share a common coordinate value. For example, if the rectangular face lies on the xy-plane, the corner points share a common z-value. As well, the other two coordinates must both be either larger or smaller than the values of the other corner (that is, one must be a "min point' and the other a "max point").
The surface normal of this rectangular face depends on the numeric comparison of the corner points, as described in the following table.
| Plane to Which Rectangle is Parallel | Comparison of (Coordinates of) the Corners | Direction of the Surface Normal | 
|---|---|---|
| XY | first corner < second corner | Positive Z-axis | 
| YZ | first corner < second corner | Positive X-axis | 
| XZ | first corner < second corner | Positive Y-axis | 
| XY | first corner > second corner | Negative Z-axis | 
| YZ | first corner > second corner | Negative X-axis | 
| XZ | first corner > second corner | Negative Y-axis | 
The surface normal determines the orientation of the rectangular face; that is, the direction in which the surface normal points indicates which side is the front.
Rectangle faces may also store and apply a 4 X 4 transformation matrix. In this way, a rectangle face can be used for a representation that is not parallel to the coordinate plane. This matrix can store affine transformations, which may also result in non-rectangular surfaces.
Rectangle faces do not have measures on their boundary.
Optionally, rectangle faces may possess front or back appearances, and may be single- or double-sided.