Title: CPSC 335 Geometric Data Structures in Computer Modeling and GIS
1CPSC 335 Geometric Data Structures in Computer
Modeling and GIS
Dr. Marina L. Gavrilova
Assistant Professor Dept of Comp. Science,
University of Calgary, AB, Canada, T2N1N4
2Topics
- Survey of applications of computational geometry
to modeling and simulation of natural processes
and GIS - Brief introduction to Voronoi diagrams, ROAM and
progressive meshes - Application to terrain modeling
- Application to image processing and visualization
3Computational geometry
- Originated in 1960 with invention of computers
- Describes algorithms and data structures for
solving geometric problems with the use of
computational methods - Confirmed by practical implementation of methods
4Areas of applicability
- A spectrum of computational geometry
applications - Biology
- Molecular dynamics
- GIS (Geographical Information Systems)
- Physics
- Mechanics
- Chemistry
The Monter Carlo model of a lipid bilayer in
water, 8666 atoms
5Problems in CG
- Problems that are addressed include
- computing properties of particles arrangements,
such as their volume and topology, in a general
d-dimensional space - testing intersections and collisions between
particles - finding offset surfaces (related to questions of
accessibility of subregions) - Solving nearest-neighbours problems
- Predicting time of the next collision between
particles undergoing continuous motion - Updating data structures accurately and
efficiently - Visualizing algorithms for rendering models
6Subjects of study in CG
- Spatial objects lines, polygons, planes
- Operations stored, displayed, manipulated,
queried - Methods querying algorithms, optimization
algorithms, visualization methods
7Topological relationships
- Adjacent
- Overlapping
- Disjoined
- Inclusion
- Neighbor
- Closest neighbor
8Long ago
- Jorge Luis Borges
- "Map of a region was a size of a city,
- Map of an Empire was a size of a Province"
9Now
- Digital maps of geographical objects
- spatial, or geometric attribute (shape, location,
orientation, size) in 2D or 3D - non-spatial attribute (descriptive)
10Digital maps
- Geographical object
- spatial, or geometric attribute (shape, location,
orientation, size) in 2D or 3D - non-spatial attribute (descriptive) statistic,
population, force, velocity, etc.
11What computer scientists are looking for
- Not only a goal, but a process itself!
- Data structure both inherent and coherent model
properties, attributed geometric data structures - Ex Surface representation
- Algorithms efficient, reliable, easy to update,
portable, easy to implement, possible to visualize
12Commonly used data structures in GIS
- Space partitioning
- Planar subdivisions (regular and irregular)
- Tree-based data structure (segment trees, k-d
trees, hierarchical octrees) - Voronoi diagrams
- Triangulations
13Voronoi diagram
- Given a set of N sites (points) in the plane or a
3D space - Distance function d(x,P) between point x and site
P is defined according to some metric - Voronoi region Vor(P) is the set of all points
which are closer to P than to any other site - Voronoi diagram is the union of all Voronoi
regions
14Delaunay triangulation
The generalized Delaunay tessellation (DT) is
the data structure, dual to the generalized VD,
containing proximity information for a set S.
- Definition 3. A Delaunay triangulation (DT) is
the straight-line dual of the Voronoi diagram
obtained by joining all pairs of sites whose
Voronoi regions share a common Voronoi edge
Delaunay 34. - Follows from the definition
- If two Voronoi regions Vor(P) and Vor(Q) share an
edge, then sites P and Q are connected by an edge
in the Delaunay triangulation - If a Voronoi vertex belongs to Vor(P), Vor(Q) and
Vor(R), then DT contains a triangle (P,Q,R)
15VD and DT (for circles)
16Delaunay triangulation in 3D
17Delaunay triangulation in 3D, extra point
18Distances
- Distances Given a set of spherical objects
(sites) S in Rd. Point x from Rd is the nearest
neighbor of P from S iff d(x,P) lt d(x,Q), Q
from S. - Euclidean metric d(x,P) d(x,p) - rp
- Manhattan metric d(x,P) d(x,p) - rp x1 -
p1 xd - pd-rp - Supremum metric d(x,P) d(x,p) - rp max(x1 -
p1xd - pd) - rp - Laguerre geometry d(x,P) d(x,p)2 - r 2p (x1 -
p1)2(xd- pd)2 - r2p
19Metric spaces in 2d
L1
L2
L?
20Power and Euclidean Voronoi diagrams biological
modeling
Euclidean bisector
Power bisector
Power diagram and Delaunay triangulation
Euclidean diagram and Delaunay triangulation
21Manhattan and Supremum VD city planning
Manhattan bisectors
Supremum bisectors
Manhattan diagram and Delaunay triangulation
Supremum diagram and Delaunay triangulation
22Example of Supremum VD and DT
- The supremum weighted Voronoi diagram (left) and
the corresponding Delaunay triangulation (right)
for 1000 randomly distributed sites .
23Metric spaces are used
- In computer modeling
- For optimization
- For point patter analysis
- For autocorrelation analysis
243D Terrain Rendering
- Involves transformation of GIS data sources into
a 3D coherent system - Convert 2D map layers to 3D
- Using rendering methods to project the 3D data
back to 2D - Manipulate Camera and animation methods to obtain
perspective view
25Sourcing data from real world
26DEM Digital Elevation Models
- Finite representation of an abstract modeled
space. - Represent a function of 2D space temperature,
pressure, etc. - Exist in sampled points in space, other points
obtained by interpolation.
27DEM Digital Elevation Model
- Contains only relative Height
- Regular interval
- Pixel color determine height
- Discrete resolution
X
Kluanne National Park
Y
28TIN Triangulated Irregular Network
- TIN is a triangular partitioning of space.
- Set of points P, edges V and triangles T is
stored in a quad-edge data structure.
29Tessellation in terrain modeling
- Tessellation is a cellular decomposition of the
plane (space).
30Non-Photo-Realistic Real-time 3D Terrain
Rendering
- Uses DEM as input of the application
- Generates frame coherent animated view in
real-time - Uses texturing, shades, particles etc. for layer
visualization
31Real-time terrain rendering
- Uses a graphics Engine/Library
- Central focus on efficient mesh representation
- View coherence and frame rate constancy
- Limited/Variable Level of Detail
- Speed optimization
- Representing layer data as textures or particles
32Converting Height field data into 3D topological
mesh
- Pixel value (z) is used as Height Map
- Vertices are generated as points in 3D
- A Mesh is triangulated
X
200
255
150
100
Y
100
255
255
200
200
150
200
100
33Mesh Representation
- Goals
- Speed
- Quality
- Constancy
- Representations
- Progressive Meshes
- ROAM Real-time Optimally Adapting Mesh
34Progressive Meshes
Developed by Hugues Hoppe, Microsoft Research
Inc. Published first in SIGGRAPH 1996.
35How PM works
36ROAM
- Can Subdivide when more details necessary
- Merge Split Queue
- Tree Structured
37Photo Realistic 3D Terrain
38Conclusions
- Computational geometry methods find a variety of
applications in GIS and other areas for
underlying data structures, algorithm
implementation, querying, visualization,
statistical analysis and optimization.