module Graphics.Gnuplot.Private.Graph3DType where import qualified Graphics.Gnuplot.Value.Atom as Atom import qualified Graphics.Gnuplot.Value.Tuple as Tuple import Prelude hiding (lines, ) newtype T x y z a = Cons String tupleSize :: (Tuple.C a) => T x y z a -> Int tupleSize = let size :: (Tuple.C a) => T x y z a -> (Int, a) size _ = Tuple.number in fst . size {- See info:/gnuplot/set_style_rectangle -} impulses :: (Atom.C x, Atom.C y, Atom.C z) => T x y z (x,y,z) vectors :: (Atom.C x, Atom.C y, Atom.C z) => T x y z ((x,y,z), (x,y,z)) pm3d :: (Atom.C x, Atom.C y, Atom.C z) => T x y z (x,y,z) impulses = Cons "impulses" vectors = Cons "vectors" pm3d = Cons "pm3d" toString :: T x y z a -> String toString (Cons t) = t