Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically.

Slides:



Advertisements
Similar presentations
Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically.
Advertisements

Computational Geometry II Brian Chen Rice University Computer Science.
3D Graphics Rendering and Terrain Modeling
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically.
Introduction to Computer Graphics Chapter 6 – 2D Viewing Pt 2 1.
5/17/2015 1:32 AMConvex Hull1 obstacle start end.

Computational Geometry & Collision detection
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
9/5/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Plane Sweep Algorithms and Segment Intersection Carola Wenk.
CPSC 335 Geometric Data Structures in Computer Modeling and GIS Dr. Marina L. Gavrilova Assistant Professor Dept of Comp. Science, University of Calgary,
CS 128/ES Lecture 12b1 Spatial Analysis (3D)
Chapter 11: Advanced Rendering Part 1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
CS 128/ES Lecture 12b1 Spatial Analysis (3D)
Ray Tracing Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University of.
Lecture 08: Map Transformation Geography 128 Analytical and Computer Cartography Spring 2007 Department of Geography University of California, Santa Barbara.
TU/e computational geometry introduction Mark de Berg.
Introduction to Computational Geometry Computational Geometry, WS 2007/08 Lecture 1 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut.
Lection 1: Introduction Computational Geometry Prof.Dr.Th.Ottmann 1 History: Proof-based, algorithmic, axiomatic geometry, computational geometry today.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
Ray Tracing 1 Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Projective geometry of 2-space DLT alg HZ 4.1 Rectification HZ 2.7 Hierarchy of maps Invariants HZ 2.4 Projective transform HZ 2.3 Behaviour at infinity.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
Lecture 11 Stereo Reconstruction I Lecture 11 Stereo Reconstruction I Mata kuliah: T Computer Vision Tahun: 2010.
CS 450: Computer Graphics REVIEW: OVERVIEW OF POLYGONS
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
Single View Geometry Course web page: vision.cis.udel.edu/cv April 7, 2003  Lecture 19.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
© Manfred Huber Autonomous Robots Robot Path Planning.
CS 325 Introduction to Computer Graphics 03 / 08 / 2010 Instructor: Michael Eckmann.
Autonomous Navigation for Flying Robots Lecture 2.2: 2D Geometry
CSCE 5013 Computer Vision Fall 2011 Prof. John Gauch
Mathematics. Session Three Dimensional Geometry–1(Straight Line)
University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Introduction to computer vision Chapter 2: Image.
An Application of Tetrahedrisation to From-Point Visibility Honours Project Proposal Gerard Ryan and Brendon Miszka
UNC Chapel Hill M. C. Lin COMP290-72: Computational Geometry and Applications Tues/Thurs 2:00pm - 3:15pm (SN 325) Ming C. Lin
Linear Interpolation (for curve 01).  This chapter discusses straight lines and flat surfaces that are defined by points.  The application of these.
Single View Geometry Course web page: vision.cis.udel.edu/cv April 9, 2003  Lecture 20.
Programming 3D Applications CE Displaying Computer Graphics Week 3 Lecture 5 Bob Hobbs Faculty of Computing, Engineering and Technology Staffordshire.
Section 3.2 Connections to Algebra.  In algebra, you learned a system of two linear equations in x and y can have exactly one solution, no solutions,
Ray Tracing. 2 Introduction OpenGL is based on a pipeline model in which primitives are rendered one at time ­No shadows (except by tricks or multiple.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically.
L4-Vector Algorithms L4 – Vector Algorithms NGEN06(TEK230) – Algorithms in Geographical Information Systems Abdulghani Hasan.
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
CS 480/680 Computer Graphics Compositing and Blending Dr. Frederick C Harris, Jr.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
3D Object Representations 2011, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Rendering Pipeline Fall, D Polygon Rendering Many applications use rendering of 3D polygons with direct illumination.
homogeneous coordinates equationmisc point(w ; x, y, z)r w = S 0 where S 0 = xi + yj + zk  3 points in 3D space.
Computational Geometry 2012/10/23. Computational Geometry A branch of computer science that studies algorithms for solving geometric problems Applications:
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
Graphics Graphics Korea University kucg.korea.ac.kr Geometric Primitives 고려대학교 컴퓨터 그래픽스 연구실.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Rendering Pipeline Fall, 2015.
Lesson 3-6: Perpendicular & Distance
CMPS 3130/6130 Computational Geometry Spring 2017
VECTORS APPLICATIONS NHAA/IMK/UNIMAP.
3D Graphics Rendering PPT By Ricardo Veguilla.
3D Clipping.
Two-view geometry Computer Vision Spring 2018, Lecture 10
3D Rendering Pipeline Hidden Surface Removal 3D Primitives
Computational Geometry
Presentation transcript:

Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically fast. Two key ingredients of a good algorithmic solution:  Thorough understanding of the problem geometry.  Proper application of algorithmic techniques and data structures.

Example 1  Proximity Closest café on campus? Voronoi diagram Delaunay triangulation

Example 2  Path Planning Robot How can a robot find a short route to the destination that avoids all obstacles?

Applications in Computer Graphics Creating scene images on a display device.  Intersect geometric primitives (lines, polygons, polyhedra, etc.)  Determine primitives lying in a region.  Hidden surface removal – determine the visible part of a 3D scene while discard the occluded part from a view point.  Create realistic-looking scenes – taking into account lighting and computing shadows.  Deal with moving objects and detect collisions.

Applications in Robotics How the robot perceives, understands, and acts upon its environment,  Motion planning.  Grasping.  Parts orienting.  Optimal placement.

Applications in GIS Storage of geographical data (contours of countries, height of mountains, course of rivers, population, roads, electricity lines, etc.)  Large amount of data – requiring efficient algorithms.  Geographic data storage (e.g., map of roads for car positioning or computer display).  Interpolation between nearby sample data points  Overlay of multiple maps.

Applications in CAD/CAM Design of Products with a computer.  Intersection, union, and decomposition of objects.  Testing on product specifications.  Design for assembly – modeling and simulation of assembly.  Testing design for feasibility.

Line Segments & Vectors x y

Dot (Inner) Product

Cross (Vector) Product

Turning of Consecutive Segments

Case of Collinearity No change of direction Direction reversal

Intersection of Two Lines p Rewrite the above equations in terms of dot products: Hence is perpendicular to both and. must be parallel to their cross product!

Homogeneous Coordinates Represent every point as homogeneous coordinates of Intersection is parallel to the cross product vector: Normalize the z-coordinate of the cross product to 1. Hence the intersection point: homogeneous coordinates of intersection

Intersection Example Find the intersect point of the lines: Take the cross product of the two coefficient vectors: Intersection point:

Two Parallel Lines point at infinity Two parallel lines “intersect” at infinity.

Line through Two Points Scaling yields the same line! Ex. The line through (3, 1) and (-4, 5) has coefficients (i.e., homogeneous coordinates) and equation

Advantages of Homogeneous Coordinates Scaling independent: Uniform handling of all cases (horizontal, perpendicular, parallel lines, etc.) No need to solve equations – just take a cross product. all represent the same point

Lines in the Space For more, see Compute the distance between two lines. Find their common perpendicular. Find intersections with their common perpendicular. (When the lines intersect, the two intersections coincide.) Compute the distance between two lines.