gort: specifications leon kania – haipin cua – thoren mcdole – chang huang
Post on 18-Jan-2018
222 Views
Preview:
DESCRIPTION
TRANSCRIPT
GORT: SpecificationsGORT: Specifications
Leon Kania – Haipin Cua – Thoren McDole – Chang HuangLeon Kania – Haipin Cua – Thoren McDole – Chang Huang
ApplicationApplication
Educational tool and a programming utility Educational tool and a programming utility for programmers who wants to visually for programmers who wants to visually design and build 3D objects.design and build 3D objects.– Educational: A programmer can draw 3D Educational: A programmer can draw 3D
objects, output the code, and be able to learn objects, output the code, and be able to learn OpenGL by dissecting code.OpenGL by dissecting code.
– Programming Utility: Facilitates visual design of Programming Utility: Facilitates visual design of 3D objects and their environment. A 3D objects and their environment. A programmer may output working code and programmer may output working code and modify it to suit his/her purposes. modify it to suit his/her purposes.
Requirements: FunctionalRequirements: Functional File ManagementFile Management
– New, Open, Save, Save AsNew, Open, Save, Save As Edit CapabilitiesEdit Capabilities
– Cut, Copy, Paste, Delete, Select, Select Inverse, Undo, Cut, Copy, Paste, Delete, Select, Select Inverse, Undo, Redo, Group, UngroupRedo, Group, Ungroup
View CapabilitiesView Capabilities– Zoom In/Out, Orthogonal View, Pan, Free RotateZoom In/Out, Orthogonal View, Pan, Free Rotate
Transform CapabilitiesTransform Capabilities– Affine transformations and perspective transformationsAffine transformations and perspective transformations
Scale, Rotate, Translate, ShearScale, Rotate, Translate, Shear
Requirements: FunctionalRequirements: Functional
Draw PrimitivesDraw Primitives– Box, Sphere, Cone, Cylinder, Pyramid, PlaneBox, Sphere, Cone, Cylinder, Pyramid, Plane
Compose PrimitivesCompose Primitives– Union, Intersection, SubtractionUnion, Intersection, Subtraction
Add MaterialAdd Material– Color, Reflective Properties (interaction with Color, Reflective Properties (interaction with
environment), opacity.environment), opacity. Export fileExport file
– OpenGLOpenGL
Composition MechanismComposition Mechanism
Requirements: Non-FunctionalRequirements: Non-Functional Program for Unix environmentProgram for Unix environment C/C++, GTK+2.0, OpenGL, XML, gtkGL C/C++, GTK+2.0, OpenGL, XML, gtkGL
extensions, STLextensions, STL ExtensibleExtensible
– Underlying code is going to be designed to be simple Underlying code is going to be designed to be simple and organic.and organic.
PortablePortable– OpenGL centric but underlying classes are going to be OpenGL centric but underlying classes are going to be
designed so that other graphics API can be easily designed so that other graphics API can be easily accommodated.accommodated.
Requirements: Non-FunctionalRequirements: Non-Functional
Implicit and Parametric Implicit and Parametric Definitions.Definitions.
Screen ShotScreen Shot
Use CasesUse Cases
Detailed Use CaseDetailed Use Case
ScenarioScenario Draw PrimitiveDraw Primitive
– User selects box primitiveUser selects box primitive– User specifies a center point in space by clicking on one of the view User specifies a center point in space by clicking on one of the view
ports. The unspecified axis defaults to zero.ports. The unspecified axis defaults to zero.– User drags to change initial scale.User drags to change initial scale.
Initial scale is the distance between the initial click and the unclick.Initial scale is the distance between the initial click and the unclick.– Object is now drawn.Object is now drawn.– User copies and paste box primitive in the exact same location.User copies and paste box primitive in the exact same location.– User translates the pasted box object by x number of units upward.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 applies a uniform scale reducing the size of the pasted box.– User subtracts the pasted box from the original box.User subtracts the pasted box from the original box.
ScenarioScenario
Future ExtensionsFuture Extensions
Export to other formats.Export to other formats.– 3D Studio Max, Corel, Jpeg, GIF, Bitmaps, etc.3D Studio Max, Corel, Jpeg, GIF, Bitmaps, etc.
More ObjectsMore Objects– Geo-sphere, Capsule, Disc, Torus, Tea-pot, Geo-sphere, Capsule, Disc, Torus, Tea-pot,
Spirals, Text, 2D Objects, NGons, Curves, etc.Spirals, Text, 2D Objects, NGons, Curves, etc. Advance Representations of Current Advance Representations of Current
PrimitivesPrimitives– Bezier, NURBS, and other Splines.Bezier, NURBS, and other Splines.
Lights and CamerasLights and Cameras
Future ExtensionsFuture Extensions
AnimationAnimation– Robotics, Shrek, etc.Robotics, Shrek, etc.
Environmental EffectsEnvironmental Effects– Fog, Combustions, Reflections, etc.Fog, Combustions, Reflections, etc.
Rendering TechniquesRendering Techniques– Ray TracingRay Tracing
Multi-ThreadingMulti-Threading– Simultaneous rendering by multiple machines.Simultaneous rendering by multiple machines.– Simultaneous editing by multiple artists.Simultaneous editing by multiple artists.
QuestionsQuestions
Why did the chicken cross the road?Why did the chicken cross the road?
top related