27
DEVELOPMENT AND IMPLEMENTATION OF A NEW WEB MAPPING SYSTEM ARCHITECTURE FOR ARCTIC REGION Presenter: Fanny Tsai [email protected] Supervisor: Dr. Steve Liang [email protected] Date: Oct. 26, 2012 GeoSensor Web Lab Department of Geomatics Engineering Schulich School of Engineering University of Calgary GEOIDE SSII#109 1

DEVELOPMENT AND IMPLEMENTATION OF A NEW WEB … SSII109.pdf · 2012-10-26  · GEOIDE SSII#109 and TecTerra. Title: GEOIDE SSII#109 Author: Fanny Tsai Created Date: 11/7/2012 12:25:25

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

  • DEVELOPMENT AND IMPLEMENTATION OF

    A NEW WEB MAPPING SYSTEM

    ARCHITECTURE

    FOR ARCTIC REGION

    Presenter: Fanny Tsai [email protected]

    Supervisor: Dr. Steve Liang [email protected]

    Date: Oct. 26, 2012

    GeoSensor Web Lab

    Department of Geomatics Engineering

    Schulich School of Engineering

    University of Calgary

    GEOIDE SSII#109

    1

    mailto:[email protected]:[email protected]

  • 2

    Outline

    • Introduction of our web mapping system

    System requirements

    System architecture

    Implementation

    Use cases

    Demonstration

    • Future works

    Implementation of YorkU’s projection

    Refine basic functions

    Intelligent map projection selection system

  • 3

    System Requirements

    • Objective: A polar-region-focused

    web mapping system to store and

    present pre-rendered geographic

    information.

    ✓ Can be accessed by most web

    browsers.

    ✓ Be able to switch between

    different projections easily.

    ✓ Be able to rotate the map.

    ✓ Short response time

  • 4

    System Architecture

    Client Server Data

    Tile Maker

  • Implementation

    • Client –

    Web page: JavaScript

    Web mapping framework: Bing Maps API

    HTML styling: Twitter Bootstrap

    • Server –

    Web server: Java Servlet / Apache Tomcat

    5

  • Implementation – cont’d

    • Custom maps: polar-centered

    projections

    - Lambert azimuthal equal area

    - Azimuthal equidistant

    - Orthographic

    - Stereographic

    - Gnomonic

    6

    Map

    Mercator projection

    Re-project to polar projections

    (ArcGIS)

    For each projection, rotate 30

    degrees each time to generate 12

    maps with different rotation

    (Matlab)

    Cut each projection/rotation map

    into tiles by following

    Bing Maps tile structure

    (Matlab)

    Map Tiles

  • 7

    Mercator

    (a) Azimuthal Equidistant (b) Lambert Azimuthal Equal Area

    Polar Projection

    ArcGIS

  • 8

    Bing Maps Tile System

    • Map is composed by tiles of

    256*256 pixels each.

    • To optimize the indexing and

    storage of tiles, the two-

    dimensional tile XY

    coordinates are combined into

    one-dimensional strings called

    quadtree keys, or

    “quadkeys” for short.

    • Each index contains 2

    information:

    ✓particular level of detail

    ✓parent index

    http://msdn.microsoft.com/en-us/library/bb259689.aspx

    http://msdn.microsoft.com/en-us/library/bb259689.aspxhttp://msdn.microsoft.com/en-us/library/bb259689.aspxhttp://msdn.microsoft.com/en-us/library/bb259689.aspx

  • Custom Tile Hierarchical

    Directory Structure

    9

    Projection

  • Request / Response

    10

    Client creates request for server request request

    tiles tiles

    StartGet view center

    of the viewport

    Get BBOX

    of the viewportGet required tiles

    Quadkey

    Projection

    Rotation

  • Use Cases

    • Browsing

    Switch to different projection

    Rotate map

    Challenge: re-calculate view center

    • Upload shapefile and display

    11

  • 12

    Coordinate System

    Every calculation was done based on

    image coordinate system (pixel)

  • 13

    Use Case - Switching Between

    Different Projections

  • 14

    (Lat, Long)

    Projection1 Projection2

    (Easting1, Northing1)

    Projection3

    (Easting2, Northing2)

    (Easting3, Northing3)

  • 15

    Solution

  • Why Is Rotation Important?

    16

    Where’s north?

  • 17

  • Rotation

    18

    Rotate 30 degrees

  • 19

    Use Case - Rotation

  • 20

    Solution• Calculation based on image

    coordinate (pixel)

    ‣ Get North Pole’s pixel coordinate in current view

    (the origin of coordinate is

    current view center)

    ‣ Set North Pole as the origin

    of pixel coordinate system

    ‣ Calculate new view center

    • x' = x cos(rotation) - y sin(rotation)

    • y' = x sin(rotation) + y cos(rotation)

  • 21

    USER

    Client

    Parse shapefile

    Server

    Data String (JSON)

    Shapefile

    Create JSON string

    Create shapefile object

    (Layer)

    Display

    Reproject

    Rotate

    Shapefile

  • Necessary Files For Our

    System

    Main file: XXX.shp

    Index file: XXX.shx

    dBASE table: XXX.dbf

    Projection file: XXX.prj

    The uploaded file format

    zip file

    WGS84 projection

    Shapefile has to be packed as

    a ZIP file and

    without folders.

    http://converter.mygeodata.eu/vector

    22

    http://converter.mygeodata.eu/vector

  • 23

    DEMONSTRATIONURL: http://tsai.geocens.ca:8080/TileServer/

    http://tsai.geocens.ca:9182/TileServer/

  • 24

    Summary

    • We proposed an architecture which serves a good

    platform for public/organizations that need to

    share/display their polar region data.

  • 25

    Future Works

    • Implementation of YorkU’s projections (in progress)

    • Refine basic functions

    Layer manager

    Handle attribute data of uploaded shapefile

    Adopt input data with other projections

    • Intelligent map projection selection system

  • Intelligent Map Projection

    Selection System

    • Problem statement:

    There are many map projections but it is difficult

    for amateur to choose the most suitable one

    regarding scale, geometry, application, etc..

    • Objective

    To provide a knowledge-based recommendation

    system for map projection selection.

    26

  • 27

    Questions and Discussions

    This research is sponsored by

    GEOIDE SSII#109 and TecTerra