Safe Haskell | None |
---|
- data LineSegment2' a = LineSegment2 {
- startPoint :: Point2' a
- endPoint :: Point2' a
- newtype Line2' a = Line2 (LineSegment2' a)
- newtype Polyline2' a = Polyline2 [LineSegment2' a]
- polyLine :: [Point2' a] -> Polyline2' a
- isSimpleLine :: Polyline2' a -> Bool
- toSimpleLine :: Polyline2' a -> LineSegment2' a
- toSimpleLineOption :: Polyline2' a -> Maybe (LineSegment2' a)
- linear :: Num a => a -> a -> a -> a
- inRange :: Ord a => a -> (a, a) -> Bool
- onLineSegment :: (Ord a, Fractional a) => Point2' a -> LineSegment2' a -> Bool
- class HasLength c where
- class LineLike c where
Documentation
data LineSegment2' a Source
A simple line segment in 2D consisint of a start and an end-point
LineSegment2 | |
|
Functor LineSegment2' | |
HasPoints LineSegment2' | |
IsPoint2Functor LineSegment2' | |
LineLike LineSegment2' | |
(Ord a, Floating a) => AreIntersectable Circle2' LineSegment2' a | Intersection is symetrical instance AreIntersectable g h a => AreIntersectable h g a where intersectionPoints h g = intersectionPoints g h |
Eq a => Eq (LineSegment2' a) | |
(Eq (LineSegment2' a), Ord a) => Ord (LineSegment2' a) | |
Read a => Read (LineSegment2' a) | |
Show a => Show (LineSegment2' a) | |
Floating a => HasLength (LineSegment2' a) |
An infinite line
Line2 (LineSegment2' a) |
newtype Polyline2' a Source
Polylines
HasPoints Polyline2' | |
IsPoint2Functor Polyline2' | |
(Ord a, Floating a) => AreIntersectable Circle2' Polyline2' a | |
Eq a => Eq (Polyline2' a) | |
Read a => Read (Polyline2' a) | |
Show a => Show (Polyline2' a) | |
Floating a => HasLength (Polyline2' a) |
polyLine :: [Point2' a] -> Polyline2' aSource
Constructing polylines
isSimpleLine :: Polyline2' a -> BoolSource
functions on Linesegments and Polylines
toSimpleLine :: Polyline2' a -> LineSegment2' aSource
toSimpleLineOption :: Polyline2' a -> Maybe (LineSegment2' a)Source
linear :: Num a => a -> a -> a -> aSource
Linear interpolation / points on line segments etc.
simple linear interpolation, assuming t in [0,1]
onLineSegment :: (Ord a, Fractional a) => Point2' a -> LineSegment2' a -> BoolSource
Floating a => HasLength (Polyline2' a) | |
Floating a => HasLength (LineSegment2' a) |