For this assignment you are requested to implement a Geometric Constructions Visualisation Tool.
The idea behind this assignment is to create a tool which enables the visualisation of geometric
constructions. You should only concern yourselves with drawing points, lines and circles on a 2D surface in a 3D world.
This means that one should be able to rotate around the current construction. The input to your program
will be a list of instructions which your program should be able to translate into a sequence of visual
descriptions (an animation). For example, if the input is "drawLine(p1,p2), drawLine(p3,p4)" your program should
first animate the drawing of a line (using some tickness parameter from the input plus a pencil and a ruler) between p1 and p2,
then animate the drawing of a line between P3 and P4. Clearly the first line needs to remain visible on the
surface. Your program should implement the following functions:
- DrawPoint (x,y)
- DrawLine (Point, Point)
- DrawCircle (Point, Point)
- SetName (String)
- PointAt (Point)
- SetColour (Colour)
- SetWidth (Integer)
- CommentAdd (String)
- CommentRep (String)
- CommentErase
Both DirectX or OpenGL can be used. Your implementation should have (34 marks):
A geometry construction visualisation tool. Everything should be created in a 3D world.
A documentation of your design/implementation.Describe also the main classes used for the assignment. 8-10 pages should be sufficient.
Deadline for the handing in of the assignment is Monday 8th January 2006. Please include both source and executable files on a CD (if you don't send them by email) attached to your documentation.
|