10.hs 624 B

1234567891011121314151617181920
  1. {-# LANGUAGE OverloadedStrings #-}
  2. import Data.List
  3. import Text.LaTeX
  4. import Text.LaTeX.Base.Class
  5. import Text.LaTeX.Base.Syntax
  6. import Text.LaTeX.Packages.Graphicx
  7. import Text.LaTeX.Packages.Geometry
  8. import Util
  9. main :: IO ()
  10. main = printdoc doc
  11. doc :: Monad m => LaTeXT_ m
  12. doc = do
  13. mapM_ thing [(x, y) | x <- [-3/64, 1/64 .. 65/64], y <- [-3/64, -2/64 .. 3/2]]
  14. thing :: Monad m => (Double, Double) -> LaTeXT_ m
  15. thing (x, y) = textblock' (vw x) (vw y) $ rotatebox' (180 * ((cos (3 * x - 5 * y)) / 3 + (sin (atan2 x y)) ^ 2)) $ fontsize (vh $ 0.01 + ((cos $ (x - y * 10) * pi) ^ 2) / 32) (vh 0) "meow! meow! meow!"