3D Spatial Analysis

Spatial Analysis (3D)
CS 128/ES 228 - Lecture 12b
1
When last we visited…
CS 128/ES 228 - Lecture 12b
2
Buffering – another tool

Buffering (building
a neighborhood
around a feature)
is a common aid
in GIS analysis
CS 128/ES 228 - Lecture 12b
3
Using Buffers to Select
•Select the
features
•Save the features
as a layer
•(Export)
CS 128/ES 228 - Lecture 12b
4
Putting it all together

Siting a nuclear waste dump




Build Layer A by selecting only those areas
with “good” geology (good geology layer)
Build Layer B by taking a population density
layer and reclassifying it in a boolean (2valued) way to select only areas with a low
population density (low population layer)
Build Layer C by selecting those areas in A
that intersect with features in B (good geology
AND low population layer)
Build Layer D by selecting “major” roads from
a standard roads layer (major roads layer)
CS 128/ES 228 - Lecture 12b
5
Siting the Dump, Part Deux




Build Layer E by buffering Layer D at a
suitable distance (major roads buffer layer)
Build Layer F by selecting those features from
C that are not in any region of E (good
geology, low population and not near major
roads layer)
Build Layer G by selecting regions that are
“conservation areas” (no development layer)
Build Layer H by selecting those features from
F that are not in any region of G (suitable site
layer)
See also: Figure 6.9, p. 121
CS 128/ES 228 - Lecture 12b
6
On to 3-D
CS 128/ES 228 - Lecture 12b
7
Some (More) GIS Queries
How steep is the road?
 Which direction does the hill face?
 What does the horizon look like?
 What is that object over there?
 Where will the waste flow?
 What’s the fastest route home?

CS 128/ES 228 - Lecture 12b
8
Types of queries
Aspatial – make no reference to
spatial data
 2-D Spatial – make reference to
spatial data in the plane
 3-D Spatial – make reference to
“elevational” data
 Network – involve analyzing a
network in the GIS (yes, it’s spatial)

CS 128/ES 228 - Lecture 12b
9
3-D Computational
Complexity
1984
1997
technology
technology
CS 128/ES 228 - Lecture 12b
10
Approximations



In the vector model, each object
represents exactly one feature; it is
“linked” to its complete set of attribute
data
In the raster model, each cell represents
exactly one piece of data; the data is
specifically for that cell
THE DATA IS DISCRETE!!!
CS 128/ES 228 - Lecture 12b
11
Surface Approximations
With a surface, only a few
points have “true data”
The “values” at other points
are only an approximation
The are determined
(somehow) by the
neighboring points
The surface is CONTINUOUS
Image from: http://www.ian-ko.com/resources/triangulated_irregular_network.htm
CS 128/ES 228 - Lecture 12b
12
Types of approximation

GLOBAL or LOCAL


Does the approximation function use all
points or just “nearby” ones?
EXACT or APPROXIMATE

At the points where we do have data, is
the approximation equal to that data?
CS 128/ES 228 - Lecture 12b
13
Types of approximation

GRADUAL or ABRUPT


Does the approximation function vary
continuously or does it “step” at
boundaries?
DETERMINISTIC or STOCHASTIC

Is there a randomness component to
the approximation?
CS 128/ES 228 - Lecture 12b
14
Display “by point”
• Notice the
(very) large
number of data
points
•This is not
always feasible
•“Draw” the dot
Image from: http://www.csc.noaa.gov/products/nchaz/htm/lidtut.htm
CS 128/ES 228 - Lecture 12b
15
Display “by contour”
• More feasible, but
granularity is an issue
• Consider the
ocean…
• “Connect” the dots
Image from: http://www.csc.noaa.gov/products/nchaz/htm/lidtut.htm
CS 128/ES 228 - Lecture 12b
16
Display “by surface”
• Involves
interpolation of data
• Better picture, but
is it more accurate?
• “Paint” the
connected dots
Image from: http://www.csc.noaa.gov/products/nchaz/htm/lidtut.htm
CS 128/ES 228 - Lecture 12b
17
Voronoi (Theissen) polygons
as a painting tool
Points on the
surface are
approximated
by giving them
the value of the
nearest data
point
 Exact, abrupt,
