Safe Haskell | None |
---|---|
Language | Haskell2010 |
Waterfall.Path
Description
Paths in 3D space.
Synopsis
- data Path
- module Waterfall.Path.Common
- fromPath2D :: Path2D -> Path
- line3D :: V3 Double -> V3 Double -> Path
- lineTo3D :: V3 Double -> V3 Double -> (V3 Double, Path)
- lineRelative3D :: V3 Double -> V3 Double -> (V3 Double, Path)
- arcVia3D :: V3 Double -> V3 Double -> V3 Double -> Path
- arcViaTo3D :: V3 Double -> V3 Double -> V3 Double -> (V3 Double, Path)
- arcViaRelative3D :: V3 Double -> V3 Double -> V3 Double -> (V3 Double, Path)
- bezier3D :: V3 Double -> V3 Double -> V3 Double -> V3 Double -> Path
- bezierTo3D :: V3 Double -> V3 Double -> V3 Double -> V3 Double -> (V3 Double, Path)
- bezierRelative3D :: V3 Double -> V3 Double -> V3 Double -> V3 Double -> (V3 Double, Path)
- pathFrom3D :: V3 Double -> [V3 Double -> (V3 Double, Path)] -> Path
- pathFromTo3D :: [V3 Double -> (V3 Double, Path)] -> V3 Double -> (V3 Double, Path)
- pathEndpoints3D :: Path -> Maybe (V3 Double, V3 Double)
- closeLoop3D :: Path -> Path
- reversePath3D :: Path -> Path
- splice3D :: Path -> V3 Double -> (V3 Double, Path)
- splitPath3D :: Path -> [Path]
Documentation
A Path in 3D Space
Under the hood, this is represented by an OpenCascade Wire
.
The monoid instance Joins Path
s, a <> b
connects the end point of a
to the start of b
, if these points are not coincident, a line is created between them.
module Waterfall.Path.Common
fromPath2D :: Path2D -> Path Source #
lineRelative3D :: V3 Double -> V3 Double -> (V3 Double, Path) Source #
lineRelative
, with the type fixed to Path
arcViaRelative3D :: V3 Double -> V3 Double -> V3 Double -> (V3 Double, Path) Source #
arcViaRelative
, with the type fixed to Path
bezierRelative3D :: V3 Double -> V3 Double -> V3 Double -> V3 Double -> (V3 Double, Path) Source #
bezierRelative
, with the type fixed to Path
pathFromTo3D :: [V3 Double -> (V3 Double, Path)] -> V3 Double -> (V3 Double, Path) Source #
pathFromTo
, with the type fixed to Path
pathEndpoints3D :: Path -> Maybe (V3 Double, V3 Double) Source #
pathEndpoints
, with the type fixed to Path
reversePath3D :: Path -> Path Source #
reversePath
with the type fixed to Path