module Diagrams.TwoD.Path.Calligraphic
( calligraphic
) where
import Diagrams.Prelude
calligraphic :: (Floating n, Ord n) => V2 n -> Trail' Line V2 n -> Trail' Loop V2 n
calligraphic :: forall n.
(Floating n, Ord n) =>
V2 n -> Trail' Line V2 n -> Trail' Loop V2 n
calligraphic V2 n
pen Trail' Line V2 n
p
= (Trail' Line V2 n
p Trail' Line V2 n -> Trail' Line V2 n -> Trail' Line V2 n
forall a. Semigroup a => a -> a -> a
<> [Vn (Trail' Line V2 n)] -> Trail' Line V2 n
forall t. TrailLike t => [Vn t] -> t
fromOffsets [Vn (Trail' Line V2 n)
V2 n
pen] Trail' Line V2 n -> Trail' Line V2 n -> Trail' Line V2 n
forall a. Semigroup a => a -> a -> a
<> Trail' Line V2 n -> Trail' Line V2 n
forall (v :: * -> *) n.
(Metric v, OrderedField n) =>
Trail' Line v n -> Trail' Line v n
reverseLine Trail' Line V2 n
p Trail' Line V2 n -> Trail' Line V2 n -> Trail' Line V2 n
forall a. Semigroup a => a -> a -> a
<> [Vn (Trail' Line V2 n)] -> Trail' Line V2 n
forall t. TrailLike t => [Vn t] -> t
fromOffsets [V2 n -> V2 n
forall (f :: * -> *) a. (Functor f, Num a) => f a -> f a
negated V2 n
pen])
# closeLine