deterministic

CS 128/ES 228 - Lecture 12b
18
Smooth Shading


Standard (linear)
interpolation
leads to smooth
shaded images
Local, exact,
gradual,
deterministic

X
1-
w
y
W = *y + (1-)*x
CS 128/ES 228 - Lecture 12b
19
TINs – Triangulated
Irregular Networks


Connect
“adjacent” data
points via lines
to form
triangles, then
interpolate
or
Local, exact,
gradual,
possibly
stochastic
Image from: http://www.ian-ko.com/resources/triangulated_irregular_network.htm
CS 128/ES 228 - Lecture 12b
20
Simple Queries?

The descriptions thus far
represent “simple” queries, in
the same sense that length,
area, etc. did for 2-D.

A more complex query would
involve comparing the various
data points in some way
CS 128/ES 228 - Lecture 12b
21
Slope and aspect
A natural question with elevational
data is to ask how rapidly that data
is changing, e.g. “What is the
gradient?”
slope
 Another natural question is to ask
what direction the slope is facing,
i.e. “What is the normal?”
aspect

CS 128/ES 228 - Lecture 12b
22
What is slope?

The slope of a curve
(or surface) is
represented by a
linear approximation
to a data set.

Can be solved for
using algebra and/or
calculus
Image from: http://oregonstate.edu/dept/math/CalculusQuestStudyGuides/vcalc/tangent/tangent.html
CS 128/ES 228 - Lecture 12b
23
Solving for slope


In a raster world, we use the
equation for a plane:
z = a*x + b*y + c
and we solve for a “best fit”
In a vector world, it is usually
computed as the TIN is formed (viz.
the way area is pre-computed for
polygons)
CS 128/ES 228 - Lecture 12b
24
Our friend calculus

Slope is essentially a first derivative

Second derivatives are also useful
for…
convexity computations
CS 128/ES 228 - Lecture 12b
25
What is aspect?
Aspect is what
mathematicians
would call a
“normal”
 Computed
arithmetically
Shows what
from equation
direction the
of plane
surface “faces”

Image from: http://www.friends-of-fpc.org/tutorials/graphics/dlx_ogl/teil12_6.gif
CS 128/ES 228 - Lecture 12b
26
Matt Hartloff, ‘2000

Delaunay “Sweep” algorithm uses
Voronoi diagram as first step
CS 128/ES 228 - Lecture 12b
27
Jackson Hole, WY
…then shades result based upon slopes and aspects
CS 128/ES 228 - Lecture 12b
28
Visibility


What can I see from where?
Tough to compute!
CS 128/ES 228 - Lecture 12b
29
When is an Elevation NOT
an Elevation?

When it is rainfall, income, or any
other scalar measurement

Bottom Line: It’s one more
dimension (any dimension!) on top
of the geographic data
CS 128/ES 228 - Lecture 12b
30
Network Analysis

Given a network
What is the shortest path from s to t?
 What is the cheapest route from s to
t?
 How much “flow” can we get through
the network?
 What is the shortest route visiting all
points?

Image from: http://www.eli.sdsu.edu/courses/fall96/cs660/notes/NetworkFlow/NetworkFlow.html#RTFToC2
CS 128/ES 228 - Lecture 12b
31
Network complexities
Shortest path
Easy
Cheapest path
Easy
Network flow
Medium
Traveling
salesperson
Exact solution is
IMPOSSIBLY
HARD but can be
approximated
All answers learned in CS 232!
CS 128/ES 228 - Lecture 12b
32
Conclusions

A GIS without spatial analysis is like a car
without a gas pedal.
It is okay to look at, but you can’t do anything with it.

A GIS without 3-D spatial analysis is like a car
without a radio.
It may still be useful, but you wish you had the “luxury”.
CS 128/ES 228 - Lecture 12b
33