hgeometry-0.7.0.0: Geometric Algorithms, Data structures, and Data types.

Algorithms.Geometry.DelaunayTriangulation.Types

Synopsis

Documentation

type VertexID = Int Source #

Rotating Right - rotate clockwise

data Triangulation p r Source #

Neighbours are stored in clockwise order: i.e. rotating right moves to the next clockwise neighbour.

Constructors

 Triangulation Fields_vertexIds :: Map (Point 2 r) VertexID _positions :: Vector (Point 2 r :+ p) _neighbours :: Vector (CList VertexID)
Instances
 (Eq r, Eq p) => Eq (Triangulation p r) Source # Instance details Methods(==) :: Triangulation p r -> Triangulation p r -> Bool #(/=) :: Triangulation p r -> Triangulation p r -> Bool # (Show r, Show p) => Show (Triangulation p r) Source # Instance details MethodsshowsPrec :: Int -> Triangulation p r -> ShowS #show :: Triangulation p r -> String #showList :: [Triangulation p r] -> ShowS #

vertexIds :: forall p r. Lens' (Triangulation p r) (Map (Point 2 r) VertexID) Source #

positions :: forall p r p. Lens (Triangulation p r) (Triangulation p r) (Vector ((:+) (Point 2 r) p)) (Vector ((:+) (Point 2 r) p)) Source #

type Mapping p r = (Map (Point 2 r) VertexID, Vector (Point 2 r :+ p)) Source #

showDT :: (Show p, Show r) => Triangulation p r -> IO () Source #

data ST a b c Source #

Constructors

 ST Fieldsfst' :: !a snd' :: !b trd' :: !c

type ArcID = Int Source #

type ST' a = ST (Map (VertexID, VertexID) ArcID) ArcID a Source #

ST' is a strict triple (m,a,x) containing:

• m: a Map, mapping edges, represented by a pair of vertexId's (u,v) with u < v, to arcId's.
• a: the next available unused arcID
• x: the data value we are interested in computing

toPlanarSubdivision :: (Ord r, Fractional r) => proxy s -> Triangulation p r -> PlanarSubdivision s p () () r Source #

convert the triangulation into a planarsubdivision

running time: $$O(n)$$.

toPlaneGraph :: forall proxy s p r. proxy s -> Triangulation p r -> PlaneGraph s p () () r Source #

convert the triangulation into a plane graph

running time: $$O(n)$$.