Computer Graphics Panos Trahanias email trahaniacsd uoc gr

  • Slides: 144
Download presentation
Computer Graphics Panos Trahanias e-mail: trahania@csd. uoc. gr ΗΥ 358 Spring 2009

Computer Graphics Panos Trahanias e-mail: trahania@csd. uoc. gr ΗΥ 358 Spring 2009

Ιστορική Αναδρομή Architecture of a Vector Display

Ιστορική Αναδρομή Architecture of a Vector Display

Ιστορική Αναδρομή Architecture of a Raster Display

Ιστορική Αναδρομή Architecture of a Raster Display

Ιστορική Αναδρομή Random scan versus raster scan

Ιστορική Αναδρομή Random scan versus raster scan

Conceptual Framework of CG

Conceptual Framework of CG

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Line Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm Eight-way symmetry

Circle Drawing – Midpoint Algorithm Eight-way symmetry

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Circle Drawing – Midpoint Algorithm

Ellipse Drawing – Midpoint Algorithm

Ellipse Drawing – Midpoint Algorithm

Ellipse Drawing – Midpoint Algorithm

Ellipse Drawing – Midpoint Algorithm

Ellipse Drawing – Midpoint Algorithm

Ellipse Drawing – Midpoint Algorithm

Antialiasing – Midpoint Line Algorithm Increasing Resolution

Antialiasing – Midpoint Line Algorithm Increasing Resolution

Antialiasing – Midpoint Line Algorithm Unweighted Area Sampling

Antialiasing – Midpoint Line Algorithm Unweighted Area Sampling

Antialiasing – Midpoint Line Algorithm Properties of Unweighted Area Sampling: l l l Intensity

Antialiasing – Midpoint Line Algorithm Properties of Unweighted Area Sampling: l l l Intensity of a pixel intersected by a line decreases as the distance between the pixel center and the edge increases. A primitive (e. g. line) does not influence a pixel at all if they are not intersected. Equal areas contribute equal intensity, regardless of the distance between the pixel’s center and the area.

Antialiasing – Midpoint Line Algorithm Unweighted Area Sampling: Box Filter

Antialiasing – Midpoint Line Algorithm Unweighted Area Sampling: Box Filter

Antialiasing – Midpoint Line Algorithm Weighted Area Sampling: Cone Filter

Antialiasing – Midpoint Line Algorithm Weighted Area Sampling: Cone Filter

Antialiasing – Midpoint Line Algorithm Dramatic Effects of the cone filter.

Antialiasing – Midpoint Line Algorithm Dramatic Effects of the cone filter.

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Antialiasing – Midpoint Line Algorithm

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling Calculation of Span Extrema

Polygon Filling Calculation of Span Extrema

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling

Polygon Filling Algorithm

Polygon Filling Algorithm

Polygon Filling

Polygon Filling

Filling Ellipse Arcs

Filling Ellipse Arcs

Clipping Lines

Clipping Lines

Clipping Lines Cohen-Sutherland Line-Clipping Algorithm

Clipping Lines Cohen-Sutherland Line-Clipping Algorithm

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines Parametric Line-Clipping Algorithm

Clipping Lines Parametric Line-Clipping Algorithm

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Clipping Lines

Geometrical Transformations 2 D Transformations - Translation

Geometrical Transformations 2 D Transformations - Translation

Geometrical Transformations 2 D Transformations - Scaling

Geometrical Transformations 2 D Transformations - Scaling

Geometrical Transformations 2 D Transformations - Rotation

Geometrical Transformations 2 D Transformations - Rotation

Geometrical Transformations Homogeneous Coordinates The XYW homogeneous coordinate space, with the W=1 plane and

Geometrical Transformations Homogeneous Coordinates The XYW homogeneous coordinate space, with the W=1 plane and point P(X, Y, W) projected onto the W=1 plane.

Geometrical Transformations 2 D Transformations – Affine Transformations 45 o rotation and then nonuniform

