FiniteCategories-0.1.0.0: test/ExampleDiagram/ExampleConversion.hs
{-| Module : FiniteCategories
Description : Examples of functor conversion.
Copyright : Guillaume Sabbagh 2021
License : GPL-3
Maintainer : guillaumesabbagh@protonmail.com
Stability : experimental
Portability : portable
Examples of functor conversion.
-}
module ExampleDiagram.ExampleConversion
(
main
)
where
import RandomDiagram.RandomDiagram
import Diagram.Conversion
import ExportGraphViz.ExportGraphViz
import System.Random
import Data.Maybe
(diag,newGen) = (defaultMkRandomDiagram (mkStdGen 745678))
finFunct = diagramToFinFunctor diag
partialFunct = diagramToPartialFunctor diag
Just finFunct2 = partialFunctorToFinFunctor partialFunct
partialFunct2 = finFunctorToPartialFunctor finFunct
-- | Export the diagram as a pdf with GraphViz.
main = do
putStrLn "Start of ExampleConversion"
diagToPdf diag "OutputGraphViz/Examples/Diagram/Conversion/diag"
diagToPdf (finFunctorToDiagram finFunct) "OutputGraphViz/Examples/Diagram/Conversion/finFunct"
diagToPdf (fromJust $ partialFunctorToDiagram partialFunct) "OutputGraphViz/Examples/Diagram/Conversion/partialFunct"
diagToPdf (finFunctorToDiagram finFunct2) "OutputGraphViz/Examples/Diagram/Conversion/finFunct2"
diagToPdf (fromJust $ partialFunctorToDiagram partialFunct2) "OutputGraphViz/Examples/Diagram/Conversion/partialFunct2"
putStrLn "End of ExampleConversion"