Hermite Curves. Hermite curves. Interpolation versus approximation Hermite curve interpolates the control points Piecewise cubic polynomials

Similar documents
Visible-Surface Detection Methods. Chapter? Intro. to Computer Graphics Spring 2008, Y. G. Shin

Computer Graphics. Lecture 9 Hidden Surface Removal. Taku Komura

CEng 477 Introduction to Computer Graphics Fall 2007

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Identifying those parts of a scene that are visible from a chosen viewing position, and only process (scan convert) those parts

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

9. Illumination and Shading

Computer Graphics. Bing-Yu Chen National Taiwan University

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Models and Architectures

CS 498 VR. Lecture 18-4/4/18. go.illinois.edu/vrlect18

Real-Time Non- Photorealistic Rendering

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.

CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms, and Applications

Visible Surface Detection. (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker)

THE DEPTH-BUFFER VISIBLE SURFACE ALGORITHM

Introduction to Computer Graphics with WebGL

Hidden Surface Removal

VISIBILITY & CULLING. Don t draw what you can t see. Thomas Larsson, Afshin Ameri DVA338, Spring 2018, MDH

Hidden surface removal. Computer Graphics

Pipeline Operations. CS 4620 Lecture 10

Werner Purgathofer

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

Level of Details in Computer Rendering

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

3D Rasterization II COS 426

Computing Visibility. Backface Culling for General Visibility. One More Trick with Planes. BSP Trees Ray Casting Depth Buffering Quiz

Visible Surface Detection Methods

CS Computer Graphics: Hidden Surface Removal

Page 1. Area-Subdivision Algorithms z-buffer Algorithm List Priority Algorithms BSP (Binary Space Partitioning Tree) Scan-line Algorithms

Visibility and Occlusion Culling

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling

Interpolation using scanline algorithm

Computer Graphics I Lecture 11

Image Precision Silhouette Edges

Real-Time Shadows. André Offringa Timo Laman

9. Visible-Surface Detection Methods

CSE 690: GPGPU. Lecture 2: Understanding the Fabric - Intro to Graphics. Klaus Mueller Stony Brook University Computer Science Department

Class of Algorithms. Visible Surface Determination. Back Face Culling Test. Back Face Culling: Object Space v. Back Face Culling: Object Space.

Computer Graphics. Shadows

RASTERISED RENDERING

Chapter 1 Introduction

Graphics and Interaction Rendering pipeline & object modelling

CS5620 Intro to Computer Graphics

Image Precision Silhouette Edges

Non-Photo Realistic Rendering. Jian Huang

Let s start with occluding contours (or interior and exterior silhouettes), and look at image-space algorithms. A very simple technique is to render

8. Hidden Surface Elimination

Advanced Shading I: Shadow Rasterization Techniques

Lecture 17: Shadows. Projects. Why Shadows? Shadows. Using the Shadow Map. Shadow Maps. Proposals due today. I will mail out comments

Advanced Computer Graphics

Surface Graphics. 200 polys 1,000 polys 15,000 polys. an empty foot. - a mesh of spline patches:

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

LOD and Occlusion Christian Miller CS Fall 2011

Geometric Features for Non-photorealistiic Rendering

CHAPTER 1 Graphics Systems and Models 3

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Topics and things to know about them:

COMP30019 Graphics and Interaction Scan Converting Polygons and Lines

Rendering Curves and Surfaces. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Computer Graphics 10 - Shadows

CSE 167: Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

Spatial Data Structures

Shading. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller/Fuhrmann

Derivative. Bernstein polynomials: Jacobs University Visualization and Computer Graphics Lab : ESM4A - Numerical Methods 313

CS 563 Advanced Topics in Computer Graphics QSplat. by Matt Maziarz

Previously... contour or image rendering in 2D

Renderer Implementation: Basics and Clipping. Overview. Preliminaries. David Carr Virtual Environments, Fundamentals Spring 2005

Spatial Data Structures

Pipeline Operations. CS 4620 Lecture 14

Illumination Models & Shading

3D Object Representation

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

Problem Max. Points Total 80

Two basic types: image-precision and object-precision. Image-precision For each pixel, determine which object is visable Requires np operations

INFOGR Computer Graphics. J. Bikker - April-July Lecture 11: Visibility. Welcome!

Computergrafik. Matthias Zwicker. Herbst 2010

Computer Graphics. Lecture 9 Environment mapping, Mirroring

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Ray Tracing. Kjetil Babington

Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.

Graphics and Games. Penny Rheingans University of Maryland Baltimore County

