|
Jan 15, 2025
|
|
|
|
CS 321 - Computer Graphics3 lecture hours 3 lab hours 4 credits Course Description This course introduces computer graphics with implementation in C++ on the Linux platform, reinforcing the object-oriented programming concepts of inheritance and polymorphism. Algorithms, data structures, graphics primitives and graphics standards are discussed in addition to hardware aspects of computer graphics. Topics such as 2-D and 3-D transformations, graphics libraries and clipping algorithms are presented. Laboratory exercises provide opportunities for students to develop graphics algorithms and interactive applications. (prereq: CS 3841 or SE 2040 ) Course Learning Outcomes Upon successful completion of this course, the student will be able to: • give examples of and discuss computer graphics hardware
• define and use two-dimensional and three-dimensional graphic object representations
• apply and appraise several scan-conversion algorithms
• understand and apply two-dimension and three-dimension transformations
• discuss and apply concepts of object-oriented programming, inheritance, polymorphism, and event-driven systems
• describe C++ and STL concepts, including classes and constructors, operator overloading, STL vector class, dynamic memory with new and delete
• apply data structures to the management of computer graphics entities
• compile and execute C++ programs on the Linux platform Prerequisites by Topic • Familiar with the advantages, disadvantages, and proficient in the usage of data structures.
• Familiar with the advanced programming concepts of event driven systems, inheritance, and polymorphism.
• Familiar with Linux command-line interface and gcc compiler Course Topics • Overview of computer graphics.
• Computer graphics input and output hardware.
• Mathematical background.
• Lines and line generation.
• Polygons and filling.
• Two-dimensional transformations.
• Windowing and clipping.
• Three-dimensional objects.
• Three-dimensional transformations.
• Projections and depth.
• Graphical user interfaces.
• Examinations and reviews. Laboratory Topics • C++ classes
• STL containers
• Scan-conversion
• Event-driven programming
• 2-D Graphics
• 3-D Graphics Coordinator Darrin Rothe
Add to Portfolio (opens a new window)
|
|