| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
Data.Geometry.Box.Sides
Synopsis
- data Sides a = Sides !a !a !a !a
- north :: forall a. Lens' (Sides a) a
- east :: forall a. Lens' (Sides a) a
- south :: forall a. Lens' (Sides a) a
- west :: forall a. Lens' (Sides a) a
- topSide :: Num r => Rectangle p r -> LineSegment 2 p r
- bottomSide :: Num r => Rectangle p r -> LineSegment 2 p r
- leftSide :: Num r => Rectangle p r -> LineSegment 2 p r
- rightSide :: Num r => Rectangle p r -> LineSegment 2 p r
- sides :: Num r => Rectangle p r -> Sides (LineSegment 2 p r)
- sides' :: Num r => Rectangle p r -> Sides (LineSegment 2 p r)
- sideDirections :: Sides CardinalDirection
Documentation
The four sides of a rectangle
Constructors
| Sides !a !a !a !a | 
Instances
bottomSide :: Num r => Rectangle p r -> LineSegment 2 p r Source #
Oriented from *left to right*
rightSide :: Num r => Rectangle p r -> LineSegment 2 p r Source #
The right side, oriented from *bottom* to top
sides :: Num r => Rectangle p r -> Sides (LineSegment 2 p r) Source #
The sides of the rectangle, in order (Top, Right, Bottom, Left). The sides
 themselves are also oriented in clockwise order. If, you want them in the
 same order as the functions topSide, bottomSide, leftSide, and
 rightSide, use sides' instead.
sides' :: Num r => Rectangle p r -> Sides (LineSegment 2 p r) Source #
The sides of the rectangle. The order of the segments is (Top, Right,
 Bottom, Left).  Note that the segments themselves, are oriented as described
 by the functions topSide, bottomSide, leftSide, rightSide (basically: from
 left to right, and from bottom to top). If you want the segments oriented
 along the boundary of the rectangle, use the sides function instead.
sideDirections :: Sides CardinalDirection Source #
Constructs a Sides value that indicates the appropriate direction.