implicit-0.0.3: Math-inspired programmatic 2&3D CAD: CSG, bevels, and shells; gcode export..

Graphics.Implicit.Primitives

Synopsis

# Documentation

3D Primitives

Arguments

 :: ℝ Radius of the sphere -> SymbolicObj3 Resulting sphere

Arguments

 :: ℝ Rounding of corners -> ℝ3 Bottom.. corner -> ℝ3 Top right... corner -> SymbolicObj3 Resuting cube - (0,0,0) is bottom left...

Arguments

 :: ℝ Radius of the cylinder -> ℝ Second radius of the cylinder -> ℝ Height of the cylinder -> SymbolicObj3 Resulting cylinder

2D Primitives

Arguments

 :: ℝ radius of the circle -> SymbolicObj2 resulting circle

Arguments

 :: ℝ -> ℝ2 Bottom left corner -> ℝ2 Top right corner -> SymbolicObj2 Resulting square (bottom right = (0,0) )

Arguments

 :: ℝ Rouding of the polygon -> [ℝ2] Verticies of the polygon -> SymbolicObj2 Resulting polygon

Shared Operations

class Object obj vec | obj -> vec whereSource

Methods

Arguments

 :: vec Vector to translate by (Also: a is a vector, blah, blah) -> obj Object to translate -> obj Resulting object

Translate an object by a vector of appropriate dimension.

Arguments

 :: vec Amount to scale by -> obj Object to scale -> obj Resulting scaled object

Scale an object

Arguments

 :: obj Object to complement -> obj Result

Complement an Object

Arguments

 :: ℝ The radius of rounding -> [obj] objects to union -> obj Resulting object

Rounded union

Arguments

 :: ℝ The radius of rounding -> [obj] Objects to intersect -> obj Resulting object

Rounded minimum

Arguments

 :: ℝ The radius of rounding -> [obj] Objects to difference -> obj Resulting object

Rounded difference

Arguments

 :: ℝ distance to outset -> obj object to outset -> obj resulting object

Outset an object.

Arguments

 :: ℝ width of shell -> obj object to take shell of -> obj resulting shell

Make a shell of an object.

Arguments

 :: obj Object to get box of -> (vec, vec) Bounding box

Get the bounding box an object

Arguments

 :: obj Object to get implicit function of -> vec -> ℝ Implicit function

Get the implicit function for an object

Arguments

 :: (vec -> ℝ) Implicit function -> (vec, vec) Bounding box -> obj Resulting object

Instances

 Object SymbolicObj3 ℝ3 Object SymbolicObj2 ℝ2

union :: Object obj vec => [obj] -> objSource

difference :: Object obj vec => [obj] -> objSource

intersect :: Object obj vec => [obj] -> objSource