Interface Mesh<F extends Mesh.Face>

Type Parameters:
F - Mesh face implementation type
All Superinterfaces:
BoundarySource<PlaneConvexSubset>, BoundarySource3D, Linecastable3D
All Known Subinterfaces:
TriangleMesh
All Known Implementing Classes:
SimpleTriangleMesh

public interface Mesh<F extends Mesh.Face> extends BoundarySource3D
Interface representing a 3D mesh data structure.
See Also:
  • Method Details

    • vertices

      Get an iterable containing the vertices in the mesh.
      Returns:
      an iterable containing the vertices in the mesh
    • getVertices

      Get a list containing all vertices in the mesh.
      Returns:
      a list containing all vertices in the mesh
    • getVertexCount

      Get the number of vertices in the mesh.
      Returns:
      the number of vertices in the mesh
    • faces

      Get an iterable containing all faces in the mesh.
      Returns:
      an iterable containing all faces in the mesh
    • getFaces

      Get a list containing all faces in the mesh.
      Returns:
      a list containing all faces in the mesh
    • getFaceCount

      Get the number of faces in the mesh.
      Returns:
      the number of faces in the mesh
    • getFace

      F getFace(int index)
      Get a face from the mesh by its index.
      Parameters:
      index - the index of the mesh to retrieve
      Returns:
      the face at the given index
      Throws:
      IndexOutOfBoundsException - if the index is out of bounds
    • transform

      Return a new, transformed mesh by applying the given transform to all vertices. Faces and vertex ordering are not affected.
      Parameters:
      transform - transform to apply
      Returns:
      a new, transformed mesh