Midterm Review Computer Graphics Hardware Point and Line Drawing

Slides:



Advertisements
Similar presentations
Computer Graphics- SCC 342
Advertisements

1 King ABDUL AZIZ University Faculty Of Computing and Information Technology CS 454 Computer graphics Drawing Elementary Figures Dr. Eng. Farag Elnagahy.
Contents o Introduction o Characteristics of Constructor. o Types of constructor. - Default Constructor - Parameterized Constructor - Copy Constructor.
CS 450: COMPUTER GRAPHICS FILLING POLYGONS SPRING 2015 DR. MICHAEL J. REALE.
Unified Modeling Language
ITEC200 – Week03 Inheritance and Class Hierarchies.
Output Primitives Computer Graphics.
Implementation III Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
CS 4731: Computer Graphics Lecture 22: Raster Graphics Part 3 Emmanuel Agu.
12/08/08MET CS Fall Polymorphism 10. Polymorphism Goal: Goal: Create methods that can be invoked with all object types, base as well as.
PolymorphismCS-2303, C-Term Polymorphism Hugh C. Lauer Adjunct Professor (Slides include materials from The C Programming Language, 2 nd edition,
Shallow Versus Deep Copy and Pointers Shallow copy: when two or more pointers of the same types point to the same memory – They point to the same data.
CS-321 Dr. Mark L. Hornick 1 3-D Object Modeling.
C++ Object Oriented 1. Class and Object The main purpose of C++ programming is to add object orientation to the C programming language and classes are.
Inheritance in C++ CS-1030 Dr. Mark L. Hornick.
Dr. Ahmad R. Hadaegh A.R. Hadaegh California State University San Marcos (CSUSM) Page 1 Virtual Functions Polymorphism Abstract base classes.
Chapter 11: Inheritance and Composition. Objectives In this chapter, you will: – Learn about inheritance – Learn about derived and base classes – Redefine.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
Introduction to Computer Graphics with WebGL
CS 480/680 Computer Graphics Implementation III Dr. Frederick C Harris, Jr. Fall 2011.
1 Filling Graphical Shapes. 2 We know how to draw outlines Can we just fill the “inside”? …but how do we know the difference between the inside and outside?
Fall 2004CS-321 Dr. Mark L. Hornick 1 Final Exam Monday Nov 13, 2-4pm CC-43 Bring Calculator – no laptops Note sheet Complete FAST entries before exam.
Attributes of drawing elements
CS-1030 Dr. Mark L. Hornick 1 Basic C++ State the difference between a function/class declaration and a function/class definition. Explain the purpose.
CS-321 Dr. Mark L. Hornick 1 Graphics Displays Video graphics adapter Monitor.
Lecture 15: Raster Graphics and Scan Conversion
Chapter 11: Inheritance and Composition. Introduction Two common ways to relate two classes in a meaningful way are: – Inheritance (“is-a” relationship)
OBJECT ORIENTED PROGRAMMING. Design principles for organizing code into user-defined types Principles include: Encapsulation Inheritance Polymorphism.
Recap Introduction to Inheritance Inheritance in C++ IS-A Relationship Polymorphism in Inheritance Classes in Inheritance Visibility Rules Constructor.
Lecture 13: Raster Graphics and Scan Conversion
Polymorphism and Virtual Functions One name many shapes behaviour Unit - 07.
CSC241 Object-Oriented Programming (OOP) Lecture No. 17.
Rasterization Overview Raster Display Device. Scan Conversion / Rasterization: converting vector graphics into raster graphics (determining pixels in.
Computer Graphics Lecture 08 Taqdees A. Siddiqi Computer Graphics Filled Area Primitives I Lecture 08 Taqdees A. Siddiqi
Java Programming: Guided Learning with Early Objects Chapter 9 Inheritance and Polymorphism.
Computer Graphics I, Fall 2010 Scan conversion algorithms.
CS552: Computer Graphics Lecture 16: Polygon Filling.
Primitive graphic objects
Chapter 10 Computer Graphics
Computer Graphics CC416 Week 13 Clipping.
Polygons.
Computer Graphics Filled Area Primitives II Lecture 09 Taqdees A
Object-Oriented Programming & Design Lecture 18 Martin van Bommel
Object-Oriented Programming
University of New Mexico
Implementation III.
Polygon Filling Algorithms
Introduction to Computer Graphics with WebGL
3D Rendering Pipeline Hidden Surface Removal 3D Primitives
Basic C++ What’s a declaration? What’s a definition?
Agenda Polygon Terminology Types of polygons Inside Test
Inheritance Dr. Bhargavi Goswami Department of Computer Science
Agenda Polygon Terminology Types of polygons Inside Test
Lecture 13 Clipping & Scan Conversion
Polymorphism Polymorphism
Prof. Harriet Fell Fall 2011 Lecture 9 – September 26, 2011
9: POLYMORPHISM Programming Technique II (SCSJ1023) Jumail Bin Taliba
Polymorphism Professor Hugh C. Lauer CS-2303, System Programming Concepts (Slides include materials from The C Programming Language, 2nd edition, by Kernighan.
Ray Tracing Polyhedra ©Anthony Steed
Computer Graphics Implementation III
CISC/CMPE320 - Prof. McLeod
Chapter 11: Inheritance and Composition
Primitive Drawing Algorithm
CPS120: Introduction to Computer Science
SUBJECT : COMPUTER GRAPHICS
Primitive Drawing Algorithm
Implementation III Ed Angel Professor Emeritus of Computer Science
Jim Fawcett CSE687 – Object Oriented Design Spring 2014
C++ Object Oriented 1.
SPL – PS4 C++ Advanced OOP.
Presentation transcript:

Midterm Review Computer Graphics Hardware Point and Line Drawing Polygon Filling C++ Fall 2004 CS-321 Dr. Mark L. Hornick

Computer Graphics Hardware Describe the fundamental difference in operation between a vector and raster device Discuss some relative advantages & disadvantages of both Compute the amount of video memory required for an N-color raster display of resolution n x m pixels Compute the video bus data transfer rate required for such a display with a specific refresh rate Fall 2004 CS-321 Dr. Mark L. Hornick

Point and Line Drawing Compare/contrast the various line generation algorithms Simple (y=mx+b) DDA Bresenham Compute the formulas for Bresenham’s algorithm Explain the purpose of anti-aliasing algorithms Describe how various anti-aliasing algorithms work Supersampling a thin line Supersampling a “thick line” using Uniform weighting Center weighting Fall 2004 CS-321 Dr. Mark L. Hornick

Polygon Filling Given an arbitrary shape, determine inside-outside using Odd-even rule Non-zero winding rule Compute line segment (x,y) intersections by solving parametric equations Explain how scan-line fill uses inside-outside testing and edge intersection information to determine when to fill Determine the progression of a recursive fill algorithm when filling a simple shape Using 4-connected recursion Using 8-connected recursion Explain boundary fill vs. flood fill Fall 2004 CS-321 Dr. Mark L. Hornick

C++ Language Concepts Explain which constructors are automatically generated by the compiler Explain the function of the default implementation of these automatically generated constructors. (i.e. what do they do?) Explain the specific circumstances under which the compiler no longer provides a default ctor and/or copy ctor Write example statements that cause The copy ctor to be invoked The operator= to be invoked State the order of construction in inheritance situations Explain which base class constructor is automatically invoked when derived objects are created (using derived class ctors) Explain the purpose of using an initializer to invoke a specific base class ctor Explain the function of the default implementation of operator=() Explain the function of the default implementation of the destructor Explain the order of destruction in inheritance situations Fall 2004 CS-321 Dr. Mark L. Hornick

C++ Inheritance & Polymorphism Describe the “virtual” method declarator specifier and its effect Explain the concept of an abstract base class Explain which methods can contain implementation and which cannot Explain the concept of a pure virtual method Explain when you must override a virtual method in a derived class When using a pointer to a base class to reference a derived class object, describe What happens when the base class method [is/is not] declared virtual What happens the base class (non-pure) virtual method is not overridden Fall 2004 CS-321 Dr. Mark L. Hornick

UML Class & Sequence Diagrams Given a class diagram, write the corresponding C++ class declaration(s) Given C++ class declaration(s), draw the corresponding class diagram and the relationship between classes Using appropriate connectors Given a sequence diagram illustrating method invocations, write the corresponding C++ code Given C++ code, create a sequence diagram Fall 2004 CS-321 Dr. Mark L. Hornick