Homework Exam 1, Geometric Algorithms, 2016


 Alban Franklin
 2 years ago
 Views:
Transcription
1 Homework Exam 1, Geometric Algorithms, (3 points) Let P be a convex polyhedron in 3dimensional space. The boundary of P is represented as a DCEL, storing the incidence relationships between the vertices, (half)edges, and faces in the boundary of P. Assume there are n vertices. There are no vertices of degree 2, and no two adjacent faces are parallel (the description of P is minimal). An xysilhouette of a convex polyhedron P is defined as a cyclic sequence (cycle) of vertices v 1,..., v k P such that (i) if we remove the third coordinate from each vertex in the sequence, it is a proper description of a convex polygon in the xyplane, and (ii) for every vertex in the sequence, and for any point on a line segment defined by two consecutive vertices, a line through that vertex or point parallel to the zaxis does not intersect the interior of P. (A proper description of a convex polygon does not include vertices where the interior angle is π, so where the two incident edges are parallel.) Note that two consecutive vertices in the xysilhouette need not be connected by an edge in P. (a.) (0.5 pnt) An xysilhouette may not be unique. Explain exactly when the xysilhouette of a convex polyhedron P is unique and when it is not. Answer: The xysilhouette is unique if and only if P has no vertical edges (parallel to the zaxis). When there are vertical edges, either the upper endpoint or the lower endpoint can be chosen in the xysilhouette. If P has a vertical facet but no vertical edges, then the xyprojection of that facet is a line segment and its endpoints are the projections of unique vertices of P, and only these occur in the xysilhouette. Note that the xysilhouette is a cyclic sequence of vertices of P and not of the projection of P. Also note that it is cyclic, so a different starting point does not make it a different cyclic sequence. A proof was not asked for. The only essential part of the answer above is the first sentence. (b.) (2 pnt) Give an algorithm that determines an xysilhouette of a convex polyhedron P in O(n) time, using the standard names of fields of a DCEL (like: IncidentEdge, Next, etc.). The algorithm is passed a single vertex record of some vertex in the boundary of P. As the approach, use a suitable (simple!) traversal of the boundary of P. Write down every constanttime geometric test or operation in words, not in formulas or code. Answer: The approach is to use two phases. In the first, we traverse the boundary of P to find a vertex v with minimum xcoordinate. In the second, we traverse edges and vertices of the boundary of P that have the vertical line property from the definition of xysilhouette, and extract the xysilhouette vertices in a cyclic order. Phase 1: Suppose any vertex v of P is given 1. e = IncidentEdge(v) 2. e = Twin(e) 3. while (Next(e )!= e) and (Origin(e ).x >= v.x) 4. do e = Twin(Next(e )) 5. if Origin(e ).x < v.x 6. then v = Origin(e ) and continue at 1. In case there are multiple vertices with the same smallest xcoordinate, we will minimize ycoordinate (lexicographic minimum) as well, and then minimize zcoordinate; this is not in the code above. After phase 1, v is a vertex of P with minimum xcoordinate and phase 2 will start. In the code below, v w represents the direction from the vertex v to the vertex 1
2 w, and the angle between directions is the (absolute) turn angle required to align the two. It is always π. Phase 2: A vertex v with minimum xcoordinate is given 1. Push v onto a stack S 2. d is the 2D direction of the negative yaxis 3. u = v 4. repeat 5. e = IncidentEdge(v) 6. e = Twin(e) 7. w = Origin(e ) 8. while (Next(e )!= e) 9. do if the xyprojected angle between d and v Origin(Twin(Next(e ))) is smaller than the xyprojected angle between d and v w [ with equality, take the one with lower zcoordinate ] 10. then w = Origin(Twin(Next(e ))); e = Twin(Next(e )) 11. push w onto S 12. while S has at least 3 elements and the last 3 do not make a turn 13. do remove the middle one of them 14. if (w == u) then pop S and return S 15. let d = v w and v = w 15. until False (c.) (0.5 pnt) Argue why your algorithm takes linear time. Answer: The first phase of the algorithm visits a vertex (in the role of v) at most once, because we always change to a vertex with a strictly smaller xcoordinate. For each such vertex, we spend time linear in its degree (number of neighbors). The sum of the degrees of all vertices is bounded by two times the number of edges, and since the vertices and edges of P are a planar graph, this is O(n). Hence, the first phase takes O(n) time. The second phase also visits a vertex (in the role of v) at most once, and exactly the same arguments apply to prove linear time for the second phase. 2. (4 points) Given two sets of red and blue line segments in the plane, denoted R and B, with n and m line segments, respectively. All line segments in R B are disjoint. We want to report every red line segment that is bluesurrounded, meaning that directly to the left and to the right of it, during its full yspan, there is some blue line segment. Give a plane sweep algorithm that takes two sets R and B and reports all bluesurrounded red line segments of R. You may assume that all endpoints of R B have different ycoordinates. (a.) (1 pnt) Define the status of your sweepline algorithm and describe the status structure. Also describe the event list of your algorithm. Answer: The status for a particular position of the sweepline l is the set of intersected red and blue line segments of R B, sorted from left to right on intersection point with the sweep line. Each red line segment that intersects the sweepline stores a Boolean value that is True if it is bluesurrounded above the sweepline, and False otherwise. The status structure T is a balanced binary search tree storing the status in its leaves. The event list is a list storing all events (upper and lower endpoints of the line segments in R B) in sorted order of decreasing ycoordinate. 2
3 (b.) (0.5 pnt) Give the initialization of your algorithm. Answer: The initialization consists of computing the event list by sorting all endpoints, and making an empty status structure. (c.) (1.5 pnt) Distinguish in the types of events and describe for each type how it is handled. Answer: There are four types of event points, corresponding to the upper and lower endpoints of the red and of the blue line segments. Note that the algorithm may set the Boolean value of a red segment to False when it is False already (this does not influence correctness). Upper red endpoint p of s: Search with p in T. If the segments directly left and/or right are red, set their Boolean to False, and insert s in T with its Boolean set to False. If the segments directly left and right of p are blue, insert s in T with its Boolean set to True. Lower red endpoint p of s: Search with p in T, and delete s. If its Boolean was True, report it. Upper blue endpoint p of s: Insert s in T. Lower blue endpoint p of s: Search for p in T, and delete s. If directly left and directly right of p there are red segments, then set their Booleans to False. If there is a red segment to only one side and the other side does not have any segments, then set the Boolean of the red segment to False. (d.) (1 pnt) Analyze the running of your algorithm, expressed in n and m. Answer: There are n + m line segments and therefore 2n + 2m endpoints. Each endpoint is an event, and therefore the number of events is O(n+m). Sorting these events in initialization costs O((n + m) log(n + m)) time. Each event involves removing it from the event list (in constant time) and otherwise one insertion or deletion in T, and finding up to two neighbor leaves. Each of these operations takes O(log(n + m)) time. So the total time taken by the algorithm is O((n + m) log(n + m)) time. 3. (2 points) Given a simple polygon P that has no vertices with equal ycoordinate, we are interested in the best horizontal cut. A horizontal cut is a horizontal line segment s (nondegenerate, so of nonzero length) whose endpoints lie on the boundary of P and which itself is fully in P (interior or boundary). A cut therefore splits P in one or two pieces locally above the cut, and one or two pieces locally below the cut. A horizontal cut is best if it minimizes the maximum of: (1) the sum of the areas above the cut, and (2) the sum of the areas below the cut, over all possible horizontal cuts. So it is the most areabalanced cut. A best horizontal cut of a simple polygon with n vertices can be computed in O(n log n) time using a plane sweep, but that is not relevant for this assignment. Here we want to prove a geometric property of the best horizontal cut on which an algorithm can be based. Lemma: Given a simple polygon P with no vertices with equal ycoordinate, the best horizontal cut (i) contains a vertex of P, or (ii) it cuts P into pieces with equal area above and below, or (iii) both. 3
4 (a.) (1.5 pnt) Prove the lemma. Answer: For a contradiction, assume that the best horizontal cut (i) does not contain a vertex, and (ii) does not cut P into two pieces with equal area above and below. This implies that both endpoints of the cut lie in the interiors of two edges of the boundary of P. We know that these edges are not horizontal, because P does not have any horizontal edges (or else it would have two vertices with the same ycoordinate). Furthermore, the cut splits P into only two pieces which are simple polygons. Assume first that the area of the piece above the cut is strictly larger than the area of the piece below the cut. When can move the cut an arbitrarily small amount upward, keeping its endpoints on the same edges, and decrease the area above the cut. Since we can do it by an arbitrarily small amount, we can make sure that the move does not make the area below the cut larger than the area above the cut. Hence, we have found a better solution than the best cut. A contradiction. If the area of the piece below the cut is strictly larger, we are in a symmetric case and we apply exactly the analogous arguments. (b.) (0.5 pnt) Using the vertex types of Chapter 3, what are the possible types of vertex of P on the best horizontal cut, when it does not result in equal area of the two polygon parts? Answer: This can be either a merge vertex or a split vertex, but nothing else. 4. (1 point) Related to the cut in the previous question is the best diagonal of a simple polygon P. There are three main differences: a diagonal must have both endpoints on vertices of P (see the definition of diagonal in Chapter 3 of the book), its interior lies fully in the interior of P, and it need not be horizontal. The similarity is that the best diagonal also minimizes the area of the larger of the two resulting polygons. Describe an algorithm that computes the best diagonal. The most important aspect of your solution is that it is correct. The secondmost important aspect is that it is efficient. Analyze the running time of your algorithm. For this question you do not have to give the details of the algorithm and you may ignore all degenerate cases. The answer should be about half a page. Answer: The simple idea is to try every pair of vertices, test if it gives a diagonal, and if so, compute the areas of the two resulting polygons. 1. For all pairs of vertices p, q in P 2. do 3. for all edges e of P 4. do if the closure of e intersects the interior of pq then take the next p, q 5. Compute the areas on both sides of the diagonal using a standard lineartime area computation 6. Keep it if it is the best one so far O(n 2 ) pairs of vertices are tried, first to test if they are a diagonal in linear time (lines 3 4), and if so, then to compute the areas, also in linear time (lines 5 6). Hence, the algorithm runs in O(n 2 ) (O(n) + O(n)) = O(n 3 ) time. This solution gives the 1 point assigned to this question. You can get an additional point if you see that you can perform a rotational sweep around each vertex (like in exercise 2.14 or 3.14). You can then process any vertex in O(n log n) time, 4
5 leading to an O(n 2 log n) time algorithm. Assume that we sweep clockwise from a vertex v. We must keep the area of the polygon to the left/counterclockwise from the current diagonal (directed away from v), and update this area by computing only the area in between the previous diagonal and the current diagonal. Or, you can perform the rotational sweep only to find as many diagonals from a vertex as possible. This gives O(n) subpolygons. We compute the area of each in O(n) time overall. Using the angular order of these diagonals, it is now easy to compute the areas of the next clockwise diagonal in O(1) time from the previous one, since the areas are cumulative. The resulting running time is the same, because finding the O(n) diagonals from a vertex already takes O(n log n) time. 5
Computational Geometry
Motivation 1 Motivation Polygons and visibility Visibility in polygons Triangulation Proof of the Art gallery theorem Two points in a simple polygon can see each other if their connecting line segment
More informationComputational Geometry
Motivation Motivation Polygons and visibility Visibility in polygons Triangulation Proof of the Art gallery theorem Two points in a simple polygon can see each other if their connecting line segment is
More informationCS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992
CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992 Original Lecture #6: 28 January 1991 Topics: Triangulating Simple Polygons
More informationMonotone Partitioning. Polygon Partitioning. Monotone polygons. Monotone polygons. Monotone Partitioning. ! Define monotonicity
Monotone Partitioning! Define monotonicity Polygon Partitioning Monotone Partitioning! Triangulate monotone polygons in linear time! Partition a polygon into monotone pieces Monotone polygons! Definition
More information1 Point Inclusion in a Polygon
Comp 163: Computational Geometry Tufts University, Spring 2005 Professor Diane Souvaine Scribe: Ryan Coleman Point Inclusion and Processing Simple Polygons into Monotone Regions 1 Point Inclusion in a
More informationComputational Geometry
Lecture 10: 1 Lecture 10: Voronoi diagram Spatial interpolation Given some trees, seen from above, which region will they occupy? 2 Lecture 10: Voronoi diagram Spatial interpolation Given some trees, seen
More information24: Polygon Partition  Faster Triangulations
24: Polygon Partition  Faster Triangulations CS 473u  Algorithms  Spring 2005 April 15, 2005 1 Previous lecture We described triangulations of simple polygons. See Figure 1 for an example of a polygon
More informationComputational Geometry. Lecture 1: Introduction and Convex Hulls
Lecture 1: Introduction and convex hulls 1 Geometry: points, lines,... Plane (twodimensional), R 2 Space (threedimensional), R 3 Space (higherdimensional), R d A point in the plane, 3dimensional space,
More informationTufts University, Spring 2005 Michael Horn, Julie Weber (2004) Voronoi Diagrams
Comp 163: Computational Geometry Professor Diane Souvaine Tufts University, Spring 2005 Michael Horn, Julie Weber (2004) Voronoi Diagrams 1 Voronoi Diagrams 1 Consider the following problem. To determine
More informationDivideandConquer. Three main steps : 1. divide; 2. conquer; 3. merge.
DivideandConquer Three main steps : 1. divide; 2. conquer; 3. merge. 1 Let I denote the (sub)problem instance and S be its solution. The divideandconquer strategy can be described as follows. Procedure
More informationOptimal 3D Angular Resolution for LowDegree Graphs
Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 17, no. 3, pp. 173 200 (2013) DOI: 10.7155/jgaa.00290 Optimal 3D Angular Resolution for LowDegree Graphs David Eppstein 1 Maarten Löffler
More informationTriangulation. Is this always possible for any simple polygon? If not, which polygons are triangulable.
Triangulation Partition polygon P into nonoverlapping triangles using diagonals only. Is this always possible for any simple polygon? If not, which polygons are triangulable. Does the number of triangles
More information2.3 Scheduling jobs on identical parallel machines
2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed
More informationLattice Point Geometry: Pick s Theorem and Minkowski s Theorem. Senior Exercise in Mathematics. Jennifer Garbett Kenyon College
Lattice Point Geometry: Pick s Theorem and Minkowski s Theorem Senior Exercise in Mathematics Jennifer Garbett Kenyon College November 18, 010 Contents 1 Introduction 1 Primitive Lattice Triangles 5.1
More informationIntroduction to Voronoi Diagrams
C.S. 252 Prof. Roberto Tamassia Computational Geometry Sem. II, 1992 1993 Lecture 13 Date: March 22, 1993 Scribe: Scott S. Snibbe 1 Introduction Introduction to Voronoi Diagrams This lecture introduces
More informationPlanar Tree Transformation: Results and Counterexample
Planar Tree Transformation: Results and Counterexample Selim G Akl, Kamrul Islam, and Henk Meijer School of Computing, Queen s University Kingston, Ontario, Canada K7L 3N6 Abstract We consider the problem
More informationPolygon Triangulation. O Rourke, Chapter 1
Polygon Triangulation O Rourke, Chapter 1 Outline Triangulation Duals Three Coloring Art Gallery Problem Definition A (simple) polygon is a region of the plane bounded by a finite collection of line segments
More informationChapter 6 Planarity. Section 6.1 Euler s Formula
Chapter 6 Planarity Section 6.1 Euler s Formula In Chapter 1 we introduced the puzzle of the three houses and the three utilities. The problem was to determine if we could connect each of the three utilities
More informationArrangements And Duality
Arrangements And Duality 3.1 Introduction 3 Point configurations are tbe most basic structure we study in computational geometry. But what about configurations of more complicated shapes? For example,
More informationWeek 2 Polygon Triangulation
Week 2 Polygon Triangulation What is a polygon? Last week A polygonal chain is a connected series of line segments A closed polygonal chain is a polygonal chain, such that there is also a line segment
More information12. Visibility Graphs and 3Sum Lecture on Monday 9 th
12. Visibility Graphs and 3Sum Lecture on Monday 9 th November, 2009 by Michael Homann 12.1 Sorting all Angular Sequences. Theorem 12.1 Consider a set P of n points in the plane.
More informationComputational Geometry [csci 3250]
Computational Geometry [csci 3250] Laura Toma Bowdoin College Polygon Triangulation Polygon Triangulation The problem: Triangulate a given polygon. (output a set of diagonals that partition the polygon
More informationHomework 15 Solutions
PROBLEM ONE (Trees) Homework 15 Solutions 1. Recall the definition of a tree: a tree is a connected, undirected graph which has no cycles. Which of the following definitions are equivalent to this definition
More informationLine Segment Intersection
Chapter 1 Line Segment Intersection (with material from [1], [3], and [5], pictures are missing) 1.1 Interval case We first think of having n intervals (e.g., the xrange of horizontal line segments) and
More informationExistence of Simple Tours of Imprecise Points
Existence of Simple Tours of Imprecise Points Maarten Löffler Department of Information and Computing Sciences, Utrecht University Technical Report UUCS00700 www.cs.uu.nl ISSN: 097 Existence of Simple
More informationPOWER SETS AND RELATIONS
POWER SETS AND RELATIONS L. MARIZZA A. BAILEY 1. The Power Set Now that we have defined sets as best we can, we can consider a sets of sets. If we were to assume nothing, except the existence of the empty
More informationINTERSECTION OF LINESEGMENTS
INTERSECTION OF LINESEGMENTS Vera Sacristán Computational Geometry Facultat d Informàtica de Barcelona Universitat Politècnica de Catalunya Problem Input: n linesegments in the plane, s i = (p i, q
More informationPolygon Triangulation
Polygon Triangulation A polygonal curve is a finite chain of line segments. Line segments called edges, their endpoints called vertices. A simple polygon is a closed polygonal curve without selfintersection.
More informationShortest Path Algorithms
Shortest Path Algorithms Jaehyun Park CS 97SI Stanford University June 29, 2015 Outline Cross Product Convex Hull Problem Sweep Line Algorithm Intersecting Halfplanes Notes on Binary/Ternary Search Cross
More informationConvexity in R N Main Notes 1
John Nachbar Washington University December 16, 2016 Convexity in R N Main Notes 1 1 Introduction. These notes establish basic versions of the Supporting Hyperplane Theorem (Theorem 5) and the Separating
More informationINTERSECTION OF LINESEGMENTS
INTERSECTION OF LINESEGMENTS Vera Sacristán Discrete and Algorithmic Geometry Facultat de Matemàtiques i Estadística Universitat Politècnica de Catalunya Problem Input: n linesegments in the plane,
More information100 Math Facts 6 th Grade
100 Math Facts 6 th Grade Name 1. SUM: What is the answer to an addition problem called? (N. 2.1) 2. DIFFERENCE: What is the answer to a subtraction problem called? (N. 2.1) 3. PRODUCT: What is the answer
More informationCOLORED GRAPHS AND THEIR PROPERTIES
COLORED GRAPHS AND THEIR PROPERTIES BEN STEVENS 1. Introduction This paper is concerned with the upper bound on the chromatic number for graphs of maximum vertex degree under three different sets of coloring
More information1. A student followed the given steps below to complete a construction. Which type of construction is best represented by the steps given above?
1. A student followed the given steps below to complete a construction. Step 1: Place the compass on one endpoint of the line segment. Step 2: Extend the compass from the chosen endpoint so that the width
More informationEE602 Algorithms GEOMETRIC INTERSECTION CHAPTER 27
EE602 Algorithms GEOMETRIC INTERSECTION CHAPTER 27 The Problem Given a set of N objects, do any two intersect? Objects could be lines, rectangles, circles, polygons, or other geometric objects Simple to
More informationBasic Notions on Graphs. Planar Graphs and Vertex Colourings. Joe Ryan. Presented by
Basic Notions on Graphs Planar Graphs and Vertex Colourings Presented by Joe Ryan School of Electrical Engineering and Computer Science University of Newcastle, Australia Planar graphs Graphs may be drawn
More information1 if 1 x 0 1 if 0 x 1
Chapter 3 Continuity In this chapter we begin by defining the fundamental notion of continuity for real valued functions of a single real variable. When trying to decide whether a given function is or
More informationStudent Name: Teacher: Date: District: MiamiDade County Public Schools. Assessment: 9_12 Mathematics Geometry Exam 1
Student Name: Teacher: Date: District: MiamiDade County Public Schools Assessment: 9_12 Mathematics Geometry Exam 1 Description: GEO Topic 1 Test: Tools of Geometry Form: 201 1. A student followed the
More informationEuclidean Geometry. We start with the idea of an axiomatic system. An axiomatic system has four parts:
Euclidean Geometry Students are often so challenged by the details of Euclidean geometry that they miss the rich structure of the subject. We give an overview of a piece of this structure below. We start
More informationSelected practice exam solutions (part 5, item 2) (MAT 360)
Selected practice exam solutions (part 5, item ) (MAT 360) Harder 8,91,9,94(smaller should be replaced by greater )95,103,109,140,160,(178,179,180,181 this is really one problem),188,193,194,195 8. On
More informationComputational Geometry: Line segment intersection
: Line segment intersection Panos Giannopoulos Wolfgang Mulzer Lena Schlipf AG TI SS 2013 Tutorial room change: 055 this building!!! (from next monday on) Outline Motivation Line segment intersection (and
More informationHomework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS
Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS 1.1.25 Prove that the Petersen graph has no cycle of length 7. Solution: There are 10 vertices in the Petersen graph G. Assume there is a cycle C
More informationDO NOT REDISTRIBUTE THIS SOLUTION FILE
Professor Kindred Math 04 Graph Theory Homework 7 Solutions April 3, 03 Introduction to Graph Theory, West Section 5. 0, variation of 5, 39 Section 5. 9 Section 5.3 3, 8, 3 Section 7. Problems you should
More informationOptimal Binary Space Partitions in the Plane
Optimal Binary Space Partitions in the Plane Mark de Berg and Amirali Khosravi TU Eindhoven, P.O. Box 513, 5600 MB Eindhoven, the Netherlands Abstract. An optimal bsp for a set S of disjoint line segments
More informationApproximation Algorithms for Art Gallery Problems
Approximation Algorithms for Art Gallery Problems Subhas C. Nandy (nandysc@isical.ac.in) Advanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 700108, India. Outline 1 Introduction
More informationMATHEMATICAL BACKGROUND
Chapter 1 MATHEMATICAL BACKGROUND This chapter discusses the mathematics that is necessary for the development of the theory of linear programming. We are particularly interested in the solutions of a
More informationComputational Geometry
Range trees 1 Range queries Database queries salary G. Ometer born: Aug 16, 1954 salary: $3,500 A database query may ask for all employees with age between a 1 and a 2, and salary between s 1 and s 2 2
More informationTriangle. A triangle is a geometrical figure. Tri means three. So Triangle is a geometrical figure having 3 angles.
Triangle A triangle is a geometrical figure. Tri means three. So Triangle is a geometrical figure having 3 angles. A triangle is consisting of three line segments linked end to end. As the figure linked
More informationComputational Geometry
and range trees Lecture 6: and range trees Lecture 7: and range trees Database queries 1D range trees Databases Databases store records or objects Personnel database: Each employee has a name, id code,
More informationTopological Treatment of Platonic, Archimedean, and Related Polyhedra
Forum Geometricorum Volume 15 (015) 43 51. FORUM GEOM ISSN 15341178 Topological Treatment of Platonic, Archimedean, and Related Polyhedra Tom M. Apostol and Mamikon A. Mnatsakanian Abstract. Platonic
More information39 Symmetry of Plane Figures
39 Symmetry of Plane Figures In this section, we are interested in the symmetric properties of plane figures. By a symmetry of a plane figure we mean a motion of the plane that moves the figure so that
More informationClipping polygons the SutherlandHodgman algorithm
Clipping polygons would seem to be quite complex. Clipping polygons would seem to be quite complex. single Clipping polygons would seem to be quite complex. single Clipping polygons would seem to be quite
More informationHOLES 5.1. INTRODUCTION
HOLES 5.1. INTRODUCTION One of the major open problems in the field of art gallery theorems is to establish a theorem for polygons with holes. A polygon with holes is a polygon P enclosing several other
More informationWhen is a graph planar?
When is a graph planar? Theorem(Euler, 1758) If a plane multigraph G with k components has n vertices, e edges, and f faces, then n e + f = 1 + k. Corollary If G is a simple, planar graph with n(g) 3,
More informationPolygon Triangulation
If triangles had a god, they would give him three sides. Charles Louis de Secondat Montesquie (1721) Down with Euclid! Death to triangles! Jean Dieudonné (1959) G Polygon Triangulation G.1 Introduction
More informationCentroid: The point of intersection of the three medians of a triangle. Centroid
Vocabulary Words Acute Triangles: A triangle with all acute angles. Examples 80 50 50 Angle: A figure formed by two noncollinear rays that have a common endpoint and are not opposite rays. Angle Bisector:
More informationDisjoint Compatible Geometric Matchings
Disjoint Compatible Geometric Matchings Mashhood Ishaque Diane L. Souvaine Csaba D. Tóth Abstract We prove that for every even set of n pairwise disjoint line segments in the plane in general position,
More informationHidden Mobile Guards in Simple Polygons
CCCG 2012, Charlottetown, P.E.I., August 8 10, 2012 Hidden Mobile Guards in Simple Polygons Sarah Cannon Diane L. Souvaine Andrew Winslow Abstract We consider guarding classes of simple polygons using
More informationSTRAIGHT LINES. , y 1. tan. and m 2. 1 mm. If we take the acute angle between two lines, then tan θ = = 1. x h x x. x 1. ) (x 2
STRAIGHT LINES Chapter 10 10.1 Overview 10.1.1 Slope of a line If θ is the angle made by a line with positive direction of xaxis in anticlockwise direction, then the value of tan θ is called the slope
More informationThe minimum number of distinct areas of triangles determined by a set of n points in the plane
The minimum number of distinct areas of triangles determined by a set of n points in the plane Rom Pinchasi Israel Institute of Technology, Technion 1 August 6, 007 Abstract We prove a conjecture of Erdős,
More informationAlgorithmica 9 1989 SpringerVerlag New York Inc.
Algorithmica (1989) 4:97108 Algorithmica 9 1989 SpringerVerlag New York Inc. Constrained Delaunay Triangulations 1 L. Paul Chew 2 Abstract. Given a set of n vertices in the plane together with a set
More informationTriangulation by Ear Clipping
Triangulation by Ear Clipping David Eberly Geometric Tools, LLC http://www.geometrictools.com/ Copyright c 19982016. All Rights Reserved. Created: November 18, 2002 Last Modified: August 16, 2015 Contents
More information1. What s wrong with the following proofs by induction?
ArsDigita University Month : Discrete Mathematics  Professor Shai Simonson Problem Set 4 Induction and Recurrence Equations Thanks to Jeffrey Radcliffe and Joe Rizzo for many of the solutions. Pasted
More informationMath 421, Homework #5 Solutions
Math 421, Homework #5 Solutions (1) (8.3.6) Suppose that E R n and C is a subset of E. (a) Prove that if E is closed, then C is relatively closed in E if and only if C is a closed set (as defined in Definition
More informationChapter Three. Parallel Lines and Planes
Chapter Three Parallel Lines and Planes Objectives A. Use the terms defined in the chapter correctly. B. Properly use and interpret the symbols for the terms and concepts in this chapter. C. Appropriately
More informationMasters Thesis Computing the Visibility Graph of Points Within a Polygon. Jesper Buch Hansen
Masters Thesis Computing the Visibility Graph of Points Within a Polygon Jesper Buch Hansen December 22, 2005 Department of Computer Science, University of Aarhus Student Jesper Buch Hansen Supervisor
More informationDEGREE CONSTRAINED TRIANGULATION. Roshan Gyawali
DEGREE CONSTRAINED TRIANGULATION by Roshan Gyawali Bachelor in Computer Engineering Institue of Engineering, Pulchowk Campus, Tribhuvan University, Kathmandu 2008 A thesis submitted in partial fulfillment
More informationFINDING ALL WEAKLYVISIBLE CHORDS OF A POLYGON IN LINEAR TIME
Nordic Journal of Computing 1(1994), 433 457. FINDING ALL WEAKLYVISIBLE CHORDS OF A POLYGON IN LINEAR TIME GAUTAM DAS PAUL J. HEFFERNAN GIRI NARASIMHAN Mathematical Sciences Department The University
More informationAB divides the plane. Then for any α R, 0 < α < π there exists a unique ray. AC in the halfplane H such that m BAC = α. (4) If ray
4. Protractor xiom In this section, we give axioms relevant to measurement of angles. However, before we do it we need to introduce a technical axiom which introduces the notion of a halfplane. 4.. Plane
More informationPartitioning edgecoloured complete graphs into monochromatic cycles and paths
arxiv:1205.5492v1 [math.co] 24 May 2012 Partitioning edgecoloured complete graphs into monochromatic cycles and paths Alexey Pokrovskiy Departement of Mathematics, London School of Economics and Political
More informationINCIDENCEBETWEENNESS GEOMETRY
INCIDENCEBETWEENNESS GEOMETRY MATH 410, CSUSM. SPRING 2008. PROFESSOR AITKEN This document covers the geometry that can be developed with just the axioms related to incidence and betweenness. The full
More informationSolving Geometric Problems with the Rotating Calipers *
Solving Geometric Problems with the Rotating Calipers * Godfried Toussaint School of Computer Science McGill University Montreal, Quebec, Canada ABSTRACT Shamos [1] recently showed that the diameter of
More informationBetweenness of Points
Math 444/445 Geometry for Teachers Summer 2008 Supplement : Rays, ngles, and etweenness This handout is meant to be read in place of Sections 5.6 5.7 in Venema s text [V]. You should read these pages after
More information56 questions (multiple choice, check all that apply, and fill in the blank) The exam is worth 224 points.
6.1.1 Review: Semester Review Study Sheet Geometry Core Sem 2 (S2495808) Semester Exam Preparation Look back at the unit quizzes and diagnostics. Use the unit quizzes and diagnostics to determine which
More informationG.H. Raisoni College of Engineering, Nagpur. Department of Information Technology
Practical List 1) WAP to implement line generation using DDA algorithm 2) WAP to implement line using Bresenham s line generation algorithm. 3) WAP to generate circle using circle generation algorithm
More informationMODERN APPLICATIONS OF PYTHAGORAS S THEOREM
UNIT SIX MODERN APPLICATIONS OF PYTHAGORAS S THEOREM Coordinate Systems 124 Distance Formula 127 Midpoint Formula 131 SUMMARY 134 Exercises 135 UNIT SIX: 124 COORDINATE GEOMETRY Geometry, as presented
More information( ) 2 = 9x 2 +12x + 4 or 8x 2 " y 2 +12x + 4 = 0; (b) Solution: (a) x 2 + y 2 = 3x + 2 " $ x 2 + y 2 = 1 2
Conic Sections (Conics) Conic sections are the curves formed when a plane intersects the surface of a right cylindrical doule cone. An example of a doule cone is the 3dimensional graph of the equation
More informationCatalan Numbers. Thomas A. Dowling, Department of Mathematics, Ohio State Uni versity.
7 Catalan Numbers Thomas A. Dowling, Department of Mathematics, Ohio State Uni Author: versity. Prerequisites: The prerequisites for this chapter are recursive definitions, basic counting principles,
More informationGeometry Chapter 1 Vocabulary. coordinate  The real number that corresponds to a point on a line.
Chapter 1 Vocabulary coordinate  The real number that corresponds to a point on a line. point  Has no dimension. It is usually represented by a small dot. bisect  To divide into two congruent parts.
More informationKaleidoscopes, Hubcaps, and Mirrors Problem 1.1 Notes
Problem 1.1 Notes When part of an object or design is repeated to create a balanced pattern, we say that the object or design has symmetry. You can find examples of symmetry all around you. rtists use
More informationApproximation of an Open Polygonal Curve with a Minimum Number of Circular Arcs and Biarcs
Approximation of an Open Polygonal Curve with a Minimum Number of Circular Arcs and Biarcs R. L. Scot Drysdale a Günter Rote b,1 Astrid Sturm b,1 a Department of Computer Science, Dartmouth College b Institut
More informationTheorem A graph T is a tree if, and only if, every two distinct vertices of T are joined by a unique path.
Chapter 3 Trees Section 3. Fundamental Properties of Trees Suppose your city is planning to construct a rapid rail system. They want to construct the most economical system possible that will meet the
More informationSection 13.5 Equations of Lines and Planes
Section 13.5 Equations of Lines and Planes Generalizing Linear Equations One of the main aspects of single variable calculus was approximating graphs of functions by lines  specifically, tangent lines.
More information11.1. Objectives. Component Form of a Vector. Component Form of a Vector. Component Form of a Vector. Vectors and the Geometry of Space
11 Vectors and the Geometry of Space 11.1 Vectors in the Plane Copyright Cengage Learning. All rights reserved. Copyright Cengage Learning. All rights reserved. 2 Objectives! Write the component form of
More informationCOT5405 Analysis of Algorithms Homework 3 Solutions
COT0 Analysis of Algorithms Homework 3 Solutions. Prove or give a counter example: (a) In the textbook, we have two routines for graph traversal  DFS(G) and BFS(G,s)  where G is a graph and s is any
More informationScanLine Fill. ScanLine Algorithm. Sort by scan line Fill each span vertex order generated by vertex list
ScanLine Fill Can also fill by maintaining a data structure of all intersections of polygons with scan lines Sort by scan line Fill each span vertex order generated by vertex list desired order ScanLine
More informationMath 366 Lecture Notes Section 11.1 Basic Notions (of Geometry)
Math 366 Lecture Notes Section. Basic Notions (of Geometry) The fundamental building blocks of geometry are points, lines, and planes. These terms are not formally defined, but are described intuitively.
More informationRemoving Even Crossings
EuroComb 2005 DMTCS proc. AE, 2005, 105 110 Removing Even Crossings Michael J. Pelsmajer 1, Marcus Schaefer 2 and Daniel Štefankovič 2 1 Department of Applied Mathematics, Illinois Institute of Technology,
More informationRange Searching using Kd Tree.
Range Searching using Kd Tree. Hemant M. Kakde. 25082005 1 Introduction to Range Searching. At first sight it seems that database has little to do with geometry. The queries about data in database can
More informationFinding and counting given length cycles
Finding and counting given length cycles Noga Alon Raphael Yuster Uri Zwick Abstract We present an assortment of methods for finding and counting simple cycles of a given length in directed and undirected
More information(Refer Slide Time 1.50)
Discrete Mathematical Structures Dr. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras Module 2 Lecture #11 Induction Today we shall consider proof
More informationascending order decimal denominator descending order Numbers listed from largest to smallest equivalent fraction greater than or equal to SOL 7.
SOL 7.1 ascending order Numbers listed in order from smallest to largest decimal The numbers in the base 10 number system, having one or more places to the right of a decimal point denominator The bottom
More informationSession 7 Symmetry. coordinates reflection rotation translation
Key Terms for This Session Session 7 Symmetry Previously Introduced coordinates reflection rotation translation New in This Session: frieze pattern glide reflection reflection or line symmetry rotation
More informationChapter 4. Trees. 4.1 Basics
Chapter 4 Trees 4.1 Basics A tree is a connected graph with no cycles. A forest is a collection of trees. A vertex of degree one, particularly in a tree, is called a leaf. Trees arise in a variety of applications.
More informationName Geometry Exam Review #1: Constructions and Vocab
Name Geometry Exam Review #1: Constructions and Vocab Copy an angle: 1. Place your compass on A, make any arc. Label the intersections of the arc and the sides of the angle B and C. 2. Compass on A, make
More informationEdge event: An edge shrinks to zero, making its neighboring edges adjacent. Split event: A reex vertex runs to this edge and splits it, thus split the
Reprinted from: Lazlo SzirmayKalos (ed.). Proceedings of Spring Conference on Computer Graphics, Budmerice, Slovakia. ISBN 8022308374. Pages 210{218. http://www.cgg.cvut.cz/publications/felkel sccg
More informationM243. Fall Homework 2. Solutions.
M43. Fall 011. Homework. s. H.1 Given a cube ABCDA 1 B 1 C 1 D 1, with sides AA 1, BB 1, CC 1 and DD 1 being parallel (can think of them as vertical ). (i) Find the angle between diagonal AC 1 of a cube
More informationGeometry Chapter 1. 1.1 Point (pt) 1.1 Coplanar (1.1) 1.1 Space (1.1) 1.2 Line Segment (seg) 1.2 Measure of a Segment
Geometry Chapter 1 Section Term 1.1 Point (pt) Definition A location. It is drawn as a dot, and named with a capital letter. It has no shape or size. undefined term 1.1 Line A line is made up of points
More informationGENERALIZED STAR POLYGONS AND STAR POLYGRAMS
GENERALIZED STAR POLYGONS AND STAR POLYGRAMS EIDUR SVEINN GUNNARSSON AND KARL THORLAKSSON Abstract. We extend the definition of regular star polygons and other regular star polygrams to be drawn within
More information3D Pipeline Segmentation (planar)
3D Pipeline Segmentation (planar) Registration (using lines) 3D PHOTOGRAPHY EXAMPLE Ten scans were acquired of façade of Thomas Hunter Building (NYC) Automatic registration. Each scan has a different color.
More information