1 / 17

Spatial Information Systems (SIS) COMP 30110 Spatial data structures (3)

Spatial Information Systems (SIS) COMP 30110 Spatial data structures (3). e3. e2. e. e4. e1. More Topological Data Structures. Arc-node structure (Peucker and Chrisman, 1975): stores EV and EF Winged-edge structure (Weiler, 1985): extends the DCEL

tareq
Télécharger la présentation

Spatial Information Systems (SIS) COMP 30110 Spatial data structures (3)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Spatial Information Systems (SIS) COMP 30110 Spatial data structures (3)

  2. e3 e2 e e4 e1 More Topological Data Structures Arc-node structure (Peucker and Chrisman, 1975): stores EV and EF Winged-edge structure (Weiler, 1985): extends the DCEL structure by storing 4 edges instead of just 2 in relation EE Generally used for geometric modeling applications

  3. EE E ET EV VE TE V VT T TT VV TV Data Structures for Triangulations Entities vertices edges triangles Relations: vertex-based edge-based triangle-based

  4. P1 e3 e1 t P3 e2 P2 Triangle-based relations NOTE: Triangle-based relations: TV, TE, TT are all constant (3 entities involved)

  5. Data Structures for Triangulations DCEL: ok for any plane subdivision Symmetric data structure: ok for any plane subdivision Simplified symmetric data structure: ad hoc for triangulations Triangle-based data structure: ad hoc for triangulations

  6. EE E EF EV VE* FE* V F DCEL structure DCEL structure stores: the three sets of entities V, E, F the three edge-based relations EV, EE, EF (all constant) the two partial relations: FE* and VE* FE*: associates a face f with one of the edges bounding f VE*: associates a vertex v with one of the edges incident in v

  7. P4 e4 P1 f0 t2 e3 e1 e5 t1 P3 e2 P2 DCEL structure for triangulations: example NOTE: FE is a constant relation now. To facilitate querying, we could store all three edges bounding each triangle. A different treatment can be used for f0.

  8. E EF EV VE FE V F Symmetric structure • Symmetric structure stores: • the three sets of entities V, E, F • relation EV and its inverse VE • relation FE and its inverse EF

  9. P4 e4 P1 f0 t2 e3 e1 e5 t1 P3 e2 P2 Symmetric structure for triangulations: example

  10. E ET EV VE* TE V T Simplified symmetric structure • Simplified symmetric structure stores: • the three sets of entities V, E, T (and, implicitly, the external face) • relation TE and its inverse ET • relation EV and its inverse (partial) VE*

  11. P4 e4 P1 f0 t2 e3 e1 e5 t1 P3 e2 P2 Simplified symmetric structure: example

  12. Simplified symmetric structure: space • for each edge, we storetwo constant relations involving • 2 entities: 4e • for each triangle, we storeone constant relations involving • 3 entities: 3t • for each vertex, we store one constant relation, involving one entity: n • Space required to store relations: 4e + 3t + n • Also, for each vertex, we store its geometric coordinates:2n

  13. Simplified symmetric structure: calculating missing relations • How can we extract the missing relations? • (i.e., VE, VV, VT, TV, TT)

  14. V T TT TV Triangle-based data structure Entities: vertices triangles (and, implicitly, the external face) Relations: TV and TT

  15. P4 e4 P1 f0 t2 e3 e1 e5 t1 P3 e2 P2 Triangle-based data structure: example NOTE: for each triangle t, the two lists corresponding to TV and TT must be sorted accordingly (see example)

  16. Triangle-based data structure: space • for each triangle, we storetwo constant relations involving • 3 entities: 6t • for each vertex, we store its geometric coordinates:2n

  17. Triangle-based data structure: notes • The edges of the triangulation are not stored explicitly • To retrieve them, we need to traverse the boundaries of triangles (pairs of consecutive vertices). This corresponds to calculating relation TE • While we extract the edges of the triangulation, we can calculate EV, ET, and EE • Calculating vertex-based relations (VT, VV, VE) involves traversing the entire data structure: O(n) • To avoid this, often this data structure is augmented with relation VT* (i.e., for each vertex v, we store one of the triangles that have v on their boundary)

More Related