Real-Time Rendering (Echtzeitgraphik) Dr. Michael Wimmer

Software Engineering. ò Look up Design Patterns. ò Code Refactoring. ò Code Documentation? ò One of the lessons to learn for good design:

Graphics and Interaction Surface rendering and shading

Lecture outline Graphics and Interaction Surface rendering and shading. Shading techniques. Introduction. Surface rendering and shading

Physically-Based Laser Simulation

Painter s HSR Algorithm

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010

FROM VERTICES TO FRAGMENTS. Lecture 5 Comp3080 Computer Graphics HKBU

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Visibility: Z Buffering

Robust Stencil Shadow Volumes. CEDEC 2001 Tokyo, Japan

Shadow Algorithms. CSE 781 Winter Han-Wei Shen

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

End-Term Examination

First Steps in Hardware Two-Level Volume Rendering

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Computer Graphics. Rendering. by Brian Wyvill University of Calgary. cpsc/enel P 1

Transcription:

Hermite Curves Hermite curves Interpolation versus approximation Hermite curve interpolates the control points Piecewise cubic polynomials

Focus on one segment T1 P0 Q(t) T0 Control points of Bezier curve

All segments Reset t (the time) to zero and find Q(t) for this segment T1 P2 T2 How are the Ti are specified? User input: the user specifies them Automatic A reasonable selection( Kochanek/Bartels): Ti=(P i - P i-1 )+(P i+1 - P i )=P i+1 P i-1

Examples Mesh processing Collapse: edge, vertex, face Split: edge, vertex, face Add: new vertices, faces

Queries Given a vertex, Which edges are share it? Given a vertex, Which vertices are adjacent to it? Given a vertex, which faces are adjacent to it? Inefficiencies for mesh processing Hard to add a new point/vertex/face find the vertex neighborhood which is important for any mesh operation is very hard Better methods??

Example Vertex half-edge x y z V1 Ex (or Hy) V2 Gx H y V 1 Vertex List face half-edge F 2 E y E x F 1 F1 Ex or Gx F2 Hy G x half_edge vertex ( source). Face List face (left) next (half-edge) V 2 pair (half-edge) Ex V1 F1 Gx Ey Ey V2 F2 Hy Ex Half-edge V1 El Er Split the edge into two records (half-edge) Face and vertex list Traversing of the edges, vertices!? Half edge V2 vertex //the vertex at the beginning Face Half edge Vertex face //at the left next //next half edge around the face Half_edge 3D Coordinate Normal pair //the opposite half edge

Back Faces and Hidden Surfaces

Hidden and Visible Surface Visible surface o Parts of scene that are visible from a chosen viewpoint Hidden surface o Parts of scene that are not visible from a chosen viewpoint Back-Face Removal Or back-face culling We see a polygon if its normal is pointed toward the viewer Condition: Is it necessary to send a back-face

An application: Silhouette extraction Silhouette lines are very important for visualizing objects( very useful in the traditional art) Artistic Rendering How to find silhouette edges? any edge shared by one front-facing polygon and one backfacing polygon. Another work Silhouette Rendering Based On Stability Measurement John Brosz,, Mario Costa Sousa SCCG '04, organized in cooperation with ACM SIGGRAPH and Eurographic.

Ribbons Conventional: Extracting mesh from Point clouds Extract Ribbons Use them directly for representations Ribbons: A representation for point clouds, Runions, A., Samavati, F.F., and Prusinkiewicz, P., The Visual Computer, Vol. 23, No. 9-11, 2007. Example: NPR

Enclosed surfaces Hidden Surface Algorithms Object-space o Working in 3D (ray tracing) Image-space o Decide on visibility at each pixel position

Z-Buffer Method A commonly used image-space approach to hidden-surface removal It is also referred as Depth-Buffer method Use the intensity color of the nearest 3D point for each pixel What is an efficient way for it? A buffer, the z-buffer with the same resolution Each location in the z-buffer contains the distance of the closest 3D point. Z-Buffer Algorithm for all positions (x,y) in the view screen frame(x,y)=i_background depth(x,y)=max_distance end for each polygon in the mesh for each point(x,y) in the polygon-fill algorithm compute, z, the distance of corresponding 3D-point from COP if depth(x,y) > z // a closer point depth(x,y)=z frame(x,y)=i(p) //shading endif endfor endfor

Some Facts About the Algorithm After the algorithm o Frame buffer contains intensity values of the visible surface o z-buffer contains depth values for all visible points For the step in algorithm o We know d 1, d 2, d 3 and d 4 from vertices of the mesh o Use linear interpolation for other points d 3 d 4 d 2 d 1