hgeometry-0.8.0.0: src/Data/PlaneGraph/Draw.hs
{-# LANGUAGE ScopedTypeVariables #-}
module Data.PlaneGraph.Draw where
import Data.Ext
import Data.Geometry.Ipe
import Data.PlaneGraph
import qualified Data.Vector as V
drawPlaneGraph :: IpeOut (PlaneGraph s v e f r) Group r
drawPlaneGraph g = ipeGroup $ concatMap V.toList [vs, es, fs]
where
vs = (\(_,VertexData p _) -> iO $ defIO p) <$> vertices g
es = (\(_,s :+ _) -> iO $ defIO s) <$> edgeSegments g
fs = (\(_,f :+ _) -> iO $ defIO f) <$> rawFacePolygons g
-- drawPlaneGraphWith :: (VertexId' s :+ v -> IpeObject r)
-- -> (Dart s :+ e -> IpeObject r)
-- -> (FaceId' s :+ f -> IpeObject r)
-- -> IpeObject
-- drawPlaneGraphWith vertexF edgeF faceF g = asIpeGroup $ vs ++ es ++ fs
-- where
-- vs = map vertices ()