google maps projection, and how to use it for clustering

Post on 05-Dec-2014

14.124 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

How Google presents the world with Google Maps, and what problems and opportunities that brings to developers. Offers an introduction to map projections and their consequences.

TRANSCRIPT

Google Maps Projection

And how to use it for clustering

Me = Lode Blomme

Software Engineer @ RouteYou

Blog: http://blog.lodeblomme.be

Twitter: http://twitter.com/lodeblomme

LinkedIn: http://www.linkedin.com/in/lodeblomme

RouteYou

Products :

• Community website: http://www.routeyou.com

• Online recreational route planning

• Maps for outdoor navigation for Garmin devices

Elevator Pitch : http://www.techcrunch.com/2008/10/24/elevator-pitch-friday-routeyou-makes-it-easy-to-find-the-perfect-driving-hiking-or-biking-route/

GOOGLE

I presume everybody knows Google?

MAP PROJECTION

Any method of representing the surface of a sphere on a plane

Map Projection

(pseudo)cylindrical

(pseudo)conical

azimuthal

hybrid

AREASHAPEDIRECTIONBEARINGDISTANCE SCALE

Map projections can preserve one or more of the earth's properties, though not all of them simultaneously

Lambert Conformal Conic Projection

Cylindrical Projection

Cylindrical Equal-Area Projection

Mercator Projection

Google Maps : Zoom Level 0

256 px

256 px

Google Maps : Zoom Level 1

512 px

Google Maps : Zoom Level 1

Google Maps : Zoom Levels

0 • 1 tile (2(0*2)) 256 x 256 pixels = 65 536 pixels

1 • 4 tiles (2(1*2)) 512 x 512 pixels = 262 144 pixels

2 • 16 tiles (2(2*2)) 1024 x 1024 pixels = 1 megapixel

...

17 • 17 179 869 184 tiles (2(17*2)) 33.5 x 33.5 megapixels = 1 122 megapixels

...

19 • 274 877 906 944 tiles (2(19*2)) 134 x 134 megapixels = 18 000 megapixels

COORDINATE SYSTEMS

Assigning an n-tuple of numbers to each point in an n-dimensional space

Spherical Coordinate System

Cartesian Coordinate System

WGS 84 PIXELS

Everybody knows WGS 84 and pixels

Mercator Projection : The Math

$x =

($radius * deg2rad($lon)) - $falseEasting

$y =

(($radius / 2.0 * log((1.0 + sin(deg2rad($lat))) / (1.0 -sin(deg2rad($lat))))) - $falseNorthing) * -1

Radius

256 px

256 px

$tiles = pow(2, $zoom); $circumference = 256 * $tiles;$radius = $circumference / (2 * pi());

Radius

512 px

False Easting & False Northing

256 px

256 px

$falseEasting = -1.0 * $circumference / 2.0;$falseNorthing = $circumference / 2.0;

False Easting & False Northing

X : 0Y : 0

X : 1Y : 0

X : 0Y : 1

X : 1Y : 1

CLUSTERING

Partitioning of a data set into subsets, in which the data share some common trait - often proximity according to some defined distance measure

HAPPY ENDING

I thought we had a moment there

Scale

Scale

top related