Marko Tintor Danica Porobić Microsoft Development Center Serbia.

Slides:



Advertisements
Similar presentations
Why Maps Can you use a square globe?
Advertisements

Eliseo Clementini University of L’Aquila 2 nd International Workshop on Semantic and Conceptual Issues in GIS (SeCoGIS 2008) – 20.
The Ellipsoid Faculty of Applied Engineering and Urban Planning
A guide to coordinate systems, datums, projections, and geoids.
Extended Gaussian Images
Map Projections. Georegistered ? Representing a curved surface in a flat plane Locating that plane on the earth 3 issues –sphere –datum –projection.
Map Projections Introduction © 2005, Austin Troy.
Projections.
Map Projections.
Map Projections and Georeferencing
Two measurements are used to describe locations around the world. Two measurements are used to describe locations around the world. Latitude: distance.
Map Projections & Coordinate Systems
Your Data Any Place, Any Time Delivering Location Intelligence with Spatial Data.
Coordinate Systems, Datums and Map Projections D’Arcangelis 11/9/09
WFM 6202: Remote Sensing and GIS in Water Management © Dr. Akm Saiful IslamDr. Akm Saiful Islam WFM 6202: Remote Sensing and GIS in Water Management Akm.
Topic 2 – Spatial Representation
Geog 458: Map Sources and Error January 18, 2006 Georeferencing.
Coordinate systems.
Map Projections Displaying the earth on 2 dimensional maps
Map Projection & Coordinate Systems
Definitions html://egsc.usgs.gov/isb/pubs/MapProjections/projections.html Azimuth —The angle measured in degrees between a base line radiating from a center.
GIS for Environmental Engineering
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
CORSE '07 Spatial Data Spatial data comes in many forms. So How does a GIS work with the data so that it can put the data in the right place on a map?
Cartography: the science of map making
Taking Microsoft SQL Server into the World of Spatial Data Management Milan Stojic, Michael Rys Program Managers
Mapping and Projections Web resources: Geographer’s Craft, Department of Geography, University of Colorado at Boulder - particularly Peter H. Dana’s part.
shops/gis/docs/projections.ppt.
Faculty of Applied Engineering and Urban Planning Civil Engineering Department Geographic Information Systems Spatial Referencing Lecture 4 Week 6 1 st.
GEOREFERENCING By Okan Fıstıkoğlu. GEOGRAPHIC COORDINATE SYSTEMS Geographic Coordinate System (GCS) uses a three dimensional spherical surface to define.
Taking Microsoft SQL Server into the World of Spatial Data Management Michael Rys Principal Program Manager Microsoft DBI324.
HOW GEOGRAPHERS LOOK AT THE WORLD. 5 THEMES OF GEOGRAPHY  1. Location : Where is it?  2. Place: What is it like?  3. Region : How are places similar.
Data Types Entities and fields can be transformed to the other type Vectors compared to rasters.
Map Projections Francisco Olivera, Ph.D., P.E. Srikanth Koka Department of Civil Engineering Texas A&M University.
Map Projections RG 620 Week 5 May 08, 2013 Institute of Space Technology, Karachi RG 620 Week 5 May 08, 2013 Institute of Space Technology, Karachi.
Cartography: the science of map making A Round World in Plane Terms.
LECTURE 3B – CHART PROJECTION. Introduction to Chart Projection  Usually we read chart in coordinate system.  A projected coordinate system is defined.
Map Projections Reference Globe Transformation Map Projection Reference Ellipsoid Sphere of Equal Area Geoid 3D-2D Transformation Process.
All maps will provide you with a Arrow indicating both truth North (the precise top axis of the earth’s spheroid) and a magnetic north which indicates.
Map Basics, partII GEOG 370 Christine Erlien, Instructor.
Introduction © 2005, Austin Troy. Map Projection © 2005, Austin Troy This is the method by which we transform the earth’s spheroid (real world) to a flat.
John Pickford IBM H11 Wednesday, October 4, :30. – 14:30. Platform: Informix Practical Applications of IDS Extensibility (Part 2 of 2)
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
Design of the Wisconsin County Coordinate System: Some Current Issues Al Vonderohe SIAC Presentation - October 27, 2004.
TECH 104 – Technical Graphics Communication Introduction to Engineering Graphics Communication.
The Round Earth to Flat Map: Map Projections for Designers SP 240 Cartography Alex Chaucer.
Map Projections Goal: translate places on the Earth (3D) to Cartesian coordinates (2D)
2.3: Modeling Earth’s Surface Fall Semester 2015.
Descriptive Geometry. Introduction  What is Descriptive Geometry? →It is the study of points, lines, and planes in space to determine their locations.
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Today: Cartographic Basics –Map scale, datums, projections, coordinate systems Goals of Map Use Raster and Vector Lab Two – Google Earth / El Paso County.
Geodesy, Map Projections and Coordinate Systems Geodesy - the shape of the earth and definition of earth datums Map Projection - the transformation of.
Map Projections RG 620 May 16, 2014 Institute of Space Technology, Karachi RG 620 May 16, 2014 Institute of Space Technology, Karachi.
DAT319 - Building Location-Aware Applications in SQL Server 2008: Introducing the Spatial Data Type Michael Rys Principal Program Manager SQL Server Engine,
Catalogs contain hundreds of millions of objects
Coordinate Systems and Map Projections
Map Projections RG 620 April 20, 2016
Spatial Referencing.
GEOGRAPHICAL INFORMATION SYSTEM
Overview Ellipsoid Spheroid Geoid Datum Projection Coordinate System.
A guide to coordinate systems, datums, projections, and geoids.
Map Projections.
MAP PROJECTIONS AND SCALE
Map Projections Displaying the earth on 2 dimensional maps
Lecture 3 Map Projections
A guide to coordinate systems, datums, projections, and geoids.
Map Projections Displaying the earth on 2 dimensional maps
Presentation transcript:

