Lec3Prelim - v1 e2 e1 v2 v3 e3 e4 f6 f1 e5 f2 e6 f3 v6 v4...

Info iconThis preview shows pages 1–6. Sign up to view the full content.

View Full Document Right Arrow Icon
f 6 v 1 v 2 v 3 v 4 v 5 v 6 v 10 v 9 v 8 v 7 e 1 e 2 e 3 e 4 e 5 e 6 e 7 e 8 e 9 e 10 e 11 e 12 e 13 e 14 f 1 f 2 f 3 f 4 f 5
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Preliminaries Planar straight line graph A planar straight line graph (PSLG) is a planar embedding of a planar graph G = ( V , E ) with: 1. each vertex v V mapped to a distinct point in the plane, 2. and each edge e E mapped to a segment between the points for the endpoint vertices of the edge such that no two segments intersect, except at their endpoints. edge (14) vertex (10) face (6) Observe that PSLG is defined by mapping a mathematical object (planar graph) to a geometric object (PSLG). That mapping introduces the notion of coordinates or location, which was not present in the graph (despite its planarity). We will see later that PSLGs will be useful objects. For now we focus on a data structure to represent a PSLG.
Background image of page 2
Preliminaries Doubly connected edge list (DCEL) The DCEL data structure represents a PSLG. It has one entry (“edge node” in Preparata) for each edge in the PSLG. Each entry has 6 fields: V1 Origin of the edge V2 Terminus (destination) of the edge; implies an orientation F1 Face to the left of edge, relative to V1V2 orientation F2 Face to the right of edge, relative to V1V2 orientation P1 Index of entry for first edge encountered after edge V1V2, when proceeding counterclockwise around V1 P2 Index of entry for first edge after edge V1V2, when proceeding counterclockwise around V2 V1 V2 F1 F2 P1 P2 e 1 v 1 v 2 f 1 f 2 e 2 e 3 e 2 v 4 v 1 f 1 f 3 ? e 4 e 3 v 2 v 3 f 4 f 2 e 5 ? v 3 v 1 v 2 v 4 e 3 e 5 e 1 e 4 e 2 f 2 f 3 f 1 f 4 Example (both PSLG and DCEL are partial)
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 10 11 12 13 F1 F2 F3 F4 F5 F6 Edge V1 V2 LeftF RightF PredE NextE ------------------------------------------------- 1 1 2 F6 F1 7 13 2 2 3 F6 F2 1 4 3 3 4 F6 F3 2 5 4 3 9 F3 F2 3 12 5 4 6 F5 F3 8 11 6 6 7 F5 F4 5 10 7 1 5 F5 F6 9 8 8 4 5 F6 F5 3 7 9 1 7 F1 F5 1 6 10 7 8 F1 F4 9 12 11 6 9 F4 F3 6 4 12 9 8 F4 F2 11 13 13 2 8 F2 F1 2 10
Background image of page 4
Preliminaries Supplementary data structures If the PSLG has N vertices, M edges and F faces then we know N - M +F = 2 by Euler’s formula. DCEL can be described by six arrays V1[1:M], V2[1:M], LeftF[1:M] Right[1:M], PredE[1:M] and NextE[1:M]. Since both the number of faces and edges are bounded by a linear function of N, we need O(N) storage for all these arrays. Define array HV[1:N] with one entry for each vertex; entry HV[ i ] denotes the minimum numbered edge that is incident on vertex v i and is the first row or edge index in the DCEL where v i is in V1 or V2 column. Thus for our example in the preceding slide HV=(1,1,2,3,7,5,6,10,4]. Similarly, define array HF[1:F] where F= M-N+2 ,with one entry for each face; HF[ i ] is the minimum numbered edge of all the edges that make the face HF[ i ]
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 6
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 22

Lec3Prelim - v1 e2 e1 v2 v3 e3 e4 f6 f1 e5 f2 e6 f3 v6 v4...

This preview shows document pages 1 - 6. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online