Geometrical Transformations 2 D Transformations – Affine Transformations 45 o rotation and then nonuniform scaling of the unit cube. The result is an affine transformation.

Geometrical Transformations 2 D Transformations – Shear Transformations

Geometrical Transformations 2 D Transformations – Shear Transformations

Geometrical Transformations Composition of 2 D Transformations

Geometrical Transformations Composition of 2 D Transformations

Geometrical Transformations 2 D Transformations – the Window-to-Viewport Transformation

Geometrical Transformations 2 D Transformations – the Window-to-Viewport Transformation

Geometrical Transformations 2 D Transformations – the Window-to-Viewport Transformation

Geometrical Transformations 2 D Transformations – the Window-to-Viewport Transformation

Geometrical Transformations 2 D Transformations – the Window-to-Viewport Transformation

Geometrical Transformations 2 D Transformations – the Window-to-Viewport Transformation

Geometrical Transformations 3 D Transformations – Coordinate Systems Right-handed Coordinate System Left-handed Coordinate System

Geometrical Transformations 3 D Transformations – Coordinate Systems Right-handed Coordinate System Left-handed Coordinate System

Geometrical Transformations Composition of 3 D Transformations

Geometrical Transformations Composition of 3 D Transformations

Geometrical Transformations Composition of 3 D Transformations – 1 st Approach

Geometrical Transformations Composition of 3 D Transformations – 1 st Approach

Geometrical Transformations Composition of 3 D Transformations – 2 nd Approach

Geometrical Transformations Composition of 3 D Transformations – 2 nd Approach

Geometrical Transformations Composition of 3 D Transformations

Geometrical Transformations Composition of 3 D Transformations

Viewing in 3 D Conceptual model of 3 D viewing

Viewing in 3 D Conceptual model of 3 D viewing

Viewing in 3 D Projections - Projectors

Viewing in 3 D Projections - Projectors

Viewing in 3 D Perspective Projections – 1 -point PP

Viewing in 3 D Perspective Projections – 1 -point PP

Viewing in 3 D Perspective Projections – 2 -point PP

Viewing in 3 D Perspective Projections – 2 -point PP

Viewing in 3 D Parallel Projections

Viewing in 3 D Parallel Projections

Viewing in 3 D Parallel Projections – Isometric Projection

Viewing in 3 D Parallel Projections – Isometric Projection

Viewing in 3 D Parallel Projections – Oblique Projection

Viewing in 3 D Parallel Projections – Oblique Projection

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D Specifying an Arbitrary 3 D View

Viewing in 3 D Specifying an Arbitrary 3 D View

Viewing in 3 D Specifying an Arbitrary 3 D View

Viewing in 3 D Specifying an Arbitrary 3 D View

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D

Viewing in 3 D The Mathematics of Planar Geometric Projections

Viewing in 3 D The Mathematics of Planar Geometric Projections

Viewing in 3 D Alternative Perspective Projection

Viewing in 3 D Alternative Perspective Projection

Viewing in 3 D Alternative Perspective Projection

Viewing in 3 D Alternative Perspective Projection

Viewing in 3 D Implementation of Planar Geometric Projections

Viewing in 3 D Implementation of Planar Geometric Projections

Viewing in 3 D Implementation of 3 D Viewing

Viewing in 3 D Implementation of 3 D Viewing

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Parallel Projection

Viewing in 3 D Shearing Matrix

Viewing in 3 D Shearing Matrix

Viewing in 3 D Final Translation / Scaling Step

Viewing in 3 D Final Translation / Scaling Step

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection Step 4 - Shear

Viewing in 3 D Perspective Projection Step 4 - Shear

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Perspective Projection

Viewing in 3 D Implementation Summary

Viewing in 3 D Implementation Summary

