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
© Copyright 2025 Paperzz