210 likes | 569 Views
Lecture 42 of 42 Term Project Report Guidelines and Final Exam Review Wednesday, 03 May 2006 William H. Hsu Department of Computing and Information Sciences, KSU http://www.kddresearch.org http://www.cis.ksu.edu/~bhsu Readings: Sections 12.6-12.10, Foley et al
E N D
Lecture 42 of 42 Term Project Report Guidelines and Final Exam Review Wednesday, 03 May 2006 William H. Hsu Department of Computing and Information Sciences, KSU http://www.kddresearch.org http://www.cis.ksu.edu/~bhsu Readings: Sections 12.6-12.10, Foley et al (Reference) 10.15-10.17 Hearn and Baker 2e Slide Set 5, VanDam (8b, 11/09/1999)
Lecture Outline • Readings • Sections 12.6-12.10, Foley et al • Outside reading (optional): 10.15-10.17 Hearn and Baker 2e • Outside reading (required): Slide Set 8b, VanDam (11/09/1999) • Last Time • Overview: data structures • Boolean set operations (12.2 FVD), primitive instancing (12.3 FVD), sweeps (12.4 FVD), boundary representations (B-reps, 12.5 FVD) • Today • Spatial partitioning representations • Cell decomposition • (Planar and) Spatial occupancy: pixel, voxel • Hierarchical spatial occupancy: quadtrees, octrees; algorithms • Binary Space Partitioning (BSP) trees • Constructive Solid Geometry (CSG) • Next Class: Color Models; Visible Surface Determination (Intro)
Terminology • Modeling Solid Objects • Data structures • Boundary representations (akaB-reps): describe solid in terms of surfaces • Spatial partitioning representations: describe solid in terms of subparts • Basic algorithms • Construction (aka composition): form new structure by composing primitives • Intersection: compute intersection point (if any) with ray, line, other structure • Point classification: tell whether query point lies inside or outside • Spatial Partitioning • Cell decomposition: breaking complex object up into primitive cells • Planar and spatial occupancy • Voxel: volumetric unit (typically cubic, resulting in cuberille) • Hierarchical: variable-granularity decomposition, e.g., quadtrees and octrees • Binary Space Partitioning (BSP) tree: break space up into half-spaces • Constructive Solid Geometry (CSG): combine primitives using Boolean set operators and modify them using (unary) transformation operations
Summary Points • Solid Modeling: Overview • Data structures • Boundary representations (B-reps): last time • Spatial partitioning representations: today • Algorithms • Construction (composition) • Intersection, point classification • Know: difference between B-reps and spatial partitioning; pros and cons • Spatial Partitioning (Review Guide) • Cell decomposition – know how to obtain for composite object (simple primitives) • Planar and spatial occupancy • Simple: uniform subdivision (grid / pixel, volumetric / voxel) • Hierarchical: quadtrees and octrees – know how to obtain for 2D, 3D scenes • Binary Space Partitioning (BSP) trees – know how to obtain for simple 2D object • Constructive Solid Geometry (CSG) – know typical primitives, how to combine • Next Class: Color Models; Visible Surface Data Structures
Lecture Outline • Course Information: Format, Exams, Resources, Assignments, Grading • Overview • Topics covered • What is computer graphics? • Applications • Brief Tour of Computer Graphics • A case study and some demos • Survey of rendering and animation systems • Applications to computer-aided design (CAD), manufacturing (CAM), and engineering (CAE) • Brief Tour of Visualization Systems • Information, data, and scientific visualization • Focus on informational graphics
Course Information and Administrivia • Instructor: William H. Hsu • E-mail: bhsu@cis.ksu.edu • Phone: (785) 532-6350 (office), (785) 539-7180 (home) • Office hours: before class; by appointment • Grading • Assignments (6): 25%, reviews (4): 5%, class participation: 10%, midterm: 15%, final: 25%, project: 25% • Lowest homework score and lowest paper review score dropped • Homework • Six (6) assignments: programming (2), written (2), application (2) • Late policy: due on Fridays; -10% credit per day after due date • Cheating: don’t do it; see introductory handout for policy • Project Option • 3-hour project option for graduate students (CIS 690, 798, 890) • Term paper or semester research project • Sign up by February 11, 2005 if interested (see class web page)
Class Resources • Web Page (Required) • http://www.kddresearch.org/Courses/Spring-2005/CIS736 • Lecture notes (MS PowerPoint 97/2000/XP, Portable Document Format) • Homeworks (MS Word 97/2000/XP, HTML) • Exam and homework solutions (MS Word 97/2000/XP, PDF) • Class announcements (students responsibility to follow) and grade postings • Course Notes at Copy Center (Required) • Class Web Board (Required) • http://groups.yahoo.com/group/ksu-cis736-spring2005 • Login: Students; password: announced in class • Research announcements (seminars, conferences, calls for papers) • Discussions (instructor and other students) • Mailing List (Automatic) • cis736-L@www.kddresearch.org • Sign-up sheet (course roster) • Reminders, related research, job announcements
Course Overview • Graphics Systems and Techniques • 2-D, 3-D models: curves, surfaces, visible surface identification, illumination • Photorealistic rendering and animation: shading models, ray tracing, radiosity • Special topics: fractals, information visualization • Operations • Surface modeling, mapping • Pipelines for display, transformation, illumination, animation • Computer Graphics (CG): Duality with Computer Vision • Visualization and User Interfaces • Display optimization: hardware, libraries, GUI design • Techniques for quantitative information, objects, processes • Survey of statistical, data, information, and scientific visualization • Applications • CAD/CAM/CAE: object transformations, surface/solid modeling, animation • Entertainment: 3-D games, photorealistic animation, etc. • Analysis: info visualization, decision support systems, intelligent displays
Why Computer Graphics? • Developing Computational Capability • Rendering: synthesizing realistic-looking, useful, or interesting images • Animation: creating visual impression of motion • Image processing: analyzing, transforming, displaying images efficiently • Better Understanding of Data, Objects, Processes through Visualization • Visual summarization, description, manipulation • Virtual environments (VR), visual monitoring, interactivity • Human-computer intelligent interaction (HCII): training, tutoring, analysis, control systems • Time is Right • Recent progress in algorithms and theory • Rapidly emergence of new I/O (display and data acquisition) technologies • Available computational power, improving price-performance-ratio of hardware • Growth and interest of graphics industries (e.g., information visualization, entertainment CAD)
Front-End (Geometry Processing) Graphics Database Back-End (Rasterization) Display Traversal Modeling Transformation Viewing Operation • Visible-Surface • Determination • Scan Conversion • Shading / • Illumination Image Synthesis Pipeline Graphics Database Editing Image
HypermediaUser Interfaces • Hypermedia • Database format (similar to hypertext) that provides display-based access to (internetworked) multimedia (text, image, audio, video, etc.) documents • Chimera: http://www.ics.uci.edu/pub/chimera/ • Virtual Environments • Immersion: interactive training, tutoring systems • Entertainment hypermedia • Visualization and Computer-Aided Design and Engineering (CAD/CAE) • Visualization: scientific, data/information, statistics • User interfaces for CAD/CAE/CAM/CASE: http://www.isii.com NCSA D2K: http://d2k.ncsa.uiuc.edu Visual programming system for high-performance knowledge discovery in databases (KDD)
Relevant Disciplines • Analytic Geometry • Art and Graphic Design • Cognitive Science • Computer Engineering • Engineering Design • Education • Film • Human Factors • Linear Algebra • Numerical Analysis Rendering Hardware VR Systems Portable/Embedded CG CAD CAE / CASE CAM Immersive Training Tutoring Interfaces Color/Optical Models CG/Vision Duality Interface Design Computer Graphics (CG) Layout CG Design Visualization Parametric Equations Conics Polygon Rendering Surface Modeling Physically-Based Modeling Stat/Info Visualization Transformations Change of Coordinate Systems User Modeling Ergonomic Interfaces, I/O Animation Large-Scale CG
1 2 3 4 5 8 7 6 Curve and Surface Modelingin Computer-Aided Design (CAD) http://www.geocities.com/SiliconValley/Lakes/2057/nurbs.html
http://www.aliaswavefront.com http://www.discreet.com PhotorealisticIllumination Models http://www.pixar.com
Fractal Systems http://sprott.physics.wisc.edu/fractals.htm
Visible Decisions SeeIT (http://www.vdi.com) Information Visualization
Determine Objectives of Graphics System Control Interface Decision Support Entertainment Education Determine Display Objective Interactively Analyze Data / Documents Visualize Physical Objects Monitor Process Determine Representations In Graphics Database Solid Geometric Model Wireframe / Polygon Mesh Fractal System NURBS Determine and Implement Rendering Pipeline Radiosity and Polygon Shading Shaded-Polygon Rendering Ray Tracing Design Choices and Issuesin Computer Graphics Completed Design
Math Review • Overview: First Two Weeks • Review of mathematical foundations of CG: analytic geometry, linear algebra • Line and polygon rendering • Matrix transformations • Graphical interfaces • Line and Polygon Rendering • Basic line drawing and 2-D clipping • Bresenham’s algorithm • Follow-up: 3-D clipping, z-buffering (painter’s algorithm) • Matrix Transformations • Application of linear transformations to rendering • Basic operations: translation, rotation, scaling, shearing • Follow-up: review of standard graphics libraries (e.g., OpenGL) • Graphical Interfaces • Brief overview • Survey of windowing environments (MFC, Java AWT)
6500 news stories from the WWW in 1997 Cartia ThemeScapes –http://www.cartia.com iWing – http://www.geocities.com/CapeCanaveral/3925/ Entertainment CGA Hypermedia and Statistical Visualization Destroyed Normal Extinguished Ignited Fire Alarm Engulfed Flooding Virtual Environments for Immersive Training DC-ARM – http://www-kbs.ai.uiuc.edu Interesting Industrial Applications