Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: 912a363467
Fetching contributors…

Cannot retrieve contributors at this time

file 61 lines (55 sloc) 1.821 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
-- Implicit CAD. Copyright (C) 2011, Christopher Olah (chris@colah.ca)
-- Released under the GNU GPL, see LICENSE

{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances, FlexibleContexts, TypeSynonymInstances, UndecidableInstances #-}

{- The sole purpose of this file it to pass on the
functionality we want to be accessible to the end user. -}

module Graphics.Implicit(
-- Operations
translate,
scale,
complement,
union, intersect, difference,
unionR, intersectR, differenceR,
shell,
--slice,
extrudeR,
extrudeOnEdgeOf,
-- Primitives
sphere,
rect3R,
circle,
cylinder,
cylinder2,
rectR,
--regularPolygon,
--zsurface,
polygon,
-- Export
writeSVG,
writeSTL,
writeBinSTL,
writeOBJ,
writeTHREEJS,
writeSCAD2,
writeSCAD3,
writeGCodeHacklabLaser,
runOpenscad,
implicit,
SymbolicObj2,
SymbolicObj3
) where

-- Let's be explicit about where things come from :)
import Graphics.Implicit.Primitives
import Graphics.Implicit.ExtOpenScad (runOpenscad)
import qualified Graphics.Implicit.Export as Export
import Graphics.Implicit.Definitions

-- We want Export to be a bit less polymorphic
-- (so that types will collapse nicely)

writeSVG = Export.writeSVG :: -> FilePath -> SymbolicObj2 -> IO ()
writeSTL = Export.writeSTL :: -> FilePath -> SymbolicObj3 -> IO ()
writeBinSTL = Export.writeBinSTL :: -> FilePath -> SymbolicObj3 -> IO ()
writeOBJ = Export.writeOBJ :: -> FilePath -> SymbolicObj3 -> IO ()
writeSCAD2 = Export.writeSCAD2 :: -> FilePath -> SymbolicObj2 -> IO ()
writeSCAD3 = Export.writeSCAD3 :: -> FilePath -> SymbolicObj3 -> IO ()
writeTHREEJS = Export.writeTHREEJS :: -> FilePath -> SymbolicObj3 -> IO ()
writeGCodeHacklabLaser = Export.writeGCodeHacklabLaser :: -> FilePath -> SymbolicObj2 -> IO ()
Something went wrong with that request. Please try again.