Sample StageManager Files:
The following CenterStage samples are available. Each file contains several samples, and each illustrates some aspect of CenterStage's operation. The files include comments that explain what they do and how. [More HTML documentation needs to be written for these.]The files can be found in the
StageTools/doc/CenterStage/Samples
directory of the StageTools distribution. They are listed here in order of increasing complexity.
Curves.cs
This file contains simple examples of how to create curves in 2D and 3D, curves with axes, curves dependent on sliders and typeins, etc.
Surfaces.cs
This file contains simple examples of how to create surfaces in 3D as parametric surfaces or function graphs, in polar or rectangular coordinates, with several domain patches, with various appearance characteristics. Some examples include dependencies on sliders, typeins or animator widgets.
Tubes.cs
This file includes samples of how to create tubes around various types of curves via linked objects. Some examples include sliders that affect the tube or the original curve, or involve links that include several objects (like a tube around a torus knot).
LinksPart1.cs
This file includes examples of many of the object classes that require links to other objects. It includes offset curves and other curves or surfaces generated in relation to a curves, and vectors related to curves (e.g. the Frenet frame).
LinksPart2.cs
This file includes additional examples of linked objects, mostly ones generated from surfaces. For example, it includes offset surfaces, curves on surfaces, vectors related to points on a surface, and some more surfaces that come from curves.
OtherSurfaces.cs
This file includes samples of several other object classes that generate surfaces, including surfaces of revolution, and some "tricks" that can be done with surface objects.
PolyhedraPart1.cs
This file contains several different ways to work with polyhedral objects. All the example form the same basic object, but in a variety of ways. Some samples show how to use the
Transform
, others show how to create control panels using theWindow
command.
PolyhedraPart2.cs
This file includes more polyhedral examples, most showing how to use
Transform
commands to do some special effects by postprocessing the faces of the polyhedra.
LevelsPart1.cs
This file contains several basic examples of how to use the
Levels
object class to slice an object, in this case a polyhedron. Included are single levels, multiple levels, chunks between two levels, multiple height functions, etc. It also shows how to use an animator widget, a windowbased control panel, and an interesting use ofGroup
objects.
LevelsPart2.cs
This file contains more examples of the
Levels
object class, this time slicing a surface. It shows how to make multiple levels, a banded surface, and a contour plot. It uses more complicated height functions, projections, and complex groups.
LevelsPart3.cs
This file shows how to slice a parametric surface and display the preimage of the slice in the domain of the map. It includes examples of custom control panels, and also the
ColorFunction
directive.
Animation.cs
This file shows several examples of the
Evolve
andAnimate
directives. It includes some fractal computations, illustrations of iterative rootfinding techniques, a sample of how a truncated Taylor series improves with more terms, and an example of how to generate a series of OOGL files automatically.
CalculusPart1.cs
This file contains a series of examples appropriate for a multivariable differential calculus course. They could be used inclass by the instructor as a demonstration, or as a lab exploration for students. They all include custom control panels and sophisticated linking of objects. Provided are examples for velocity and acceleration vectors for a plane or space curve, the graph of a function of two variables, the xz and yztraces of such a function, level sets for such a function, and a exploration of a pathological discontinuous function.
CalculusPart2.cs
This file contains more multivariable calculus examples. These illustrate the ideas behind the directional derivative, partial derivatives, and the tangent plane.
CalculusPart3.cs
This file has several more multivariable calculus examples. These explore the relationship between the gradient vector field and the level sets of a function, and show how the extrema of a function along the boundary of a region can be evaluated using two different methods (one of which leads to Lagrange multipliers).
Miscellaneous.cs
This file contains a few examples that didn't fit anywhere else. There are ones including computations involving the bounding box of an object, a sample of how to make help screens for a demonstration, and a sample of how to make widgets visible and invisible.
4D.cs
This file contains the most sophisticated examples. These involve complex custom control panels, with sophisticated interactions between the various widgets, some more extensive programming within objects themselves, plus fourdimensional data and projections to threespace. Included are samples involving stereographic and orthographic projections, projections of the hypercube, graphs of complex functions viewed as surfaces in space, and slicing sequences of the hypercube.

