# TopLevelDrawFunctionsForCompiledFunctionsΒΆ

TopLevelDrawFunctionsForCompiledFunctions provides top level functions for drawing graphics of expressions.

- draw: ((DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float) -> ThreeDimensionalViewport
`draw(f, a..b, c..d)`

draws the graph of`z = f(x, y)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

and`y`

ranges from`min(c, d)`

to`max(c, d)`

.

- draw: ((DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float, List DrawOption) -> ThreeDimensionalViewport
`draw(f, a..b, c..d, l)`

draws the graph of`z = f(x, y)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

and`y`

ranges from`min(c, d)`

to`max(c, d)`

. and the options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: ((DoubleFloat, DoubleFloat) -> Point DoubleFloat, Segment Float, Segment Float) -> ThreeDimensionalViewport
`draw(f, a..b, c..d)`

draws the graph of the parametric surface`f(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

The options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: ((DoubleFloat, DoubleFloat) -> Point DoubleFloat, Segment Float, Segment Float, List DrawOption) -> ThreeDimensionalViewport
`draw(f, a..b, c..d)`

draws the graph of the parametric surface`f(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: (DoubleFloat -> DoubleFloat, Segment Float) -> TwoDimensionalViewport
`draw(f, a..b)`

draws the graph of`y = f(x)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

.

- draw: (DoubleFloat -> DoubleFloat, Segment Float, List DrawOption) -> TwoDimensionalViewport
`draw(f, a..b, l)`

draws the graph of`y = f(x)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: (DoubleFloat -> Point DoubleFloat, Segment Float) -> ThreeDimensionalViewport
`draw(f, a..b, l)`

draws the graph of the parametric curve`f`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

.

- draw: (DoubleFloat -> Point DoubleFloat, Segment Float, List DrawOption) -> ThreeDimensionalViewport
`draw(f, a..b, l)`

draws the graph of the parametric curve`f`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: (ParametricPlaneCurve DoubleFloat -> DoubleFloat, Segment Float) -> TwoDimensionalViewport
`draw(curve(f, g), a..b)`

draws the graph of the parametric curve`x = f(t), y = g(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

.

- draw: (ParametricPlaneCurve DoubleFloat -> DoubleFloat, Segment Float, List DrawOption) -> TwoDimensionalViewport
`draw(curve(f, g), a..b, l)`

draws the graph of the parametric curve`x = f(t), y = g(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: (ParametricSpaceCurve DoubleFloat -> DoubleFloat, Segment Float) -> ThreeDimensionalViewport
`draw(curve(f, g, h), a..b, l)`

draws the graph of the parametric curve`x = f(t), y = g(t), z = h(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

.

- draw: (ParametricSpaceCurve DoubleFloat -> DoubleFloat, Segment Float, List DrawOption) -> ThreeDimensionalViewport
`draw(curve(f, g, h), a..b, l)`

draws the graph of the parametric curve`x = f(t), y = g(t), z = h(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- draw: (ParametricSurface (DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float) -> ThreeDimensionalViewport
`draw(surface(f, g, h), a..b, c..d)`

draws the graph of the parametric surface`x = f(u, v)`

,`y = g(u, v)`

,`z = h(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

.

- draw: (ParametricSurface (DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float, List DrawOption) -> ThreeDimensionalViewport
`draw(surface(f, g, h), a..b, c..d)`

draws the graph of the parametric surface`x = f(u, v)`

,`y = g(u, v)`

,`z = h(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

; The options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: ((DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float) -> ThreeSpace DoubleFloat
`makeObject(f, a..b, c..d)`

returns a space of the domain ThreeSpace which contains the graph of`z = f(x, y)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

and`y`

ranges from`min(c, d)`

to`max(c, d)`

.

- makeObject: ((DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float, List DrawOption) -> ThreeSpace DoubleFloat
`makeObject(f, a..b, c..d, l)`

returns a space of the domain ThreeSpace which contains the graph of`z = f(x, y)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

and`y`

ranges from`min(c, d)`

to`max(c, d)`

, and the options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: ((DoubleFloat, DoubleFloat) -> Point DoubleFloat, Segment Float, Segment Float) -> ThreeSpace DoubleFloat
`makeObject(f, a..b, c..d, l)`

returns a space of the domain ThreeSpace which contains the graph of the parametric surface`f(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

.

- makeObject: ((DoubleFloat, DoubleFloat) -> Point DoubleFloat, Segment Float, Segment Float, List DrawOption) -> ThreeSpace DoubleFloat
`makeObject(f, a..b, c..d, l)`

returns a space of the domain ThreeSpace which contains the graph of the parametric surface`f(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

; The options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: (DoubleFloat -> DoubleFloat, Segment Float, List DrawOption) -> GraphImage
`makeObject(f, a..b, l)`

creates the graph of`y = f(x)`

as`x`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: (DoubleFloat -> Point DoubleFloat, Segment Float) -> ThreeSpace DoubleFloat
`makeObject(sp, curve(f, g, h), a..b)`

returns the space`sp`

of the domain ThreeSpace with the addition of the graph of the parametric curve`x = f(t), y = g(t), z = h(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

.

- makeObject: (DoubleFloat -> Point DoubleFloat, Segment Float, List DrawOption) -> ThreeSpace DoubleFloat
`makeObject(curve(f, g, h), a..b, l)`

returns a space of the domain ThreeSpace which contains the graph of the parametric curve`x = f(t), y = g(t), z = h(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: (ParametricPlaneCurve DoubleFloat -> DoubleFloat, Segment Float, List DrawOption) -> GraphImage
`makeObject(curve(f, g), a..b, l)`

creates the graph of the parametric curve`x = f(t), y = g(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: (ParametricSpaceCurve DoubleFloat -> DoubleFloat, Segment Float) -> ThreeSpace DoubleFloat
`makeObject(sp, curve(f, g, h), a..b)`

returns the space`sp`

of the domain ThreeSpace with the addition of the graph of the parametric curve`x = f(t), y = g(t), z = h(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

.

- makeObject: (ParametricSpaceCurve DoubleFloat -> DoubleFloat, Segment Float, List DrawOption) -> ThreeSpace DoubleFloat
`makeObject(curve(f, g, h), a..b, l)`

returns a space of the domain ThreeSpace which contains the graph of the parametric curve`x = f(t), y = g(t), z = h(t)`

as`t`

ranges from`min(a, b)`

to`max(a, b)`

; The options contained in the list`l`

of the domain`DrawOption`

are applied.

- makeObject: (ParametricSurface (DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float) -> ThreeSpace DoubleFloat
`makeObject(surface(f, g, h), a..b, c..d, l)`

returns a space of the domain ThreeSpace which contains the graph of the parametric surface`x = f(u, v)`

,`y = g(u, v)`

,`z = h(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

.

- makeObject: (ParametricSurface (DoubleFloat, DoubleFloat) -> DoubleFloat, Segment Float, Segment Float, List DrawOption) -> ThreeSpace DoubleFloat
`makeObject(surface(f, g, h), a..b, c..d, l)`

returns a space of the domain ThreeSpace which contains the graph of the parametric surface`x = f(u, v)`

,`y = g(u, v)`

,`z = h(u, v)`

as`u`

ranges from`min(a, b)`

to`max(a, b)`

and`v`

ranges from`min(c, d)`

to`max(c, d)`

. The options contained in the list`l`

of the domain`DrawOption`

are applied.

- recolor: ((DoubleFloat, DoubleFloat) -> Point DoubleFloat, (DoubleFloat, DoubleFloat, DoubleFloat) -> DoubleFloat) -> (DoubleFloat, DoubleFloat) -> Point DoubleFloat
`recolor()`

, uninteresting to top level user; exported in order to compile package.