Spatial data, the foundation of all GIS applications, has become
a fundamental data asset in many organizations. With the increase
in popularity of GIS technology, data visualization, data fusion
and Internet technologies, the use and distribution of spatial
data has become a key requirement for many systems. Developed
for the BC government's visionary LandDataBC project, MacDonald
Dettwiler's Landscape map viewer provides the ability, over the
Internet or Intranet, to display and roam through GIS data and
raster data assets. Using the power of the Esri SDE, map data
can be rapidly served to the Landscape viewer in answer to a user's
query. This provides a platform independent, zero-cost per client
seat solution for the data discovery and data dissemination needs
of today's leading industries and government agencies.
The world is currently in the grasp of a variety
of powerful trends and initiatives related to the GIS and spatial
data world. GIS technology, like the Esri SDE, and the use of
GIS is becoming an important aspect of industry competitiveness,
not only for higher productivity and the effective use of resources,
but also in the areas of data visualization and the dissemination
of information. Database and GIS manufacturers are finding themselves
at odds, as each rushes to provide a solution to access and store
spatial information in existing data solutions. One solution,
Esri's SDE has shown the ability to deliver spatial data rapidly.
A second powerful trend is that of the Internet and
its promise of data publishing and data discovery. Many government
agencies and commercial industries are finding the Internet provides
a way to disseminate their information and products which is not
only globally accessible but also cost effective. The third powerful
trend, which is influenced by the first two, is the trend of governments
to improve access to their data holdings for the benefit of their
cooperating agencies and public citizens. Currently in the U.S.
the requirement to disseminate government spatial data holdings
was mandated through the NSDI and FGDC initiatives.
Although there is no equivalent Canadian mandate,
visionary government agencies have begun their own initiatives:
LandDataBC and CEONet to name two. The BC government's LandDataBC
project; a system designed to provide consistent, uncomplicated
access to land-related information held by the various agencies
and ministries of the Government of British Columbia.
The LandDataBC customer has had years of experience with land-related data and associated technologies. They have had a prototype version of the LandDataBC system for several years and have used it operationally. As well, they have had discussions with their end-users on how to improve upon the prototype and provide even better value it the full system. All of this experience and knowledge was used in determining the requirements for the LandDataBC interface.
The LandDataBC interface had to present to the user
a unified view of the data ordering and delivery process. Specification
of the order parameters, which included a spatial region of interest
had to be done in the most intuitive way possible. To achieve
this it would be necessary to display a functional map to the
user which they could pan and zoom and then mark a region of interest.
The majority of the users were experienced GIS users so it was
important that the information was displayed in the original vector
format, a gif image was not suitable for this group of users.
As a matter of added complexity the information which the map
viewer would have to display included not only the index maps
for data discovery but also the vector data which was ordered.
The ordered data came from a vast data store in a large variety
of different formats, all of which needed to be supported The
ability to view the ordered data provided the user with a quality
assurance step that the proper data had been delivered before
exporting the data to the application, normally a GIS system.
The estimated number of users for the system was set at 10,000
people so the LandDataBC interface needed to be globally available
and cost-effective. MacDonald Dettwiler was asked to develop a
specialized map viewer component. MacDonald Dettwiler called the
map viewer Landscape and used the Java programming language to
meet this need and go beyond it. To serve the map data at a speed
which could meet such difficult requirements a powerful spatial
server was needed. At the time, there were none on the market,
and then Esri announced their SDE. MacDonald Dettwiler entered
into a business partnership with Esri and began work with the
SDE.
The LandDataBC's data viewing architecture is comprised
of three main components: the Visual Interface, the Server Manager
and the Esri SDE. The Visual Interface uses a set of HTML pages
using Javascript and interoperates with the Java Landscape viewer
to provide a unified interface to the user. Hyper-textual information
is provided in the HTML pages and spatial information is provided
in the Landscape map viewer, this includes both vector data and
raster information. The Server Manager maintains a set of open
connections to the SDE and balances the load caused by concurrent
user access. The Server Manager maintains the performance level
of the server. The Esri SDE engine provides the spatially indexed
map data which can be pulled either in full mapsheets or in sub-sheets.
To support this architecture Landscape contains a variety of internal
tools each with a defined function: dataset manager, data loading,
spatial indexing, coordinate projection, data viewing, marking
regions of interest, attribute data viewing and the application
programming interface.
Landscape uses a layered concept of datasets to store
its information. Each dataset has a set of symbology and colors
associated with it as well as a place in the hierarchy of layers.
Layers are drawn in the order they are loaded unless the user
reorganizes them. Layers have scale ranges associated with them
which tell Landscape at what level of detail this dataset is visible.
Using this feature, layers of increasing detail can be loaded
as the user zooms past the scale range of the previous dataset.
Landscape provides interactive controls which the
user can use to reorganize the order of the layers and therefore
the drawing order. Landscape automatically places raster datasets
in the lowest layer to ensure that the vector data is being drawn
on top and the raster is being used as an underlay. The datasets
controls also permit the user to set the visibility and selectability
of a data layer. If the layer is not visible, then it will not
be drawn and if it is not selectable, then the various map objects
(selectable objects which have associated data or meaning) will
not be selectable. Other features include: deleting a layer and
loading a new dataset.
Currently, Landscape supports a variety of formats
with a modular facility to add new ones quickly. Those that are
currently supported are: Esri E00, Esri Shape, MapInfo MIF and
with Intergraph IGDS. Vector datasets have a wide range in size,
mostly dependent on the complexity of the vector data presented.
A tradeoff between data complexity and network capacity needs
to be made to keep the interface reactive to the user's needs.
The ability to load raster data (georeferenced images)
into the map viewer is also supported. Landscape currently supports
gif, JPEG and TIFF files with a supplementary metadata file (contains
positioning information). These images typically are air photos,
satellite images or processed satellite images (such as land-use
maps) which can be layered under the vector data.
An interesting architectural ability in the data
loader, is that each of the datasets is loaded in parallel. Once
the first dataset is loaded and displayed the user can immediately
start using Landscape, even if more complex datasets have not
yet completed loading. To assist the user, a data loading progress
monitor is displayed which shows the status of each load thread.
Furthermore, Landscape is capable of dynamically loading GIS data
on an as-needed basis and dynamically unloading GIS data on a
least-used basis. The Esri SDE engine is used to provide on-demand
map layers to Landscape as needed. This powerful and flexible
feature even facilitates the use of multiple distributed SDE servers
for different portions of the index map. For example, BC data
could come from a Victoria-based server while Nova Scotian data
came from a server in Halifax but all of it would appear seamless
to the user.
Once the data has been loaded, Landscape then spatially
indexes the information, using the information from the SDE server
to set it properly into a series of pre-defined collections. This
functionality allows Landscape to rapidly display the region which
the user is viewing and facilitates the selection of map objects.
When the user is in "selection" mode and clicks on a
map object, Landscape uses its spatial collections to rapidly
locate the object, highlight it in the display and show the related
attribute information, if it is available.
Landscape provides two distinct levels of data viewing:
overview and main view. The overview window remains at a constant
7 times zoom factor higher than the main view, and automatically
tracks all roaming activity performed in the main view. This provides
context to the user who may be heavily zoomed into a medium complexity
dataset. At the highest level the overview window typically contains
a world map but any map data can be specified. The main view is
the interactive area which the user operates in. The main view
also has a scale ruler on its left side which provides the user
with a quick way of determining the current map scale range being
viewed.
Landscape includes a set of algorithms which determine
the dynamic generalization of the map data. All of the data which
Landscape loads has a scale range associated with it which determines
at what zoom level it becomes visible. As you zoom into a dataset
more detailed maps will be displayed so that you could start with
a provincial map and get down to a detailed road map of Vancouver.
A raster dataset is drawn first and then the vectors are layered
on top. Raster datasets can also be layered to generate non-overlapping
image mosaics.
To navigate the data Landscape provides the standard
zoom and pan functions including a zoom out fully function allowing
the user to restart at the highest level. Other functions allow
the user to calculate distances between two points and determine
the latitude/longitude position under the mouse pointer.
Since Landscape supports GIS datasets, as opposed
to a raster images generated from vector data, it has the ability
to project and re-project vector datasets. Landscape supports
a variety of different map projections: UTM, Albers Equal Area,
Lambert Conformal Conic, Polyconic and Geographic. Landscape supports
the simultaneous use of these different projections in the overview
and in the main view. It even supports different projections for
datasets which are at different scale ranges, dynamically projecting
as the user zooms into the map.
This flexibility allows Landscape to provide the
vector data in the most appropriate projection for the given dataset
and scale range, allowing the user to work in the most comfortable
projection for their work.
Consistent with its role in data discovery Landscape
provides a powerful set of functions to interactively define regions
of interest and manipulate them. The region of interest can be
specified using one or a combination of: buffered points (circles),
rectangles, free-form polygons or the selection of map objects
from the visible and selectable data layers.
These regions can be saved and re-loaded at a later
time and in the LandDataBC system there is also the ability to
share these regions with other users in the same "group".
These powerful features allow the user to spatially qualify their
searches. In LandDataBC, the spatial region is supplemented with
keywords, topics and temporal constraints to perform a query on
the metadata catalog.
Landscape's Table Viewer is a companion application
which uses a table format to display the attribute information
associated with a map object. The user switches to "select"
mode and then picks a map object from the visible and selectable
data layers. The attribute information for the selected map object
will be displayed in the Table Viewer. The highlighted map objects
and the attribute data are strongly linked, so that a selection
in one toolreflected in the other. This provides the user with
a powerful, integrated and effective tool for querying objects
in the map for more details.
Landscape supports an Javascript API which allows HTML page authors to invoke all the functionality available to the interacting user. Using this API, the coordinates of the specified region of interest can be copied into a companion HTML form's textfield. Other abilities include loading new datasets when the user clicks on a button in the HTML page or zooming the map display to a particular location. The possibilities are varied and many and include a set of calls to the SDE server layer.
With the trends in exploitation of GIS and data visualization,
mandates of government agencies turning to the dissemination of
data and the undeniable access to data which the Internet provides;
displaying and examining spatial data over the Internet, is a
rapid and effective manner, is a prime requirement. The requirement
encompasses the need for a platform-independent and universally
applicable way to view GIS. A requirement which MacDonald Dettwiler's
Landscape map viewer architecture, using the power of the Esri
SDE spatial engine, is well designed and positioned to meet.
Bill Anderson, Environment, Lands and Parks, British Columbia
GDBC Staff, Envirnment, Lands and Parks, British Columbia
John Geddes, Spatial Data Systems' Program Manager, MacDonald Dettwiler
Eric Hawthorne, Chief Architect of the Landscape
Map Viewer, MacDonald Dettwiler
Mark Dostie is an Architect of MacDonald Dettwiler's
Land Information Infrastructures and the Product Manager for the
Landscape Map Viewer with Esri SDE servers. He has worked extensively
with various agencies and enterprises in helping them deal with
their spatial data management problems. His experienced has been
gained in initiatives located in Canada, Japan and the United
States and in the development of innovative technology solutions
for information management at MacDonald Dettwiler.
Dostie, Mark
Architect - Land Information Infrastructures
MacDonald Dettwiler
13800 Commerce Parkway
Richmond, BC
Canada
V6V 2J3
Phone: (604) 278-3411
Fax: (604) 278-2936
MacDonald Dettwiler on the Internet