gort: specifications leon kania – haipin cua – thoren mcdole – chang huang

16
GORT: Specifications GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Leon Kania – Haipin Cua – Thoren McDole – Chang Huang Huang

Upload: junior-mason

Post on 18-Jan-2018

219 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

Page 1: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

GORT: SpecificationsGORT: Specifications

Leon Kania – Haipin Cua – Thoren McDole – Chang HuangLeon Kania – Haipin Cua – Thoren McDole – Chang Huang

Page 2: GORT: Specifications Leon 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.

Page 3: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

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

Page 4: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

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

Page 5: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

Composition MechanismComposition Mechanism

Page 6: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

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.

Page 7: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

Requirements: Non-FunctionalRequirements: Non-Functional

Implicit and Parametric Implicit and Parametric Definitions.Definitions.

Page 8: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

Screen ShotScreen Shot

Page 9: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

Use CasesUse Cases

Page 10: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang
Page 11: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

Detailed Use CaseDetailed Use Case

Page 12: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

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.

Page 13: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

ScenarioScenario

Page 14: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

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

Page 15: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

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.

Page 16: GORT: Specifications Leon Kania – Haipin Cua – Thoren McDole – Chang Huang

QuestionsQuestions

Why did the chicken cross the road?Why did the chicken cross the road?