(Newer additions followed by dependent, unmodified modules)
- Created for use as a Matrix Transformation Manager object,
Projection3D performs necessary transformation calculations needed for projecting
three-dimensional coordinates onto a two-dimensional plane.
- In addition to matrix manipulations for rudimentary 3D graphics, this version also provides modeling
of "Flying Camera" implemention, stack-based management of animation frame transforms,
and simple application data management of coordinates and generated matrices.
NOTE: Screen-specific handling for conversions of coordinate data is reserved at the
- Top-layer of animation application. Creates 3D shape objects and
modifies contained vertices by using stack-based matrix transforms to apply modifications.
Class Flying extends from:
- Significantly augmented from previous release, Shape3D is the generic
base class managing data structures critical for 3D projection, as well as generic
shape functionality non-specific to derived implementations.
- Derived from class Shape3D, implementation dedicated primarily
as rough 3D modeling tool for drawing Polygons. Supports basic graphic
manipulation for 3D conversion from a 2D representation, performed via
rudimentary, shape-specific Linear Transformations on contained matrix points.
Structured off class Matrix3D design.
- Derived from class Shape3D also, and intended for rough 3D modeling
for drawing cylinders.
Class Cube, Cylinder:
- Implementation for storage of 3D Matrices representing coordinate points, manipulation via Linear Transformations API
Foreign Source (Unmodified)
- Provided by
Professor Ken Perlin.