metabrush/src/app/MetaBrush/Asset/Logo.hs
2020-09-01 21:56:59 +02:00

85 lines
3.8 KiB
Haskell

{-# LANGUAGE NamedFieldPuns #-}
module MetaBrush.Asset.Logo
( drawLogo )
where
-- gi-cairo-render
import qualified GI.Cairo.Render as Cairo
-- MetaBrush
import MetaBrush.Asset.Colours
( ColourRecord(..), Colours )
import MetaBrush.Util
( withRGBA )
--------------------------------------------------------------------------------
-- | MetaBrush logo. Width = 29, height = 29.
drawLogo :: Colours -> Cairo.Render Bool
drawLogo ( Colours { base, splash } ) = do
-- Loop
Cairo.setLineWidth 1
withRGBA base Cairo.setSourceRGBA
Cairo.newPath
Cairo.moveTo 17.480469 7.847656
Cairo.curveTo 16.890625 8.402344 16.070313 7.648438 15.257813 8.730469
Cairo.curveTo 15.847656 7.625 14.820313 7.210938 15.277344 6.339844
Cairo.curveTo 15.675781 5.578125 16.371094 4.972656 17.40625 5.789063
Cairo.curveTo 18.199219 6.414063 18.273438 7.101563 17.480469 7.847656
Cairo.curveTo 17.480469 7.847656 17.480469 7.847656 17.480469 7.847656
Cairo.closePath
Cairo.strokePreserve
-- Body
withRGBA splash Cairo.setSourceRGBA
Cairo.newPath
Cairo.moveTo 14.53125 8.257813
Cairo.curveTo 14.386719 8.273438 14.246094 8.351563 14.140625 8.484375
Cairo.curveTo 14.140625 8.484375 9.746094 13.976563 9.746094 13.976563
Cairo.curveTo 9.746094 13.976563 6.78125 15.195313 6.78125 15.195313
Cairo.curveTo 6.496094 15.390625 7.332031 16.5 7.929688 16.886719
Cairo.curveTo 8.53125 17.273438 10.199219 18.28125 10.867188 18.097656
Cairo.curveTo 10.867188 18.097656 11.375 14.789063 11.375 14.789063
Cairo.curveTo 11.375 14.789063 13.117188 12.824219 13.117188 12.824219
Cairo.curveTo 13.117188 12.824219 14.0625 11.660156 14.0625 11.660156
Cairo.curveTo 14.53125 12.59375 16.511719 16.417969 16.605469 16.535156
Cairo.curveTo 17.550781 16.058594 17.769531 15.773438 18.277344 15.167969
Cairo.curveTo 18.863281 14.359375 18.9375 14.257813 19.722656 13.226563
Cairo.curveTo 20.089844 13.980469 21.21875 15.222656 22.25 16.554688
Cairo.curveTo 22.636719 17.058594 24.300781 18.761719 24.785156 18.570313
Cairo.curveTo 25.046875 18.46875 25.972656 17.636719 26.136719 16.753906
Cairo.curveTo 26.171875 16.554688 26.265625 15.800781 26.097656 15.648438
Cairo.curveTo 25.976563 15.542969 24.988281 16.101563 24.679688 15.976563
Cairo.curveTo 24.144531 15.195313 23.488281 13.832031 22.921875 12.886719
Cairo.curveTo 22.023438 11.261719 21.320313 9.261719 20.597656 9.703125
Cairo.curveTo 20.09375 10.011719 19.808594 10.394531 19.699219 10.554688
Cairo.curveTo 19.195313 11.285156 18.960938 11.648438 18 12.988281
Cairo.curveTo 17.140625 11.703125 16.738281 10.175781 15.789063 9.058594
Cairo.curveTo 15.761719 9.03125 15.738281 9.011719 15.714844 8.992188
Cairo.curveTo 15.6875 8.960938 15.660156 8.9375 15.632813 8.914063
Cairo.curveTo 15.578125 8.871094 15.527344 8.832031 15.476563 8.800781
Cairo.curveTo 15.464844 8.792969 15.457031 8.78125 15.445313 8.777344
Cairo.curveTo 15.445313 8.777344 14.960938 8.40625 14.960938 8.40625
Cairo.curveTo 14.828125 8.292969 14.675781 8.246094 14.53125 8.257813
Cairo.curveTo 14.53125 8.257813 14.53125 8.257813 14.53125 8.257813
Cairo.closePath
Cairo.fillPreserve
-- Brush tip
withRGBA base Cairo.setSourceRGBA
Cairo.newPath
Cairo.moveTo 7.199219 18.394531
Cairo.curveTo 7.804688 18.804688 8.53125 19.203125 9.082031 19.335938
Cairo.curveTo 9.082031 19.335938 4.996094 22.519531 4.996094 22.519531
Cairo.curveTo 4.414063 23.074219 2.742188 23.832031 2.59375 23.699219
Cairo.curveTo 2.460938 23.582031 2.949219 22.351563 3.4375 21.449219
Cairo.curveTo 3.4375 21.449219 5.777344 17.140625 5.777344 17.140625
Cairo.curveTo 5.96875 17.429688 6.597656 17.980469 7.199219 18.394531
Cairo.curveTo 7.199219 18.394531 7.199219 18.394531 7.199219 18.394531
Cairo.closePath
Cairo.fillPreserve
pure True