GORT: Specifications
Download
Report
Transcript GORT: Specifications
GORT: Specifications
Leon Kania – Haipin Cua – Thoren McDole – Chang Huang
Application
Educational tool and a programming utility
for programmers who wants to visually
design and build 3D objects.
– Educational: A programmer can draw 3D
objects, output the code, and be able to learn
OpenGL by dissecting code.
– Programming Utility: Facilitates visual design of
3D objects and their environment. A
programmer may output working code and
modify it to suit his/her purposes.
Requirements: Functional
File Management
– New, Open, Save, Save As
Edit Capabilities
– Cut, Copy, Paste, Delete, Select, Select Inverse, Undo,
Redo, Group, Ungroup
View Capabilities
– Zoom In/Out, Orthogonal View, Pan, Free Rotate
Transform Capabilities
– Affine transformations and perspective transformations
Scale, Rotate, Translate, Shear
Requirements: Functional
Draw Primitives
– Box, Sphere, Cone, Cylinder, Pyramid, Plane
Compose Primitives
– Union, Intersection, Subtraction
Add Material
– Color, Reflective Properties (interaction with
environment), opacity.
Export file
– OpenGL
Composition Mechanism
Requirements: Non-Functional
Program for Unix environment
C/C++, GTK+2.0, OpenGL, XML, gtkGL
extensions, STL
Extensible
– Underlying code is going to be designed to be simple
and organic.
Portable
– OpenGL centric but underlying classes are going to be
designed so that other graphics API can be easily
accommodated.
Requirements: Non-Functional
Implicit and Parametric
Definitions.
Screen Shot
Use Cases
Detailed Use Case
Scenario
Draw Primitive
– User selects box primitive
– User specifies a center point in space by clicking on one of the view
ports. The unspecified axis defaults to zero.
– User drags to change initial scale.
Initial scale is the distance between the initial click and the unclick.
–
–
–
–
–
Object is now drawn.
User copies and paste box primitive in the exact same location.
User translates the pasted box object by x number of units upward.
User applies a uniform scale reducing the size of the pasted box.
User subtracts the pasted box from the original box.
Scenario
Future Extensions
Export to other formats.
– 3D Studio Max, Corel, Jpeg, GIF, Bitmaps, etc.
More Objects
– Geo-sphere, Capsule, Disc, Torus, Tea-pot,
Spirals, Text, 2D Objects, NGons, Curves, etc.
Advance Representations of Current
Primitives
– Bezier, NURBS, and other Splines.
Lights and Cameras
Future Extensions
Animation
– Robotics, Shrek, etc.
Environmental Effects
– Fog, Combustions, Reflections, etc.
Rendering Techniques
– Ray Tracing
Multi-Threading
– Simultaneous rendering by multiple machines.
– Simultaneous editing by multiple artists.
Questions
Why did the chicken cross the road?