Visible Surface Determination Image Precision Approaches for (each pixel in the image) { determine

Visible Surface Determination Image Precision Approaches for (each pixel in the image) { determine the object closest to the viewer that is pierced by the projector through the pixel; draw the pixel in the appropriate color; } Object Precision Approaches for (each object in the world) { determine those parts of the object whose view is unobstructed by other parts of it or any other object; draw those parts in the appropriate color; }

Techniques for Efficient Visible-surface Algorithms Extents and Bounding Volumes

Techniques for Efficient Visible-surface Algorithms Extents and Bounding Volumes

Techniques for Efficient Visible-surface Algorithms Back-face Culling

Techniques for Efficient Visible-surface Algorithms Back-face Culling

Z-Buffer Algorithm

Z-Buffer Algorithm

Z-Buffer Algorithm

Z-Buffer Algorithm

Z-Buffer Algorithm

Z-Buffer Algorithm

Scan-Line Algorithms Much like polygon scanconversion algorithms Each ET entry contains

Scan-Line Algorithms Much like polygon scanconversion algorithms Each ET entry contains

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms

Scan-Line Algorithms Pseudocode for a general scan-line algorithm

Scan-Line Algorithms Pseudocode for a general scan-line algorithm

Visible-Surface Ray Tracing

Visible-Surface Ray Tracing

Visible-Surface Ray Tracing Pseudocode for a simple ray tracer

Visible-Surface Ray Tracing Pseudocode for a simple ray tracer

Visible-Surface Ray Tracing

Visible-Surface Ray Tracing

Visible-Surface Ray Tracing Anti-alised ray tracing

Visible-Surface Ray Tracing Anti-alised ray tracing

List-Priority Algorithms The Depth-Sort Algorithm

List-Priority Algorithms The Depth-Sort Algorithm

List-Priority Algorithms Depth Comparisons

List-Priority Algorithms Depth Comparisons

List-Priority Algorithms The Depth-Sort Algorithm – Tests to resolve ambiguities The Depth-Sort Algorithm –

List-Priority Algorithms The Depth-Sort Algorithm – Tests to resolve ambiguities The Depth-Sort Algorithm – Tests with polygons reversed

List-Priority Algorithms The Depth-Sort Algorithm – Results of Tests

List-Priority Algorithms The Depth-Sort Algorithm – Results of Tests

List-Priority Algorithms The Depth-Sort Algorithm – Unnecessary polygon split

List-Priority Algorithms The Depth-Sort Algorithm – Unnecessary polygon split

Illumination and Shading

Illumination and Shading

Illumination and Shading Diffuse Reflection

Illumination and Shading Diffuse Reflection

Illumination and Shading

Illumination and Shading

Illumination and Shading Atmospheric Attenuation

Illumination and Shading Atmospheric Attenuation

Illumination and Shading Depth Cueing

Illumination and Shading Depth Cueing

Illumination and Shading Specular Reflection

Illumination and Shading Specular Reflection

Illumination and Shading

Illumination and Shading

Illumination and Shading

Illumination and Shading

Illumination and Shading

Illumination and Shading

Illumination and Shading

Illumination and Shading

Illumination and Shading Surface Normals

Illumination and Shading Surface Normals

Illumination and Shading

Illumination and Shading

Illumination and Shading Normal Vector Interpolation

Illumination and Shading Normal Vector Interpolation

Illumination and Shading Gouraud Shading – Phong Shading

Illumination and Shading Gouraud Shading – Phong Shading

Illumination and Shading Texture Mapping

Illumination and Shading Texture Mapping

Illumination and Shading Scan-line Shadow Algorithm

Illumination and Shading Scan-line Shadow Algorithm

Illumination and Shading Two-Pass Object Precision Shadow Algorithm

Illumination and Shading Two-Pass Object Precision Shadow Algorithm

Illumination and Shading Transparency

Illumination and Shading Transparency

Illumination and Shading Calculating the refraction vector

Illumination and Shading Calculating the refraction vector