final report after defence

Upload: keven1894

Post on 30-May-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Final Report After Defence

    1/39

    Master Project Report

    A Framework for Integrating GIS Web Functions for

    Transportation Applications

    Prepared by:

    Boyuan Guan, Master StudentDepartment of Civil and Environmental Engineering

    Florida International University

    Miami, Florida 33174

    Email:[email protected]

    March 2009

    mailto:[email protected]:[email protected]:[email protected]
  • 8/14/2019 Final Report After Defence

    2/39

    Abstract

    In the past decade, transportation, like all the other fields, has undergone a tremendous changeaccompanying the continuous development of IT technology. Tools like Google, Yahoo, and

    other search engines, Google Map, Microsoft office, and ESRI Geographic Information System

    (GIS) products have become an indispensible part of transportation engineering and planning.More and more powerful online tools have been developed to help transportation analyst to

    handle different kinds of tasks such as data sharing, online analysis, data viewing over satellite

    images, and online video analysis. However, most of these tools are developed to serve a specific

    purpose and are not compatible with each other. Therefore, transportation planners currently facethe challenge of how to effectively manage these tools and integrate their functions into a single

    system.

    A Web GIS system designed to integrate as many functions as possible into a single platform can

    potentially solve the problem. For this purpose, a new method aimed at designing a framework

    for integrating various GIS Web Functions for Transportation Applications is being explored inthis study. The framework should be designed to enable convenient transportation data sharing

    and online data analysis as well as providing useful interfaces of other Web GIS System such as

    searching, KML file exporting, satellite images, Street View, live traffic, online video, etc. Anew pattern to design transportation web GIS system by using up-to-date technology like spatial

    geo-database, tiling and caching map, ArcGIS Server JavaScript extension, Google Maps APIs,

    Visual Earth APIs, AJAX, etc. will be introduced and discussed in this report.

    Key words: Web GIS, ArcGIS Server, JavaScript Extension, AJAX, Web Service,

    Transportation Data Sharing, Google Maps APIs, Visual Earth APIs

  • 8/14/2019 Final Report After Defence

    3/39

    TABLE OF CONTENTS

    1 Introduction .................................................................................................................................1

    Background ...................................................................................................... 1

    Problem Statement .......................................................................................... 2

    1.3 Objective .................................................................................................... 4

    2 Methodologies ..............................................................................................................................5

    2.1 Discussion of Possible Solutions ................................................................. 5

    2.2 Framework Design ..................................................................................... 5

    3 System Enhancements and Realization ....................................................................................8

    3.1 Server-Side Design Functions ..................................................................... 8

    3.2 Client-Side Enhancement ......................................................................... 14

    3.3 Communication between the Server and Client Sides ............................. 21

    ........................................................................................................................................................ 22

    4 User Applications ......................................................................................................................23

    4.1 Original Map Data with Metadata Download ........................................... 23

    4.2 Geo-database and Shape Files with Multiple Coordinate Systems

    Download ...................................................................................................... 25

    4.3 KML File Export ........................................................................................ 26

    4.4 Verification of Area Types and Geometric Conditions ............................. 26

    4.5 Street View Function ................................................................................ 28

    4.6 Inter-System Locating .............................................................................. 28

    4.7 Geocoding Function ................................................................................. 30

    4.8 Live Traffic ............................................................................................... 30

    5 Summary and Conclusions ...................................................................................................... 32

    6 Future Work ..............................................................................................................................34

    6.1 New Competitor in the GIS Arena: Microsoft ............................................ 34

    6.2 Reusable Components Design and Web Services ....................................35

    References .....................................................................................................................................36

  • 8/14/2019 Final Report After Defence

    4/39

    1 Introduction

    Background

    The various software applications useful in analyzing and modeling transportation systems

    require the management of a huge amount of different spatial data (e.g., traffic data, land usedata, social economic data, network data, etc.). As a tool to acquire, store, and process spatial

    data, Geographic Information System (GIS) applications can provide these capacities fortransportation analysis. An application tool in an internet server environment, combined with

    GIS, can be used to disseminate such spatial information to dispersed users effectively,

    efficiently, and in a timely manner.

    Because both the data and GIS analysis software can be stored on the server, web-based solution

    for Transportation GIS is now widely accepted and has become prevalent in many transportation

    fields. The most prominent advantage of a Transportation Web GIS is the convenience of sharingand displaying data. It also allows online GIS analysis features like intersect, buffer,

    measure, indentify, retrieve attribute data, and so on. All of these relieve the transportation

    analyst from the inconvenience of having to access data through ArcGIS software since they areable to access the GIS application from their browsers at no cost.

    Traditional Transportation Web GIS design is based on an ArcGIS Server Framework and filesystem data access method of the operating system on a single server. Under this design pattern,

    the server takes almost all the load. Data access actions are based on operating systems file

    system which is low efficient compare to database system. Therefore, the optimization of the

    Transportation Web GIS will be accomplished through the following steps:

    Store data in a geo-spatial database (SQL Server) through ArcSDE.

    Use tiling and caching map technology to reduce the time on generating images.

    Increase the speed by creating a personal website and using dynamic map source to

    reduce the load on the server.

    Use AJAX to improve the user experience.

    Use web services for public functions that can be calculated separately on another server.

    Another approach to improve the performance of the Transportation Web GIS is to integratefunctions from other commercial Web GIS like Google Map, Visual Earth. Functions from these

    commercial Web GIS Systems are known to be stable and to get results quickly. All of these

    functions can be realized throughapplication programming interface (API) written in JavaScript,

    which work from the client side so that no extra load is added to the server. It also offerspractical functions like satellite images, street views, live traffic information, and geo-coding,

    which is not easy to achieve through ArcGIS Server but can be achieved through JavaScript

    Extensions.

    As the above discussion of whole frame of Web GIS shows, a new design pattern which can

    integrating more Web GIS functions can indeed improve the performance of traditionalTransportation Web GIS.

    1

  • 8/14/2019 Final Report After Defence

    5/39

    Problem Statement

    Web-based Transportation GIS [1] is a complex system that needs many different technologies

    such as database, web transmission, client side display, Geo-data manipulation program to

    realize. Generally speaking, a Web GIS is composed of four parts:

    A database that can store both logical and special data like SQL Server, Oracle, or DB2.

    A server side program that responds to logical functions (basic page request like page

    reload, log in, log out, etc.) and GIS analysis functions (like display different layers,intersect, buffer, which client-side programs cannot handle).

    A client-side program that displays the results from server calculations, collects user

    requests and posts them back to the server, realizes the function of AJAX and Base Map

    API extensions like Google Maps APIs or Visual Earths APIs.

    A set of interfaces from other Web GIS that may provide public functions that are not

    easy to achieve through single small-scale GIS.

    Although Web GIS has existed for almost a decade, some bottleneck problems still need to besolved, including:

    The speed of the system.

    The requirement for different types of data format.

    The User-friendly level of interface.

    The reusability compatibility of public function components.

    The speed of a Web GIS is restricted by three factors: the program speed on the applicationserver, the transfer speed of the network, and the program speed on the client machine. The

    efficiency of the server-side program is always the first thing that should be considered by a

    framework designer. The most time consuming part of the server-side program is spatial datasearching and manipulating. This means if the speed of reading and writing spatial data can beimproved, the speed of whole system will be increased.

    The speed of the Web GIS is also determined by the mapping application; because the keyfeature of the Web GIS is the map displayed on the web page, this is an important bottleneck. In

    an ArcGIS framework, all the maps are published separately from the website, which means

    when a user request to open a web GIS system, the server should respond in two ways. One is toopen the web page and the other to open the map, which is published on the server as a map

    service. It is very common that the map can be displayed after experiencing a long delay even

    after the web page has already been loaded. The more spatial data the map contains, the more

    processing time is needed to load the map. The automatic image generating process causes thisphenomenon. For a regular map service, all the images displayed on the page will generate

    automatically by the specific query from the client side. The advantage of this feature is the

    flexibility in customizing the display styles; for example, users can decide which layers theywant to be visible or not.

    The disadvantage of this feature, on the other side, is the time it takes to display the map. Thesolution for this problem is to create a cached map service consisting of tiled layers so that all the

    2

  • 8/14/2019 Final Report After Defence

    6/39

    images are pre-generated before the user request. Although the drawback to this solution is that

    not all the layers can be customized, it is worth using this alternative for the first page load

    action. When the users zoom to their study area, the program can change the map service feature.Because much less spatial data are generated when maps zoom in to a specific area, the speed of

    the service will not be affected that much.

    Current Web GIS programs face a second bottleneck in terms of the data variety in both

    displaying styles and data formats. For displaying styles, most of the existing systems only

    provide a specific map layer that contains predefined information like traffic signal information,intersection information, bus stop information, and so on. However, analysts may also need

    additional base information, like land use, geometric design, and facility type. These types of

    data may not need to be very precise but should cover every location of the study area.

    Integrating Google Satellite Map and Street View function through Google Map APIs andArcGIS Server 9.3 JavaScript extension can help to provide these data. Another requirement in

    transportation analysis is the variety of data formats like shape files, layer files, geo database

    files, excel files etc., which all have different coordinate systems. The ArcGIS Server functions

    can be used to convert and coordinate these data formats.

    Another weak point is that the user interface is not user-friendly enough, despite the 2005appearance of a revolutionary new technology called AJAX, which was first used and named by

    Google. This is not only a technology (actually, it is just a bundle of old technology with a new

    method), but a change in attitude towards designing online systems. The epiphany of this attitude

    was to separate the data communicating between the client side and the server side from thedisplayed page. In other words, when the user clicks the button or link (sends a request to

    server), the request should be sent to the server without any refresh or reload on the users page.

    This idea is widely accepted now after three years and many AJAX frameworks. Before ArcGIS9.3 was released, ArcGIS Server has its own AJAX framework, which is very powerful.

    However, the AJAX framework may generate some conflict with the .NET framework when we

    develop our own program through the .NET platform. Thus, in the new 9.3 ArcGIS Server, theESRI AJAX framework which was default framework in ArcGIS 2.0 becomes optional. Instead,

    the Microsoft AJAX framework called ALTAS is the default framework. This means a user-

    friendly interface can be developed by using ALTAS features like the drag/drop panel, autocomplete dropdown list, and animate panel.

    The last problem that must be solved is how to manage the reusable function for a distributed

    system. Distributed Geographic Information System (DGIS) [2] is becoming a trend for thefurther development of Web GIS programs. To conform to this trend, designing our system into

    reusable components is reasonable and required. To do so, we used Web Service. Web Service is

    defined by the W3C as a software system designed to support interoperable machine-to-machine interaction over a network. To be more generally, Web services are published

    interfaces provided by other online systems which can realize different functionality requests

    from different users in different systems.

    In addition to the technologies discussed above, the other program trick is creating personal

    websites for users which can display only the study area for them instead of showing the

    statewide map data every time. Therefore, the amount of data need to be proceeded in the same

    3

  • 8/14/2019 Final Report After Defence

    7/39

    time are reduced and thus enhance the speed of the system.

    1.3 Objective

    The overall objective of this research is to improve and enhance the performance of the

    Transportation Web GIS by using several different new technologies. Detail information of these

    technologies will be discussed in chapter 2. Specifically, the new framework can bring two majorimprovements for Web GIS. First, it increases the speed of displaying, processing, and data

    transferring of the system. Second, it extends the functions to satisfy more requirements that

    commonly appear during transportation analysis.

    Performance is a very important factor for a Web GIS, an aspect with plenty of room to enhance.

    The new framework will focus on data manipulation methods, map services management

    methods, map source retrieval methods, and functionality publishing methods to improve the performance. New technologies like spatial databases, cached map services, AJAX, Web

    Service, and dynamic map source as well as a few program tricks will be used in the new

    framework. After applying these technologies, maps will display much faster, the experience willbe friendlier for the user, and data transaction time will be shorter.

    Functionality is already very powerful in the ArcGIS Server. However, some users are alreadygetting used to the tools that commercial Web GIS like Google Map can provide. As summarized

    in Table 1.1, Google Map has several advantages compared to ArcGIS Server System. What is

    more, some functions like satellite image-based maps require a huge budget for data collection,which is almost impossible for any single transportation project. For these reasons, the functions

    of a traditional Web GIS need to be extended for transportation analysis. In the new framework,

    the extension is realized by using Google Maps APIs, new features from ArcGIS Server 9.3, and

    some APIs from other commercial systems. After applying these new functions, the system willhave a base map with satellite images, an embodied search engine from Google Map, an

    embodied Street View from Google Map, and the accessibility for the whole set of interfaces

    provided by Google

    Table 1.1 Comparisons of Google Map and ArcGIS Server

    SPEED DATA FUNCTIONS STABILITY

    Google Maps Fast Plentiful and

    Various

    Basic Functions Stable

    ArcGIS

    Server

    Slow Precise Basic and Advanced GIS

    Functions

    Unstable

    4

  • 8/14/2019 Final Report After Defence

    8/39

    2 Methodologies

    2.1 Discussion of Possible Solutions

    As discussed in the previous section, four bottlenecks must be conquered to improve the

    Transportation Web GIS: the speed of the system; the different data formats; the user-friendliness of the interface; and the reusability of the public function component.

    There are several ways to enhance the speed of the spatial data accessing. Since the system will

    be built under the ArcGIS framework, the discussion below is based on the ArcGIS platform.

    First, like regular data, spatial data are stored in a hard drive in a specific format (.MXD, .LYR,

    etc.). Therefore, if the program must access spatial data, it should go through an interface fromArc Desktop to retrieve the data. In this way, access to all the data is based on file system that

    does not provide high speed. One solution for this problem is to upgrade to a database system.

    However, unlike logical data, spatial data cannot be stored directly into database system becausethey cannot be interpreted from attribute fields into tables. Thus, the appropriate solution is a

    geo-database system consisting of SQL Server 2000 and ArcSDE. Spatial data can be stored in

    the same database system with the logical data and no additional input/output (I/O) reading orwriting actions are needed when accessing the spatial data. As a result, the speed of the whole

    system can be improved.

    Another unique method to enhance the performance of the Web GIS in the proposed framework

    is to cooperate with other commercial products like Google Map or Visual Earth. Nowadays,

    people are so accustomed to using Google Map that it is almost forgotten that this application

    appeared just four years ago. Its amazing success comes from its unbeatable features: fast, stable,huge data coverage, and so on. All of these features are very difficult to realize through a

    traditional Web GIS because of the restrictions on the servers design limitations, budget for

    data, and management ability. Fortunately, both Google Map and Visual Earth provide a set ofpowerful APIs for users. What is more, ESRI provides a JavaScript extension for integrating

    Google Map and Visual Earth functions into the ArcGIS Server Web GIS. From these new

    technologies, programmer can reduce the server load by moving some functions from server sideto client by using the Google Maps APIs or Visual Earth APIs.

    2.2 Framework Design

    As a Web GIS system, functions can be basically divided into server-side and client-side

    functions. Figure 2.1 provides a workflow chart for the system. On the server side, geo-database,cached map services, and some programming tricks will apply to enhance the performance of

    processing the data. On the client side, a set of functions will be integrated through a public

    interface like Google Map APIs. Thus, many high performance and user-friendly functions willbe added without increasing the server load. Beside these, AJAX technology will be used to

    optimize the data communication between server side and client side. Both the performance and

    the user experience will be increased for the data transfer from this design.

    To realize the design, several technical points need to be accomplished. Figure 2.2 lists all thetechnical points that help enhance the performance and extend the function of the system. After

    applying these technologies, the new framework will optimize the speed of accessing data,

    5

  • 8/14/2019 Final Report After Defence

    9/39

    retrieving spatial data, displaying maps, transferring data, as well as other functions.

    Figure 2.1 Transportation Web GIS System Design

    6

  • 8/14/2019 Final Report After Defence

    10/39

    Figure2.2 Technologies Used in the Solution

    7

  • 8/14/2019 Final Report After Defence

    11/39

    3 System Enhancements and Realization

    The Transportation Web GIS System can be generally divided into three parts:

    Server-side design improvements including the data storage (logical and spatial),

    programming, and publishing (map services, web services, and website). Client-side design improvements including programming, integrating Google Map

    functions and Visual Earth functions throughout their APIs.

    Communication between client- and server-side programming through AJAX and Web

    Service.

    As the design for these three parts of system are independent so they are discussed separately in

    the following sections.

    3.1 Server-Side Design Functions

    On the server side, several optimization methods can improve data processing time including

    storing spatial data in geo-database through ArcSDE, tiling and caching map, site considerations,

    and reducing the load on server by using dynamic map sources.

    ArcSDE geo-databases allow the user to use other ESRI products like the ArcGIS Server in our

    system, as well as custom applications to store, use, and manage all the GIS data in one of thefollowing commercial database management systems (DBMS): IBM DB2, IBM Informix,

    Microsoft SQL Server, or Oracle.

    Key tasks to set up a geo-database through ArcSDE include:

    Installing software: ArcSDE is a part of an ArcGIS Server when installed. It retrieves thedata that communicates with the client server and database. It provides files for the setup

    and administration of the geo-database on the server.

    Configuring the DBMS: ArcSDE will configure the database on the server with the

    installation tools step by step.

    Creating user accounts: This feature controls access to the geo-database; user accounts

    with specific permissions need to be created appropriately.

    Creating connections to the geo-database: This feature works with the data; a connection

    to the geo-database from client applications needs to be created. Connections can be

    made directly between the application server, and the database.

    Maintaining the Geo-Database: As the data in the Geo-Database changes, the database

    administrator (DBA) performs tasks, such as compressing the database, updatingstatistics, performing backup and recovery procedures, and altering storage locations to

    maintain performance levels.

    Another key point is to manage the permissions of both the logical and the spatial databases.This may be confusing because three security levels must be considered: the operating system,

    the logical database system, and the ArcGIS Server system. The assignment for the rights and

    roles are summarized in Table 3.1.

    8

  • 8/14/2019 Final Report After Defence

    12/39

    Table 3.1 ArcGIS Server Task and Role Assignment

    Task Role

    Management of physical database structures (data files,

    tables, and indexes)

    DBA

    Management of logical database constructs (data models,

    rules, subtypes, networks, locators, and versions)

    GIS administrator

    Management of users and permissions

    Database permissions Object permissions

    DBA

    (database permissions)Data owner (object permissions)

    Database backup and recovery DBA

    Performance tuning

    Of the database

    Of workflows (how users utilize the GIS)

    DBA

    (database)

    GIS administrator (workflows)

    Data distribution (replication/synchronization) GIS administrator

    Geo-database compression and updating statistics GIS administrator

    The other optimization method is to change the dynamic map to a cached map on the server. A

    server map cache is a collection of pre-rendered map tiles that can be used to display a map

    service. This allows a map service to quickly display maps because the map image does not have

    to be rendered simultaneously after receiving the clients request. The cost of rendering theimage is paid only once when the cache is created. The server map cache greatly improves

    performance because the map does not need to be computed each time the user requests a map

    from the server. Instead, the images are retrieved from the map cache for the requested mapextent and resolution. This means that ArcGIS map services can scale to very large numbers of

    users and maps served every hour. As shown in Figures 3.1 and 3.2, only one service will start

    up in the ArcGIS Server rather than starting a service for every single user, thus reducing theload on the server side.

    There are also some tricks in programming that can help reduce the load and thus improve the

    speed of the system. One of the common methods is customizing maps from a large range tosmall study area, thus reducing the data handled significantly. In our system, this function is

    called Personal Website. By using this function, users can create their own page which inherit all

    the functions from main page but only load the data needed for the specific user. To realize thisfunction, Geo-processing function in the ArcGIS Server was used. In general, to create a

    personal web site, 4 steps are needed which are including:

    1. Register for a new account

    2. Select the data for the personal website

    3. Enter the information for the personal website4. Create web page and generate the GIS service

    First of all, Users need to register first and thus the user account could be used as an identity for

    the personal page. After registered successfully, users can access a window show the state widemap data as shown in the figure 3.1. On this map, users are allowed to select the map data they

    needed to display in their personal website by county or by block group as shown in the figure

    3.2. When selected specific map data, users are required to provide some information for

    9

  • 8/14/2019 Final Report After Defence

    13/39

    creating the main page of their personal website such as the title of the page, the descriptions,

    and the layers they want to be included in their map data which is illustrated in the figure 3.3. A

    personal website is created after this step. All of the personal websites will be listed on the mainpage of the whole system as shown in the figure 3.4. As the purpose this system is to share the

    data, so all the users have the right to view other users personal website and download their map

    data as shown in the figure 3.5. As shown in the figure 3.6, once the personal website creatorlogin, more control can be access such like upload layers, delete layers, and move layers from

    one group to another group.

    Overall, from the personal website function, not only the performance of the system can be

    enhanced, but also the more widely data can be shared from different users. What is more, since

    the data is less than the main page and the page is only designed for a specific user, more

    customized function like upload layers, delete layers, and move layers are able to provide for thewebsite creator.

    Figure 3.1 Statewide Map Data

    10

  • 8/14/2019 Final Report After Defence

    14/39

    Figure 3.2 Select Personal Map Data

    Figure 3.3 Input information for Personal Page

    11

  • 8/14/2019 Final Report After Defence

    15/39

    Figure 3.4 Personal Website List

    Figure 3.5 Personal Website

    12

  • 8/14/2019 Final Report After Defence

    16/39

    Figure 3.6 Personal Website Login by Creator

    The major advantages for using personal website including:

    Reduce the load of the main page

    Enhance the performance of the system

    Provide more resource to share from every single user

    Provide more powerful functions in personal website

    Although using the personal website can improve the speed of the system effectively, thedisadvantage is that the page will increase as the personal website grows. As a result, the load of

    the server will continue to rise. The optimal solution for this problem is using the dynamic map

    source so that all users can access only one page to view different map services as shown in

    figure 3.7. The most time consuming part, generating images, in the whole process can thussuccessfully avoided as shown in the figure 3.8

    13

  • 8/14/2019 Final Report After Defence

    17/39

  • 8/14/2019 Final Report After Defence

    18/39

    ArcGIS Server Web GIS. However, integrating these two Web GIS applications will provide the

    best of both worlds and satisfied a variety of user demands. To realize this purpose, four steps

    must be considered:

    Coordinate system conversion

    Two types of map services connection Function integration

    Interface organization

    Coordinate system conversion is the basic point to integrate two systems. The ArcGIS Server-

    based Web GIS platform is very flexible in supporting system coordinates. From the newlyreleased ArcGIS Server 9.3 documentation, more than 4000 Projected Coordinate Systems and

    more than 1000 Geographic Coordinate systems are built in. By contrast, the coordinate system

    used in Google Map or Visual Earth is very stiff.Google Maps and Microsoft Virtual Earth use aMercator projection based on the 1984 World Geodetic System (WGS) geographic coordinate

    system (datum). This Mercator projection supports spheres only, unlike the ESRI Mercator

    implementation, which supports spheres and ellipsoids. To emulate the sphere-only Mercator, itis necessary to use a sphere-based geographic coordinate system (GCS) for the correct Mercatorequations. This sphere-based geographic coordinate system is called the WGS 1984 Major

    Auxiliary Sphere.

    The WGS 1984 Web Mercator projected coordinate system and the WGS 1984 Major Auxiliary

    Sphere geographic coordinate system are now available in ArcGIS version 9.3. If the data are

    based on a different geographic coordinate system, such as the 1927 North American Datum(NAD27), ED 50, Amersfoort, or Tokyo; then misalignment may be quite noticeable at the local

    scale. Data in the 1983 North American Datum (NAD83), WGS 1984, or another geographic

    coordinate system (GCS) that use the GRS80 ellipsoid are usually close enough to align without

    correction except when zoomed in. Features of Googles coordinate system are summarizedbelow (Figures 3.9 and 3.10 illustrate these features in detail):

    Datum - WGS84.

    Projection - Mercator.

    Unit system - pixels.

    Axes - standard east, non-standard south.

    Origin - Near the North Pole on the International Date Line.

    To match these two map services, all ArcGIS Server map layers must be projected into the WGS1984 Web Mercator coordinate. The easiest way is change the coordinate system of the map

    frame in ArcMap to WGS 1984 Web Mercator. Thus, all the map layers will display with thesame coordinate system as the one defined for the data frame, which is called data projected onthe fly. The detailed steps are:

    Import all the layers into ArcMap.

    Check that all the map layers match automatically despite different coordinate systems.

    Change the coordinate system of the data frame: Projected Coordinate Systems World

    WGS 1984 Web Mercator.

    15

  • 8/14/2019 Final Report After Defence

    19/39

    Datum: WGS84

    Figure 3.9 Google Map's Datum and Projection

    Figure 3.10 Properties of WGS_1984_Web_Mercator

    After converting the coordinate system, the shape and layout of the map will change to match the

    new coordinate system as illustrated in Figure 3.11. After coordinate system conversion, all

    16

    Datum: WGS84

    Datum: WGS84

    Datum: WGS84

  • 8/14/2019 Final Report After Defence

    20/39

    ArcGIS map layers will distort to match Google Map coordinates. Figure 3.12 shows a sample

    screen shot for the system.

    Figure 3.11 Map Distort After Conversion

    17

  • 8/14/2019 Final Report After Defence

    21/39

    Overlay after coordinatesystem conversion

    Figure 3.12 Integrating of ArcGIS Map and Google Map

    Map in GIS is a kind of spatial data, defined as data or information that identifies thegeographic location of features and boundaries on Earth, such as natural or constructed features,

    oceans, and more. Spatial data is usually stored as coordinates and topology, and is data that can

    be mapped. Spatial data is often accessed, manipulated or analyzed through GeographicInformation Systems (GIS). After converting the map, the topology becomes uniform. The next

    task is to link two map services by the coordinates. Although two maps share the same

    coordinate system, to cater to worldwide usage, the parameters in Google Maps API require

    latitude and longitude information; the WGS 1984 Web Mercator uses meters. This is animpediment for linking two kinds of map services because the coordinates are the only

    connection between two map services. The solution for this problem is using a method providedby ArcGIS Server 9.3 which can automatically projects one map on the coordinate system thatused in the other map so that can get the coordinate of the same location which can be read in the

    other map. Figure 3.13 illustrates this function as written in VB language.

    ''' ''' input x coordinate of the point '''

    18

  • 8/14/2019 Final Report After Defence

    22/39

    ''' ''' input y coordinate of the point ''' ''' ''' "0":Convert from Meter to LatLong ''' ''' ''' "1":Convert from LatLong to Meter ''' ''' ''' a convert point ''' PrivateFunction MeterLatLong(ByVal xSP AsDouble, ByVal ySP AsDouble, ByValopType AsString)

    Dim pSpRef1 As ESRI.ArcGIS.Geometry.ISpatialReference Dim pSpRFc AsNew ESRI.ArcGIS.Geometry.SpatialReferenceEnvironment Dim pPCS As ESRI.ArcGIS.Geometry.IProjectedCoordinateSystem

    pPCS = pSpRFc.CreateProjectedCoordinateSystem(102113)pSpRef1 = pPCS

    pSpRef1.SetFalseOriginAndUnits(0, 0, 1000000)pSpRef1.Changed()

    Dim pGCS As ESRI.ArcGIS.Geometry.IGeographicCoordinateSystem Dim pSpRef2 As ESRI.ArcGIS.Geometry.ISpatialReference

    pGCS = pSpRFc.CreateGeographicCoordinateSystem(ESRI.ArcGIS.Geometry.esriSRGeoCSType.esriSRGeoCS_WGS1984)pSpRef2 = pGCSpSpRef2.SetFalseOriginAndUnits(0, 0, 1000)pSpRef2.Changed()

    Dim pPoint As ESRI.ArcGIS.Geometry.IPoint = NewESRI.ArcGIS.Geometry.PointClass

    pPoint.PutCoords(xSP, ySP)

    Dim pGeo As ESRI.ArcGIS.Geometry.IGeometrypGeo = pPoint

    If opType = "0"ThenpGeo.SpatialReference = pSpRef1pGeo.Project(pSpRef2)

    ElseIf opType = "1"ThenpGeo.SpatialReference = pSpRef2pGeo.Project(pSpRef1)

    EndIf

    Return pPointEndFunction

    Figure 3.13 The Function to Convert Coordinate Systems

    By using this function, two kinds of map services can cooperate successfully, including auto-

    adjust, Inter-system location, and function integration. With auto-adjust, for example, although

    19

  • 8/14/2019 Final Report After Defence

    23/39

    two sets of maps are already matched to each other, once a user requests the map layer to be

    spanned, the other map cannot respond to the same request. As discussed above, the functions

    can be realized by transferring the coordinates between different systems as coordinate become amedia between two systems. The detailed procedure is:

    Google Map responds to the user request.

    Client side program (JavaScript) gets the new coordinates.

    AJAX function sends the coordinates back to the server side.

    Server side program (C#) handles the coordinates on the server.

    Server side program (C#) move the ArcGIS Server hosted Map to the same centerlocation.

    Server side program (C#) matches the two maps again.

    AJAX function gets the processed result from server side and sends it back to client side.

    Client side program (JavaScript) displays the processed map.

    Figure 3.14 shows this procedure with screen capture.

    Auto Alig

    Figure 3.14 Auto-Align of Two Maps

    20

  • 8/14/2019 Final Report After Defence

    24/39

    After this step, the only problem left is how to organize these functions from different systems.

    Fortunately, all the Google Map or Visual Earth function access their JavaScript APIs and almost

    all the ArcGIS Server functions are designed through server program written in C# or VB. Thesefeatures allow us to design all the functions on the same page, and organize them separately. The

    detailed organization is shown in Figure 3.15.

    ArcGIS Server Functions

    Figure 3.15 Interface Organization

    After these steps, ArcGIS Server Web GIS and Google Maps are integrated both in terms ofdisplaying maps and GIS functionality. The performance of the new system is enhanced because:

    Reductions in the server load due to moving some functions to the client side.

    Faster and more stable functions from Google Map are implanted into system.

    Some analysis tasks can be performed easily on Google Map.

    Google Map works as a default base map when the ArcGIS Server Map is being

    transmitted.

    3.3 Communication between the Server and Client Sides

    Server- and client-side communication is also a critical part of the whole system. Almost everyaction of the ArcGIS Server function will need a post back action of the page. If designed in a

    traditional web mode, a single span function will cause the page to reload three times. Every

    reload will refresh the map; assuming the loading time is one minute, the user must wait threeminutes for the map to reload even without network delay. AJAX [3] is an important web

    development model for browser-based web applications, and is helpful for communicating

    between the client and server sides. The AJAX model uses several technologies that come

    together to create a powerful new model, through widely-used and well-known technologies like

    XML JavaScript, HTTP and XHTML. Google first used and named this new powerful browser-based model in their high performing online GIS application: Google Maps.

    Web Services [4], another technology that often works together with AJAX, are self-contained,

    self-describing, and modular. Unlike earlier, more tightly-coupled distributed object approaches,

    like Common Objects Request Brokers (CORBA), Web Service systems support an XMLmessage-centric approach, allowing us to build loosely coupled, highly distributed systems that

    span organizations. Web Services also generalize many of the desirable characteristics of Web

    21

  • 8/14/2019 Final Report After Defence

    25/39

    GIS, such as standards for providing general-purpose specifications for publishing, locating, and

    invoking services across the Web. Web Services also use widely-used and well-known

    technologies such as XML and HTTP, just as AJAX does. Since AJAX and Web Services areXML-based structures, they are able to leverage each others strength. Figure 3.16 shows the

    steps needed to optimize the client / server (C/S) communication model design with these two

    technologies. The steps needed to realize the design are:

    Create as many Web Services as possible in single or multiple servers for publicfunctions.

    Create AJAX-enabled framework in the client side program.

    Design the server-side program in reusable components.

    Figure 3.16 Steps to Realize Integration

    22

  • 8/14/2019 Final Report After Defence

    26/39

    4 User Applications

    Web GIS for transportation has certain characteristics that identify it from other Web GISdesigns. Transportation analysts require certain features that help determine these characteristics.

    For general transportation analysis, four parts should be taking into consideration: transportation

    operations, transportation planning, transportation safety, and ITS applications. The demands forall of these four areas are based in a common set of data. Although the details of the data may

    vary among different subjectsfor example, an analyst examining operations may focus more

    on traffic data like AADT, intersection information, or signal information, while an analyst inplanning may need socioeconomic dataall must share and obtain data from the Web GIS. For

    this reason, a Transportation Web GIS need focus more on data sharing compared to other Web

    GIS designs in terms of the original logical and spatial data as well as metadata, data format

    converting, coordinate system converting, and spatially processed data. Besides this commondemand, these four different study areas also have unique demands for the system.

    In the new enhanced Transportation Web GIS, a much wider range of demands can be satisfied.

    The overall demand is summarized into three categories: data sharing, online geo-analysis, andfunctions from other commercial Web GIS databases. Figure 4.1 shows more detail about the

    application of this information.

    4.1 Original Map Data with Metadata Download

    Data is the foundation for all kinds of transportation analysis. A more efficient data sharingsystem will enhance the performance of the transportation analyst. In the FSUTMS GISonline

    2.0 system, all the data are divided into four categories: Traffic Data, Network Data,

    Socioeconomic Data, and Boundaries, which cover almost the entire requirement fortransportation analysis. Users are able to preview all the data online before they download them.

    They may also customize the data to their own study area online.

    Metadata is a very important part of GIS data. It helps to understand the database by providing

    information like the coordinate system used for the dataset, the definition for the variables, the

    creation date, the purpose behind creating the dataset, etc. However, the metadata is currently theweakest point for Transportation GIS data. Different data are distributed from different providers

    without a standard format for metadata; some metadata are too simple to understand and thus

    make the data very hard to understand. In our system, the metadata format will correspond to the

    FDOT format, designed in a technology called XLST [6], so that the user can get enough supportinformation with the data. Figure 4.2 shows the function panel for downloading and the uniform

    format for meta-data.

    23

    Datum: WGS84

  • 8/14/2019 Final Report After Defence

    27/39

    Figure 4.1 Users' Applications Summary

    24

  • 8/14/2019 Final Report After Defence

    28/39

    Figure 4.2 Data Downloading with Meta-data

    4.2 Geo-database and Shape Files with Multiple Coordinate Systems Download

    In the traditional GIS system, the data sharing function would normally just provide data withtheir origin. The users must convert the data to formats consist with their systems. On the other

    hand, get a set of data with a Geo-Database is another requirement from the user because this

    will save time if they want to store the data in ArcSDE. To shore up this weak point regardingdata sharing function diversity, all the map data can be converted to different coordinate systems

    25

  • 8/14/2019 Final Report After Defence

    29/39

    prior to download. Figure 4.3 shows the function panel for downloading function.

    Figure 4.3 Data Converting and Downloading Panel

    4.3 KML File Export

    GIS data sharing is always limited because the tools that can open the data are very rare, and

    most of them are very big and expensive. Providing a KML file download can help the user solve

    this problem because they may review the map and attribute table on their local computer withGoogle Earth, available for free on the Internet. Figure 4.4 shows an example of the effect of a

    KML displaying in Google earth.

    4.4 Verification of Area Types and Geometric Conditions

    Verification of area types and the survey of land use activities surrounding transportation

    facilities and verification of geometric conditions such as roadway alignments and number of

    lanes are two common requirements for traffic operation, safety analysis, and traffic planning.Figures 4.5 and 4.6 are the examples about how to realize these functions in FSUTMS GIS

    Online System.

    26

  • 8/14/2019 Final Report After Defence

    30/39

  • 8/14/2019 Final Report After Defence

    31/39

    Figure 4.6 Geometric Conditions Verification

    4.5 Street View Function

    This function allows users to pop up a street view window to show the location where they

    clicked after enable the street view function. From the new popped window, users can getinformation like:

    Geometry design.

    Pavement condition.

    Traffic Single and Traffic Signs Condition.

    Facility Type.

    Figure 4.7 shows an example of a pop-up window with street view that was obtained by clickingthe study location.

    4.6 Inter-System Locating

    This function helps users to continue their work on other Web GIS. In this system, Google Map,one of the most widely used commercial Web GIS, illustrates this function. In addition, the inter-

    media between two different GIS models is the coordinate of the location that the user clicked,

    which is the foundation of all kinds of GIS databases. In other words, this function can be

    realized between any two or among several different GIS programs only if the systems cansupport all or part of others coordinate systems. Figure 4.8 shows an example of switching the

    work from an ArcGIS server system to Google Map in the same location.

    28

  • 8/14/2019 Final Report After Defence

    32/39

    Figure 4.7 Street View Window

    Figure 4.8 Inter-System Locating

    29

  • 8/14/2019 Final Report After Defence

    33/39

    4.7 Geocoding Function

    The geocoding function in this framework is designed by using the Google Maps APIs becausethey are faster and more stable. The distance will be computed follow the formula below. Figure

    4.9 shows an example of a simple geocoding using the formula shown in Figure 4.10.

    Figure 4.9 Search by Address

    Figure 4.10 Inter-System Locating

    4.8 Live Traffic

    30

    Formula and Program Used to Compute Distance between Two Locations:

    protecteddouble getDistance(double lat1, double lng1, double lat2,double lng2){ double dbDistance = 2*Math.Asin(Math.Sqrt(Math.Pow((Math.Sin(

    (lat1-lat2)/2)),2)+Math.Cos(lat1)*Math.Cos(lat2)*Math.Pow((Math.Sin((lng1-lng2)/2)),2)))*dbRadium;dbDistance = dbDistance/dbMile;

    return dbDistance;}

  • 8/14/2019 Final Report After Defence

    34/39

    Live traffic can be a supplement for traffic when the user needs some traffic analysis like traffic

    control design. This kind of data was very hard to get and not easy to display on the page.

    However, with Google Maps APIs, the user can easily compare live traffic data with their ownGIS data. Figure 4.11 shows an example of live traffic data.

    Figure 4.10 Live Traffic Data from Google Map

    31

  • 8/14/2019 Final Report After Defence

    35/39

    5 Summary and Conclusions

    This study of this report has accomplished the following major research tasks:

    An integrated framework for implementing various GIS functions in transportation

    applications is developed. An enhanced GIS server configuration design is accomplished.

    A solution on improving performance of data communication between client and server

    side is developed.

    A compatible method to integrate commercial web GIS functions is developed.

    A high performance client design is accomplished.

    As discussed above, an integrated framework for implementing various GIS functions intransportation applications involve three design aspects: server-side design, client-side design,

    and the design for the communication protocol between the server and client sides. The

    framework is designed based on ArcGIS Server framework and several new components

    including ArcSDE, Microsoft Atlas, AJAX.net, Google Map functions from Google Maps APIs,Microsoft Visual Earth (VE) function and APIs, and multiple data sharing functions. Compared

    to the traditional framework provided by the ArcGIS Server, we propose an enhanced application

    with regard to data sharing functions, satellite images base map, street view functions, multipleGeo-Searching functions, data customization, and online live traffic information, etc. These

    improvements extend the functions of current transportation analysis programs in their limited

    abilities to a wide range of data sets based on commercial web GIS like Google Maps and VisualEarth. Enhancing the function allows users to compare the data they want with real satellite

    images, locating the study area the same way they use Google Maps, downloading the data with

    many different formats, and even making their own web page for their study area.

    The new designs for the proposed framework can be realized through the following steps:

    Reduce data access time. Change the file system-based data management method to

    ArcSDE. Spatial data can be stored in the same database system with the logical data andno additional I/O reading and writing actions are required when accessing spatial data. As

    a result, the speed of the whole system will increase.

    Reduce the time needed to access a map by caching the map services. Reduce the time togenerate tiled images when the user requests the map or a specific location on the map.

    Twenty zoom levels will be predefined and all the tiled images for these levels will be

    generated and stored on the server.

    Improve the user experience by using AJAX to improve the refresh protocol, which will

    improve the speed of the system. Not all of the page will be posted back to the server, butonly a request or the relevant data will be send back to the server and the rest of the pagewill be unchanged so that the user can continue to work undisturbed by refresh time. This

    will enhance the speed of the system because only part of the page will be refreshed

    instead of reloading the whole page.

    Reduce the load on the server by moving some functions to the client side. Rich client

    side is a trend for web developing. The load on each side should be balanced to optimizesystem performance. The map data does not need to be reloaded for every single user

    32

  • 8/14/2019 Final Report After Defence

    36/39

    event. An image with the coordinate system will allow users to work more comfortably.

    Implant faster and more stable functions from commercial Web GIS System like Google

    Maps and Visual Earth. Some functions from commercial Web GIS System are faster,

    more stable, and more user-friendly like Geo-Searching, satellite images, Street View,and Live Traffic. What is more, these functions are widely used by professional engineers

    and the APIs are free of charge. Implanting these functions can improve the performanceof the system and reduce the learning curve for users.

    Helps users to continue their analysis from local GIS to Google Map by using Inter-

    system locating function. The Google Maps application is becoming an essential tool for

    all kinds of research. The inter-system locating function will help users to switch theirwork from one system to another. Actually, this function is just an interfaceit is

    essentially an illustration. The function can be realized among all kinds of GIS

    applications if they provide the coordinate interface.

    Reduce the wait time by using Google Maps as a base map when the ArcGIS Server Map

    is under transmission. Although waiting is unavoidable even after using map-cachingtechnology, the blank time makes the user uncomfortable when they work on the map.

    Providing a base map is an acceptable alternative when the ArcGIS Server Map is undertransmission.

    This framework presents a different way to design a Web GIS, but it is still not a fully

    developed product. Integrating more functions from different frameworks and different

    systems can improve the performance of the Web GIS System to make it more efficient.Three aspects of Web GIS design are enhanced with other technology in order to satisfy

    more requirements.

    The major contributions of this framework include:

    Increasing the speed of accessing data Enhancing the performance of the system

    Enhancing the user experience through the user-friendly interface

    Reducing the developing period

    Reducing the load on the server

    Providing more functions

    33

  • 8/14/2019 Final Report After Defence

    37/39

    6 Future Work

    6.1 New Competitor in the GIS Arena: Microsoft

    In the foreseeable future, changes in the market will change the way GIS will develop and how

    users will work with GIS. Compared to five years ago, the method for working with Web GIS

    has changed significantly with the appearance of ArcGIS Server solution and Google Maps.

    ESRI and Google have occupied the highest position in the Web GIS arena until now. However,competition from other companies may break this pattern. One of the greatest competitors will

    be Microsoft. As the leader in IT area for so many years, Microsoft always can find its way to

    grasp the market in all kinds of IT technology. Recently, Microsoft has realized the importanceof Web GIS and is getting ready to publish his Microsoft GIS and Web GIS solution: Visual

    Earth + Map Point + SQL Server 2008. Compared to other solutions, the Microsoft application

    has two major advantages:

    To avoid potential compatibility problems, it integrates all the developing functions in

    current Microsoft products: .NET + Visual Earth + Map Point + Microsoft Office + SQLServer. This integration is a great attraction for both the developer and the GIS analyst

    because they dont have to switch their work among several different platforms and

    worrying about the compatibility of their work.

    Users of Visual Studio, SQL Server, and Microsoft Office may prefer to use productsfrom same company. As the .NET framework is becoming more and more popular, the

    growing quantity of .NET users is huge enough to change the current market pattern.

    There are already several mature products from Visual that show great competitiveness in the

    Web GIS field in the following areas:

    Financial Services

    Hospitality & Travel Manufacturing

    Media & Entertainment Oil & Gas / Utilities

    Public Sector

    Real Estate

    Retail

    For detailed information see: http://www.microsoft.com/virtualearth/industry/

    In order to make this product competitive in the market, developers should keep an eye on these

    changes in the Web GIS arena and try the best to make the GIS application easy to migrate fromone framework to another.

    34

    http://www.microsoft.com/virtualearth/industry/http://www.microsoft.com/virtualearth/industry/
  • 8/14/2019 Final Report After Defence

    38/39

    6.2 Reusable Components Design and Web Services

    This part of the task is not easy to realize because currently not every single ArcGIS ServerSystem can afford the cost of a distributed system considering the cost of the server is still an

    economic burden. However, as trends in hardware show that the server will become more and

    more powerful as it becomes less and less expensive. It is true that improvements are limited ifwe create Web Services in a single server even if the server has multiple central processing units

    (CPU). However, if there are several servers that respond to data management, map services, and

    geo-analysis separately, the effect and performance will be significantly increased. The day thatthe price of the servers will not be a problem will come along with the enhanced power of web

    services as described in this paper.

    35

  • 8/14/2019 Final Report After Defence

    39/39

    R eferences

    1. Transportation Web GIS System: http://www.gis.fhwa.dot.gov/ . (Accessed 01/19/2009)

    2. DIGS: http://www.dhpc.adelaide.edu.au/projects/dgis/ . (Accessed 01/19/2009)

    3. AJAX: Asynchronous JavaScript and XML: http://en.wikipedia.org/wiki/AJAX . (Accessed

    01/19/2009)

    4. Web Service: A 'Web service' (also Web Service) is defined by the W3C as "a software

    system designed to support interoperable machine-to-machine interaction over a network".Webservices are frequently just Web APIs that can be accessed over a network, such as the Internet,

    and executed on a remote system hosting the requested services.

    5. Coordinate Systems supported by ESRIs ArcGIS products:

    Projected Coordinate Systems and Well Known IDs (>4000):

    http://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/pcs.htm.Geographic Coordinate Systems and Well Known IDs (>1000):http://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/gcs.htm .

    (Accessed 01/22/2009)

    5. XSLT: a language for transforming XML documents into other XML documents.

    http://www.w3.org/TR/xslt (Accessed 02/13/2009)

    http://www.gis.fhwa.dot.gov/http://www.dhpc.adelaide.edu.au/projects/dgis/http://en.wikipedia.org/wiki/AJAXhttp://en.wikipedia.org/wiki/AJAXhttp://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/pcs.htmhttp://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/pcs.htmhttp://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/gcs.htmhttp://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/gcs.htmhttp://www.w3.org/TR/xslthttp://www.gis.fhwa.dot.gov/http://www.dhpc.adelaide.edu.au/projects/dgis/http://en.wikipedia.org/wiki/AJAXhttp://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/pcs.htmhttp://resources.esri.com/help/9.3/arcgisserver/apis/javascript/arcgis/help/jshelp/gcs.htmhttp://www.w3.org/TR/xslt