final class DelaunayStitcher extends Serializable

Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DelaunayStitcher
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DelaunayStitcher(pointSet: IndexedPointSet, halfEdgeTable: HalfEdgeTable)

Value Members

  1. def advance(e0: Int): Int
  2. def advanceIfNotCorner(e0: Int): Int
  3. def insertBase(left0: Int, isLeftLinear: Boolean, right0: Int, isRightLinear: Boolean, debug: Boolean): Int

    Finds, inserts, and returns the unique half edge on the boundary of the convex hull of the two convex boundary loops given by left and right; the returned edge points from right to left.

    Finds, inserts, and returns the unique half edge on the boundary of the convex hull of the two convex boundary loops given by left and right; the returned edge points from right to left. Left and right must be correctly initialized to be corners of their respective bounding loops (according to Predicates.isCorner), and isLeftLinear/isRightLinear must be set to true if the respective meshes have only boundary edges.

    To be clear, this algorithm is impartial to absolute position despite the inputs being named left and right. It does, however, require that the bounding loops represented by left and right be convex and mutually non-intersecting.

  4. def joinToVertex(bound: Int, isLinear: Boolean, vertex: Int, triangles: TriangleMap, debug: Boolean = false): (Int, Boolean)
  5. def merge(left: Int, isLeftLinear: Boolean, right: Int, isRightLinear: Boolean, triangles: TriangleMap, debug: Boolean = false): (Int, Boolean)

    Stiches two non-intersecting Delaunay triangulations, given as half edges on the outside boundary of each constituent triangulation.

  6. val predicates: TriangulationPredicates
  7. def reverse(e0: Int): Int
  8. final def valid(e: Int, b: Int): Boolean
    Annotations
    @inline()