module Graphics.Rasterific.Outline
( StrokeWidth
, strokize
, S.dashedStrokize
, S.approximatePathLength
) where
import Graphics.Rasterific.Types
import qualified Graphics.Rasterific.StrokeInternal as S
strokize :: Geometry geom
=> StrokeWidth
-> Join
-> (Cap, Cap)
-> geom
-> [Primitive]
strokize :: StrokeWidth -> Join -> (Cap, Cap) -> geom -> [Primitive]
strokize StrokeWidth
w Join
j (Cap, Cap)
c = Container Primitive -> [Primitive]
forall a. Container a -> [a]
listOfContainer (Container Primitive -> [Primitive])
-> (geom -> Container Primitive) -> geom -> [Primitive]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. StrokeWidth -> Join -> (Cap, Cap) -> geom -> Container Primitive
forall geom.
Geometry geom =>
StrokeWidth -> Join -> (Cap, Cap) -> geom -> Container Primitive
S.strokize StrokeWidth
w Join
j (Cap, Cap)
c