Module imp3d

Class GRSMesh

All Implemented Interfaces:
ContextDependent, Polygons, Polygonization, Manageable, Shareable

public class GRSMesh extends ContextDependentBase implements Polygons
A GRSMesh looks for GRSVertex nodes in its object context (see Polygons), interprets them as a graph rotation system, and computes the corresponding polygonal mesh.

The precise semantics is as follows: The object context is represented by a MeshNode. The GRSMesh looks for all GRSVertex nodes which are directly connected by an edge with the MeshNode, the latter being the source of the edge. All found vertices are taken as vertices of the mesh, their location is obtained by the translational component of their transformation (see Null.transform). For each vertex, the list GRSVertex.neighbors defines its cyclic neighborhood, i.e., all vertices which are connected with the current vertex by an edge of a mesh polygon, sorted in counter-clockwise order when seen from above.

When a polygon of a GRSMesh has more than three edges, an additional vertex will be inserted at the center of the polygon vertices. For every polygon edge, a triangle is created using the edge and the additional central vertex.

The implementation of GRSMesh cannot handle neighborhoods of more than 63 vertices. In practice, this should not pose any problem.

Author:
Ole Kniemeyer
  • Field Details

  • Constructor Details

    • GRSMesh

      public GRSMesh()
  • Method Details