hgeometry-0.13: Geometric Algorithms, Data structures, and Data types.
Safe HaskellNone
LanguageHaskell2010

Data.Geometry.PlanarSubdivision.Dynamic

Synopsis

Documentation

splitEdge :: (Show v, Show e, Show f, Show r) => VertexId' s -> VertexId' s -> Point 2 r -> v -> (e -> (e, e)) -> PlanarSubdivision s v e f r -> PlanarSubdivision s v e f r Source #

Splits a given edge of a planar subdivision by inserting a new vertex on the edges. Increases edges by 1.

unSplitEdge :: (Show v, Show e, Show f, Show r) => VertexId' s -> ((e, e) -> e) -> PlanarSubdivision s v e f r -> PlanarSubdivision s v e f r Source #

Splits a given edge of a planar subdivision by inserting a new vertex on the edges. Increases edges by 1.

sproutIntoFace :: (Show v, Show e, Show f, Show r) => VertexId' s -> FaceId' s -> Point 2 r -> v -> (e, e) -> PlanarSubdivision s v e f r -> PlanarSubdivision s v e f r Source #

Sprouts a new edge from a given vertex into the interior of a given (incident) face. Increases edges by 1.

splitFace :: (Show v, Show e, Show f, Show r) => VertexId' s -> VertexId' s -> (e, e) -> (f -> (f, f)) -> PlanarSubdivision s v e f r -> PlanarSubdivision s v e f r Source #

Inserts a new edge between two given vertices, adjacent to a common face. Increases faces by 1.