{-# LANGUAGE OverloadedStrings #-}
module SvgIcons.Icons.Religion
( svgReligion
, xp
, taijitu
, crossLatin
, crossGreek
, crescentAndStar
, starOfDavid
, crossOrthodox
, dharmachakra
, iChingHexagram
, ouroboros
, ichthys
) where
import Data.String
import Text.Blaze.Svg11 ((!))
import Text.Blaze.Svg11 as S
import Text.Blaze.Svg11.Attributes as A
import SvgIcons.Core.Geometry
import SvgIcons.Core.Utils
svgReligion :: [ (String , S.Svg) ]
svgReligion :: [(String, Svg)]
svgReligion =
[ (,) String
"xp" Svg
xp
, (,) String
"taijitu" (String -> String -> Svg
taijitu String
"black" String
"white")
, (,) String
"crossLatin" Svg
crossLatin
, (,) String
"crossGreek" Svg
crossGreek
, (,) String
"crescentAndStar" Svg
crescentAndStar
, (,) String
"starOfDavid" Svg
starOfDavid
, (,) String
"crossOrthodox" Svg
crossOrthodox
, (,) String
"dharmachakra" Svg
dharmachakra
, (,) String
"exampleHexagram" ((Int, Int, Int, Int, Int, Int) -> Svg
iChingHexagram (Int
8,Int
8,Int
7,Int
8,Int
7,Int
7))
, (,) String
"ouroboros" Svg
ouroboros
, (,) String
"ichthys" Svg
ichthys
]
xp :: Svg
xp :: Svg
xp =
Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__xp"
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ do
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
rho
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fillRule AttributeValue
"evenodd"
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
chi
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.transform (Integer -> Integer -> Integer -> AttributeValue
forall a. Show a => a -> a -> a -> AttributeValue
rotateAround Integer
45 Integer
0 Integer
0)
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
alpha
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fill AttributeValue
"none"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeLinecap AttributeValue
"round"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeLinejoin AttributeValue
"round"
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
omega
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fill AttributeValue
"none"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeLinecap AttributeValue
"round"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeLinejoin AttributeValue
"round"
where
w :: Double
w = Double
0.07
k1 :: Double
k1 = Double
0.5
k2 :: Double
k2 = Double
0.96
k3 :: Double
k3 = Double
0.17
r1 :: Double
r1 = Double
0.2
a :: Double
a = Double
0.3
chi :: AttributeValue
chi = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m ( -Double
w) ( -Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( -Double
w) (-Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( -Double
w) (-Double
k1 ) ( -Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) (-Double
k1 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) (-Double
k1 )
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( Double
w) (-Double
k1 ) ( Double
w) (-Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) ( -Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w) ( -Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( Double
k1 ) ( -Double
w) ( Double
k1 ) ( -Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k1 ) ( Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( Double
k1 ) ( Double
w) ( Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) ( Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( Double
w) ( Double
k1 ) ( Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) ( Double
k1 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( -Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) ( Double
k1 )
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( -Double
w) ( Double
k1 ) ( -Double
w) ( Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( -Double
w) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) ( Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q (-Double
k1 ) ( Double
w) (-Double
k1 ) ( Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
k1 ) ( -Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q (-Double
k1 ) ( -Double
w) (-Double
k1Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) ( -Double
w)
Path
S.z
rho :: AttributeValue
rho = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m ( Double
w) (-Double
k2 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( -Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) (-Double
k2 )
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( -Double
w) (-Double
k2 ) ( -Double
w) (-Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( -Double
w) ( Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w)
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( -Double
w) ( Double
k2 ) ( -Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) ( Double
k2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w) ( Double
k2 )
Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> Path
q ( Double
w) ( Double
k2 ) ( Double
w) ( Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) (-Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
r1)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k3Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) (-Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
r1)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
True Bool
False ( Double
k3Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) (-Double
k2)
Path
S.z
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m ( Double
w) (-Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Double -> Double -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> a -> a -> a -> Path
c (Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
k3Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) (-Double
k2Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
r1) (Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
k3Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) (-Double
k2) ( Double
w) (-Double
k2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Path
S.z
alpha :: AttributeValue
alpha = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (-Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2) ( Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
0.7 ) (-Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2) ( Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (-Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) ( Double
0 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
0.7 ) ( Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) ( Double
0 )
omega :: AttributeValue
omega = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m ( Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2) ( Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
-Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
5) ( Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2) (Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2) Double
0 Bool
True Bool
True (Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
5) (Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
0.7Double -> Double -> Double
forall a. Num a => a -> a -> a
+Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2) ( Double
aDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2)
taijitu :: String -> String -> Svg
taijitu :: String -> String -> Svg
taijitu String
yinColor String
yangColor =
Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__taijitu"
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ do
Svg
outerCircle
Svg
yin
Svg
yangDot
Svg
yinDot
where
r1 :: Float
r1 = Float
0.92
r1m :: Float
r1m = Float
0.5 Float -> Float -> Float
forall a. Num a => a -> a -> a
* Float
r1
r2 :: Float
r2 = Float
r1 Float -> Float -> Float
forall a. Fractional a => a -> a -> a
/ Float
6
outerCircle :: Svg
outerCircle =
Svg
S.circle
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.cx (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.cy (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.r (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
r1)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fill (String -> AttributeValue
forall a. ToValue a => a -> AttributeValue
S.toValue String
yangColor)
yin :: Svg
yin =
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fill (String -> AttributeValue
forall a. ToValue a => a -> AttributeValue
S.toValue String
yinColor)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
yinDirs
yinDirs :: AttributeValue
yinDirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Float -> Float -> Path
forall a. Show a => a -> a -> Path
m ( -Float
r1) Float
0
Float -> Float -> Float -> Bool -> Bool -> Float -> Float -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Float
r1m Float
r1m Float
0 Bool
True Bool
False Float
0 Float
0
Float -> Float -> Float -> Bool -> Bool -> Float -> Float -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Float
r1m Float
r1m Float
0 Bool
True Bool
True ( Float
r1) Float
0
Float -> Float -> Float -> Bool -> Bool -> Float -> Float -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Float
r1 Float
r1 Float
0 Bool
True Bool
True (-Float
r1) Float
0
Path
S.z
yangDot :: Svg
yangDot =
Svg
S.circle
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.cx (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0 Float -> Float -> Float
forall a. Num a => a -> a -> a
+ Float
r1m)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.cy (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0 )
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.r (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
r2)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.stroke AttributeValue
"none"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fill (String -> AttributeValue
forall a. ToValue a => a -> AttributeValue
S.toValue String
yangColor)
yinDot :: Svg
yinDot =
Svg
S.circle
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.cx (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0 Float -> Float -> Float
forall a. Num a => a -> a -> a
- Float
r1m)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.cy (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0 )
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.r (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
r2)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.stroke AttributeValue
"none"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fill (String -> AttributeValue
forall a. ToValue a => a -> AttributeValue
S.toValue String
yinColor)
crossLatin :: Svg
crossLatin :: Svg
crossLatin =
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__crossLatin"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
dirs
where
w :: Double
w = Double
0.1
k1 :: Double
k1 = Double
0.9
k2 :: Double
k2 = Double
k1 Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
3Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4
km :: Double
km = -Double
k1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
k1 Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
2Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
3
dirs :: AttributeValue
dirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (-Double
w ) (-Double
k1 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
w ) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
k2) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
k2) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
w ) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
w ) ( Double
k1 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w ) ( Double
k1 )
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w ) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k2) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k2) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w ) ( Double
km Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w ) (-Double
k1 )
Path
S.z
crossGreek :: Svg
crossGreek :: Svg
crossGreek =
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__crossGreek"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
dirs
where
w :: Double
w = Double
0.25
k :: Double
k = Double
0.9
dirs :: AttributeValue
dirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (-Double
w) (-Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
w) (-Double
k)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) (-Double
k)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) (-Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k) (-Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
k) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l ( Double
w) ( Double
k)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
w) ( Double
k)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
w) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
k) ( Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (-Double
k) (-Double
w)
Path
S.z
crossOrthodox :: Svg
crossOrthodox :: Svg
crossOrthodox =
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__crossOrthodox"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
dirs
where
w :: Double
w = Double
0.1
y1 :: Double
y1 = -Double
0.84
y2 :: Double
y2 = Double
y1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
2Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w
y3 :: Double
y3 = Double
y1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
6Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
w
y4 :: Double
y4 = Double
0.6
y5 :: Double
y5 = -Double
y1
x1 :: Double
x1 = (Double
y1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
0.618 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w
x2 :: Double
x2 = Double
x1 Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/ Double
2
x3 :: Double
x3 = Double
0
x4 :: Double
x4 = Double
x5 Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/ Double
2
x5 :: Double
x5 = -Double
x1
α :: Double
α = Double
forall a. Floating a => a
pi Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/ Double
3
ct :: Double
ct = Double
1 Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/ Double -> Double
forall a. Floating a => a -> a
tan Double
α
dirs :: AttributeValue
dirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x5 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x5 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
y5 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y5 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
- (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
- (Double
x4 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
y4 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
ct)
Path
S.z
crescentAndStar :: Svg
crescentAndStar :: Svg
crescentAndStar =
Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__crescentAndStar"
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ do
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeLinejoin AttributeValue
"round"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
moonDirs
Int -> Float -> (Float, Float) -> Svg
starRegular Int
5 Float
0.3 (Float
0.55, Float
0.05)
where
kx :: Double
kx = Double
0.55
ky :: Double
ky = Double
0.55
r1 :: Double
r1 = Double
0.8
r2 :: Double
r2 = Double
0.65
moonDirs :: AttributeValue
moonDirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m ( Double
kx) (-Double
ky)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
True Bool
False ( Double
kx) ( Double
ky)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r2 Double
r2 Double
0 Bool
True Bool
True ( Double
kx) (-Double
ky)
Path
S.z
starOfDavid :: Svg
starOfDavid :: Svg
starOfDavid =
Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__starOfDavid"
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ Int -> Float -> Float -> (Float, Float) -> Svg
starPolygonOverlap Int
6 Float
0.9 Float
0.1 (Float
0,Float
0)
iChingHexagram :: (Int,Int,Int,Int,Int,Int) -> Svg
iChingHexagram :: (Int, Int, Int, Int, Int, Int) -> Svg
iChingHexagram (Int
n1,Int
n2,Int
n3,Int
n4,Int
n5,Int
n6) =
Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__iChingHexagram"
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ do
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
lines
if Bool
doNotPrintNumbers
then Svg
forall a. Monoid a => a
mempty
else Svg
numbers
where
doNotPrintNumbers :: Bool
doNotPrintNumbers =
(\Int
k -> Int
k Int -> Int -> Bool
forall a. Eq a => a -> a -> Bool
== Int
0 Bool -> Bool -> Bool
|| Int
k Int -> Int -> Bool
forall a. Eq a => a -> a -> Bool
== Int
1) (Int -> Bool) -> [Int] -> Bool
forall (t :: * -> *) a. Foldable t => (a -> Bool) -> t a -> Bool
`all` [Int
n1,Int
n2,Int
n3,Int
n4,Int
n5,Int
n6]
x1 :: Float
x1 = Float
0.7
x2 :: Float
x2 = Float
0.1
ky :: Float
ky = Float
2 Float -> Float -> Float
forall a. Fractional a => a -> a -> a
/ Float
14
line :: a -> Float -> Path
line a
k Float
y =
if (a -> Bool
forall a. Integral a => a -> Bool
odd a
k)
then Float -> Float -> Path
forall a. Show a => a -> a -> Path
m (-Float
x1) Float
y Path -> Path -> Path
forall a b.
StateT AttributeValue Identity a
-> StateT AttributeValue Identity b
-> StateT AttributeValue Identity b
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> Float -> Float -> Path
forall a. Show a => a -> a -> Path
l Float
x1 Float
y
else Float -> Float -> Path
forall a. Show a => a -> a -> Path
m (-Float
x1) Float
y Path -> Path -> Path
forall a b.
StateT AttributeValue Identity a
-> StateT AttributeValue Identity b
-> StateT AttributeValue Identity b
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> Float -> Float -> Path
forall a. Show a => a -> a -> Path
l (-Float
x2) Float
y Path -> Path -> Path
forall a b.
StateT AttributeValue Identity a
-> StateT AttributeValue Identity b
-> StateT AttributeValue Identity b
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> Float -> Float -> Path
forall a. Show a => a -> a -> Path
m Float
x2 Float
y Path -> Path -> Path
forall a b.
StateT AttributeValue Identity a
-> StateT AttributeValue Identity b
-> StateT AttributeValue Identity b
forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> Float -> Float -> Path
forall a. Show a => a -> a -> Path
l Float
x1 Float
y
lines :: AttributeValue
lines = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Int -> Float -> Path
forall {a}. Integral a => a -> Float -> Path
line Int
n6 (-Float
5Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Path
forall {a}. Integral a => a -> Float -> Path
line Int
n5 (-Float
3Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Path
forall {a}. Integral a => a -> Float -> Path
line Int
n4 (-Float
1Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Path
forall {a}. Integral a => a -> Float -> Path
line Int
n3 ( Float
1Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Path
forall {a}. Integral a => a -> Float -> Path
line Int
n2 ( Float
3Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Path
forall {a}. Integral a => a -> Float -> Path
line Int
n1 ( Float
5Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
number :: a -> Float -> Svg
number a
k Float
y =
Svg -> Svg
S.text_ (String -> Svg
forall a. IsString a => String -> a
fromString (String -> Svg) -> String -> Svg
forall a b. (a -> b) -> a -> b
$ a -> String
forall a. Show a => a -> String
show a
k)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.x (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
0.85)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! (AttributeValue -> Attribute
A.y (AttributeValue -> Attribute) -> Float -> Attribute
.: Float
y)
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.dominantBaseline AttributeValue
"central"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.textAnchor AttributeValue
"middle"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fontFamily AttributeValue
"Times New Roman, serif"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fontSize AttributeValue
"0.2"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeWidth AttributeValue
"0"
numbers :: Svg
numbers =
Svg -> Svg
S.g (Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ do
Int -> Float -> Svg
forall {a}. Show a => a -> Float -> Svg
number Int
n6 (-Float
5Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Svg
forall {a}. Show a => a -> Float -> Svg
number Int
n5 (-Float
3Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Svg
forall {a}. Show a => a -> Float -> Svg
number Int
n4 (-Float
1Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Svg
forall {a}. Show a => a -> Float -> Svg
number Int
n3 ( Float
1Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Svg
forall {a}. Show a => a -> Float -> Svg
number Int
n2 ( Float
3Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
Int -> Float -> Svg
forall {a}. Show a => a -> Float -> Svg
number Int
n1 ( Float
5Float -> Float -> Float
forall a. Num a => a -> a -> a
*Float
ky)
dharmachakra :: Svg
dharmachakra :: Svg
dharmachakra =
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__dharmachakra"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fillRule AttributeValue
"evenodd"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.strokeLinejoin AttributeValue
"round"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
dirs
where
w :: Double
w = Double
0.07
k :: Double
k = Double -> Double
forall a. Floating a => a -> a
sqrt Double
2
k2 :: Double
k2 = Double
0.5 Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2
r1 :: Double
r1 = Double
0.3
r2 :: Double
r2 = Double
0.8
trapezoid :: Double -> Path
trapezoid Double
β = do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos Double
β) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4))
(Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin Double
β) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4))
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double
0 Bool
False Bool
True
(Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos Double
β))
(Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin Double
β))
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2))
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2))
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double
0 Bool
False Bool
False
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos Double
β) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
3Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4))
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin Double
β) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
3Double -> Double -> Double
forall a. Num a => a -> a -> a
*Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4))
Path
S.z
outerStick :: Double -> Path
outerStick Double
β = do
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
w Double
w Double
0 Bool
True Bool
True
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos Double
β) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4))
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin Double
β) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4))
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double
0 Bool
False Bool
True
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
cos Double
β))
(Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin (Double -> Double) -> Double -> Double
forall a b. (a -> b) -> a -> b
$ Double
β Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4) Double -> Double -> Double
forall a. Num a => a -> a -> a
+ (Double
w Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sqrt Double
2) Double -> Double -> Double
forall a. Num a => a -> a -> a
* (Double -> Double
forall a. Floating a => a -> a
sin Double
β))
dirs :: AttributeValue
dirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m Double
0.001 (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) Double
0 Bool
True Bool
False Double
0 (Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Path
S.z
(Double -> Path) -> [Double] -> Path
forall (t :: * -> *) (m :: * -> *) a b.
(Foldable t, Monad m) =>
(a -> m b) -> t a -> m ()
mapM_ (Double -> Path
trapezoid (Double -> Path) -> (Double -> Double) -> Double -> Path
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4 Double -> Double -> Double
forall a. Num a => a -> a -> a
*)) [Double
0..Double
7]
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (Double
r2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (-Double
w)
(Double -> Path) -> [Double] -> Path
forall (t :: * -> *) (m :: * -> *) a b.
(Foldable t, Monad m) =>
(a -> m b) -> t a -> m ()
mapM_ (Double -> Path
outerStick (Double -> Path) -> (Double -> Double) -> Double -> Path
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
4 Double -> Double -> Double
forall a. Num a => a -> a -> a
*)) [Double
0..Double
7]
Path
S.z
ouroboros :: Svg
ouroboros :: Svg
ouroboros =
Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__ouroboros"
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ Svg -> Svg
S.g
(Svg -> Svg) -> Attribute -> Svg -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.transform (Double -> Double -> AttributeValue
forall a. Show a => a -> a -> AttributeValue
translate Double
0 Double
0.05 AttributeValue -> AttributeValue -> AttributeValue
forall a. Semigroup a => a -> a -> a
<> Integer -> Integer -> Integer -> AttributeValue
forall a. Show a => a -> a -> a -> AttributeValue
rotateAround Integer
30 Integer
0 Integer
0)
(Svg -> Svg) -> Svg -> Svg
forall a b. (a -> b) -> a -> b
$ do
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fillRule AttributeValue
"evenodd"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
dirs
Svg
S.circle
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.cx AttributeValue
"-0.25"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.cy AttributeValue
"-0.8"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.r AttributeValue
" 0.01"
where
w :: Double
w = Double
0.1
r :: Double
r = Double
0.78
β :: Double
β = -Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
forall a. Floating a => a
piDouble -> Double -> Double
forall a. Fractional a => a -> a -> a
/Double
6
r1 :: Double
r1 = Double
0.35
r2 :: Double
r2 = Double
0.26
dirs :: AttributeValue
dirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m Double
0 (- Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
w Double
w Double
0 Bool
True Bool
False Double
0 (- Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) (Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w) Double
0 Bool
True Bool
True ((Double
rDouble -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
cos Double
β) ((Double
rDouble -> Double -> Double
forall a. Num a => a -> a -> a
-Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sin Double
β)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
False Bool
False Double
0 (- Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
w Double
w Double
0 Bool
True Bool
True Double
0 (- Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r2 Double
r2 Double
0 Bool
False Bool
False ((Double
rDouble -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
cos Double
β) ((Double
rDouble -> Double -> Double
forall a. Num a => a -> a -> a
+Double
w) Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double -> Double
forall a. Floating a => a -> a
sin Double
β)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa (Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) (Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
w) Double
0 Bool
True Bool
False Double
0 (- Double
r Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
w)
Path
S.z
ichthys :: Svg
ichthys :: Svg
ichthys =
Svg
S.path
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.class_ AttributeValue
"HaskellSvgIcons__ichthys"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.fillRule AttributeValue
"evenodd"
Svg -> Attribute -> Svg
forall h. Attributable h => h -> Attribute -> h
! AttributeValue -> Attribute
A.d AttributeValue
dirs
where
k1 :: Double
k1 = Double
0.1
k2 :: Double
k2 = Double
k1 Double -> Double -> Double
forall a. Fractional a => a -> a -> a
/ Double -> Double
forall a. Floating a => a -> a
sqrt Double
2
x1 :: Double
x1 = -Double
0.85
x2 :: Double
x2 = Double
0.63
x3 :: Double
x3 = -Double
x1
y1 :: Double
y1 = -Double
0.5
y2 :: Double
y2 = -Double
y1
r1 :: Double
r1 = Double
0.93
r2 :: Double
r2 = Double
r1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
2 Double -> Double -> Double
forall a. Num a => a -> a -> a
* Double
k1
dirs :: AttributeValue
dirs = Path -> AttributeValue
mkPath (Path -> AttributeValue) -> Path -> AttributeValue
forall a b. (a -> b) -> a -> b
$ do
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (Double
x1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
k1) Double
0
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
False Bool
True (Double
x2 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
k1) Double
0
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
False Bool
True (Double
x1 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
k1) Double
0
Path
S.z
Double -> Double -> Path
forall a. Show a => a -> a -> Path
m (Double
x1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
k1) Double
0
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r2 Double
r2 Double
0 Bool
False Bool
True Double
x2 (-Double
k1)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
False Bool
False (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
k2) ( Double
y1)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
k2) ( Double
y1)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r2 Double
r2 Double
0 Bool
False Bool
True (Double
x2 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
k1) Double
0
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r2 Double
r2 Double
0 Bool
False Bool
True (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
+ Double
k2) ( Double
y2)
Double -> Double -> Path
forall a. Show a => a -> a -> Path
l (Double
x3 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
k2) ( Double
y2)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r1 Double
r1 Double
0 Bool
False Bool
False Double
x2 ( Double
k1)
Double
-> Double -> Double -> Bool -> Bool -> Double -> Double -> Path
forall a. Show a => a -> a -> a -> Bool -> Bool -> a -> a -> Path
aa Double
r2 Double
r2 Double
0 Bool
False Bool
True (Double
x1 Double -> Double -> Double
forall a. Num a => a -> a -> a
- Double
k1) Double
0
Path
S.z