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

Data.Geometry.Slab

Synopsis

# Documentation

data Orthogonal Source

Constructors

 Horizontal Vertical

Instances

 Source Source Source

newtype Slab o a r Source

Constructors

 Slab Fields_unSlab :: Interval a r

Instances

 Source Functor (Slab o a) Source Foldable (Slab o a) Source Traversable (Slab o a) Source (Fractional r, Ord r, HasBoundingLines o) => IsIntersectableWith (Line 2 r) (Slab o a r) Source (Eq a, Eq r) => Eq (Slab o a r) Source (Show a, Show r) => Show (Slab o a r) Source (Fractional r, Ord r, HasBoundingLines o) => IsIntersectableWith (SubLine 2 a r) (Slab o a r) Source Ord r => IsIntersectableWith (Slab o a r) (Slab o a r) Source Source type IntersectionOf (Line 2 r) (Slab o a r) = (:) * NoIntersection ((:) * (Line 2 r) ((:) * (LineSegment 2 a r) ([] *))) Source type IntersectionOf (SubLine 2 p r) (Slab o a r) = (:) * NoIntersection ((:) * (SubLine 2 a r) ((:) * (LineSegment 2 a r) ([] *))) Source type IntersectionOf (Slab o a r) (Slab o a r) = (:) * NoIntersection ((:) * (Slab o a r) ([] *)) Source type IntersectionOf (Slab Horizontal a r) (Slab Vertical a r) = (:) * (Rectangle (a, a) r) ([] *) Source

unSlab :: forall o a r o a r. Iso (Slab o a r) (Slab o a r) (Interval a r) (Interval a r) Source

horizontalSlab :: (r :+ a) -> (r :+ a) -> Slab Horizontal a r Source

Smart consturctor for creating a horizontal slab

verticalSlab :: (r :+ a) -> (r :+ a) -> Slab Vertical a r Source

Smart consturctor for creating a vertical slab

class HasBoundingLines o where Source

Methods

boundingLines :: Num r => Slab o a r -> (Line 2 r :+ a, Line 2 r :+ a) Source

The two bounding lines of the slab, first the lower one, then the higher one:

inSlab :: Ord r => Point 2 r -> Slab o a r -> Bool Source