Marko Tintor Danica Porobić Microsoft Development Center Serbia

Spatial in SQL Server 2008 What is spatial about? Applications Types, operations and indexing Computation on Earth surface Numerical operations Set operations Projections and visualization 3D visualization tool Extensible projection framework Q/A

Traditional GIS Now Consumer Developing LOB Ubiquity

Customer-base management and development Environmental- related data impact, analysis, and planning Financial and economic analysis in communities Government-based planning and development analysis Market segmentation and analysis Scientific research study design and analysis Real-estate development and analysis

We’re providing vector support We’re targeting geospatial... Spatial data which is referenced to a location on the Earth Typically uses spherical coordinates or projected planar coordinates I’ll come back to this distinction in a moment...but, there is no restriction that the data is actually geospatial Only 2D for now (Geodetic is 2D)

Vector Points LineStrings Polygons (Areas, Regions) Raster Satellite Imagery Digitized Aerial Photos

Which roads intersect Microsoft’s main campus? SELECT * FROM roads WHERE

Flat maps are projections from the spheroid Small areas don’t distort too much Large areas do, so no good global projection Still very important for legislative and historical reasons conic secant projection

geography data type Geodetic (“Round Earth”) geospatial model Define points, lines, and areas with longitude and latitude Account for planetary curvature and obtain accurate “great circle” distances geometry data type Planar (“Flat Earth”) geospatial model Define points, lines, and areas with coordinates Use for localized areas or non-projected surfaces such as interior spaces

Planar (flat-earth) Supports legacy and legal mapping requirements: surveyors and the specialist GIS crowd Computationally simpler Conceptually more difficult for geospatial Geodetic (round-earth) Supports existing long-range mapping requirements: military, shipping, etc. Computationally more complex Conceptually simpler for geospatial

Relationships Intersects Touches Disjoint Constructions Intersection, Union, Difference Numeric Computations Distance, Length Area Special Operations Point in polygon Buffer Reduce

New type: geometry Built on the same infrastructure Geometry can store instances of various types Points Line strings Polygons Collections of the above Methods for computing Spatial relationships: intersects, disjoint, etc. Spatial constructions: intersection, union, etc. Metric functions: distance, area

Second type: geography Very similar interface to geometry Some methods have different semantics Most data commonly available user data is geodetic Anything expressed as latitude/longitude This is the type we expect most people to be interested in

Web Server Client Virtual Earth Service SQL Server

Spatial indexing is built into the query engine Grid-based quad-tree index structure

42.3

Indexed Operations g1.STIntersects(geometry2) = 1 g1.STTouches(geometry2) = 1 g1.STEquals(geometry2) = 1 g1.STWithin(geometry2) = 1 g1.STContains(geometry2) = 1 g1.STDistance(geometry2) < number No native support for nearest neighbor

Requirements: Locally: edge should appear straight Pair of points should define unique edge Edge should have differentiable parameterization Possible solution: Geodesic curves (shortest path between points) Not suitable for points that are not on surface Two points define more than one edge Computations are extremely difficult

Space of directions: Geographic coordinates of a point on the globe are defined by the direction of a vector that is normal to the surface of the globe at that point Space of directions – nonzero normal vectors Definition: An edge is the image under the Inverse Gaussian Mapping (IGM) of the short great circle arc on the sphere of directions between the unit normal vectors at its endpoints An edge is the image under the IGM of a line segment in the space of directions

Surface of rotational ellipsoid: Let (u,v,w) be normal at the surface of (x,y,z), so under IGM: Mapping is:

Great-circle arc on the sphere of unit normal vectors Edge on ellipsoid Linear parameterization of great circle arc’s chord Parameterization

Velocity vector: Length of an edge: Area: sum of integrals over edges Computation using Gauss Legendre quadrature Long edges broken into pieces

Spherical arcs projected to lines using gnomonic projections Boolean operations on sphere transform to their planar counterparts after projection Planar operations rely on geometric library from Windows Vista Gnomonic projection works for smaller objects Larger objects handled by tiled projection

Central projection from the origin to a plane that is tangent to the unit sphere The image of a polygon on sphere is a polygon in the plane Let C be the point of tangency Basis vectors: two mutually orthogonal unit vectors A and B, orthogonal to C Projection of vector U: V = U/U∙C Planar coordinates: (V-C)∙A and (V-C)∙B

Map the scene with simple projections onto four facets of the tetrahedron Affine projection along the axis into the plane

Building blocks Points LineStrings Polygons Points and LineStrings are easy to display But, how to display the polygons?

Even polygons with small number of vertices can have unintuitive shape

curved (spherical) surface polygons can have holes polygons can be non-convex polygons can be near / span over poles polygons can cross ±180 degrees meridian

Vector Subdivide the polygon until all parts are simple enough Raster Render the polygon to the texture and wrap that texture around sphere

Subdivide entire Earth into patches Render only the patches that are on the inside of the polygon Use smaller patches near the border of polygon

Completely inside On the border Completely outside

FUNC RenderPatch(patch, polygon) IF patch is INSIDE the polygon Render(patch) IF patch is ON BORDER of the polygon AND patch is not too small FOREACH piece IN Subdivide(patch) RenderPatch(piece, polygon) IF patch is OUTSIDE polygon ignore it

Triangle Easy to render Easy to subdivide Easy to tile

Start from octahedron Subdivide each triangle recursively

Sql Server Spatial data.aspx Microsoft Development Center Serbia Defining Edges on a Round Earth Michael Kallay, Microsoft Corporation ACM GIS ’07, Seattle, November 2007