Home Articles Developing spatial functions with web technologies

Developing spatial functions with web technologies

Dr Vivarad Phonekeo


Dr Vivarad Phonekeo
[email protected] 

Dr Royol Chitradon


Dr Royol Chitradon
[email protected] 

National Electronics and Computer Technology Centre
Bangkok, Thailand

Dr Mitsuharu Tokunaga


Dr Mitsuharu Tokunaga
[email protected] 
Asian Institute of Technology, Pathumthani, Thailand

With the fast growth of Internet technology, Geographic Information System (GIS) has been merged with the technology of cyberspace and has become a powerful information technology tool in terms of decision-making and data accessible systems on the cyberspace in the new millennium. The World Wide Web Consortium (W3C) develops interoperable technologies (specifications, guidelines, software, and tools) to lead the Web to its full potential as a forum for information, commerce, communication, and collective understanding. Many web technologies have been developed under the standardisation provided by W3C for efficient data communications and exchange over the Internet.

Java is one of the first technologies that made a new change to the applications development on the Internet. Java was developed by Sun Microsystems as an object-oriented programming language for developing web-based applications on the Internet.

XML is a markup language for documents containing structured information and the standard for representation of Web information. XML is the Web Distributed Data exchange, which is supported by lots of generic tools, and by itself, is just a notation for hierarchically structured text. The advantage of XML is to allow groups of people or organisations to create their own customised markup applications for exchanging information in their domain (music, chemistry, electronics, hill-walking, finance, surfing, petroleum geology, linguistics, cooking, knitting, stellar cartography, history, engineering, rabbit-keeping, mathematics, genealogy, etc).

Scalable Vector Graphics (SVG) developed by Adobe, is a new graphics file format and Web development language based on XML. SVG enables Web developers and designers to create dynamically generated, high-quality graphics from real-time data with precise structural and visual control. With this powerful new technology, SVG developers can create a new generation of Web applications based on data-driven, interactive, and personalised graphics. Applying these web technologies to GIS would make possible to drastically change to GIS from its traditional style to the new stage of Internet GIS. Using Internet GIS, users can access spatial data and manipulate them online. These technologies provide powerful capability to GIS in terms of spatial data exchange, transferring, analysis and processing on the Internet. Internet GIS is not new to the world. Many GIS companies and organisations have developed web-based GIS technologies only a few years ago. For example, the Environmental Systems Research Institute Inc. (ESRI) which created ArcInfo has introduced simple-to-use solutions for deploying maps on the World Wide Web. The ArcView Internet Map Server is an out-of-the-box GIS and mapping solution for publishing your Arc View maps on the World Wide Web.

The Japanese company Dawn Corporation has developed “GeoBase”, a robust Web GIS engine that has been strengthened amid the Web environment, it will demonstrate the best performance one expects. Spatial Index Engine (the patent technology of Dawn Corporation) of GeoBase provides high-speed display and breaks the limit of conventional Web GIS. Responsive panning, zooming and smooth scrolling is now available on the Web. GeoBase has other advantages such as high performance, flexibility and group-work support, advanced function, and interoperability. The examples above show that the trends of Web-based GIS development will become strong in the future. Faster computers, greater data storage capabilities, and sophisticated spatial data visualisation techniques with the integration of web technology provide the possibility of developing Internet GIS efficiently. 

Web-based spatial functions development planning
The application of internet technology to GIS research in RD-C was started by the development of several internet applications for GIS projects, such as GIS viewer, the Thailand Integrated Water Resource Management (TIWRM), Land use and Land suitability of Omkoi district projects and so on. 
Even though these applications are web-based, which users can access through the internet to retrieve social and environmental information, but to perform spatial data analysis and processing, spatial functions are needed to be included into these applications for supporting the functionality in terms of spatial data processing and analysis. Therefore, the development of spatial functions is needed and can be treated as an important step in the process of Internet GIS development.

The development of spatial functions was focused on the commonly used functions in GIS, and it is a part of the Internet GIS development process. 

These functions can be divided into four groups, which are included: the simple relational operators, functions for geometric objects, spatial functions and image processing function for remote sensing and GIS. 

The first two groups were selected according to the OpenGIS Consortium documentations, while the last two groups are the functions that are frequently used in GIS to support data analysis and processing functionality. Most of these functions were developed based on existing algorithms and open sources which one can find on the World Wide Web. The list of functions with the input and output data format is set out in Table 1. 

Table 1. List of spatial functions
Functions Groups Data
Input data Output data
Group 1: Relational Operators
 1. Intersection
2. Overlapping
3. Union or Merge
4. Subtraction
5. Difference
6. Equality
7. Disjoint 
8. Contains/within
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Raster
Group 2: Functions for geometric objects
1. Area of polygon
2. Centroid of polygon
3. Distance between two points
4. Length of a curve
5. Perimeter of polygon
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
Group 3: GIS functions
1. Lat Long-UTM conversion
2. Shading for terrain model
3. USGS DEM to ASCII format conversion
Numeric
DEM
DEM
Numeric
Raster
Numeric
Group 4: Image processing functions for Remote Sensing and GIS
1. Spatial filtering (Edge detection, image 
smoothing and sharpening)
2. Image threshold, inversion, mirroring, scaling, 
look up table (LUT) and gray conversion.
3. Noise cleaning
4. Curve fitting for interpolation
5. Wavelet for edge detection
Raster

Raster

Raster
Vector
Raster

Raster

Raster

Raster
Raster
Raster

The spatial functions shown in Table 1 were firstly developed in C/C++. The reason is easy for testing the computing performance in terms of correctness and precision on stand-alone computer system. Moreover, these functions are mostly available in C /C++ rather than in other programming languages. 
Another reason is that the source codes developed in C/C++ can be an open source or public domain codes to develop the Geographic Resources Analysis Support System or GRASS. 

The C-coded functions will be imported into Java codes. The java-coded functions will be the final web-based spatial functions that will be included into the Internet GIS system, which is planned to maintain using XML technology. The flowchart of the process is shown in Figure 1.

Presently, Several Internet GIS applications have been developed by RDC using the web technologies. Figure 2 shows the GIS viewer of Omkoi district, which is a study area in the Northern part of Thailand. In this viewer, the spatial data (boundary, streams, roads and villages, etc.) are shown and were stored in XML format. Using the SVG technology, users can select to view the spatial features of their interest. Several interactive features are provided to users to be able to access data interactively.


Figure 1. Flowchart of the spatial functions development process

Adding spatial functions to the applications, the spatial data analysis and manipulation will be efficient and GIS consistent. Figure 3 shows the application of web technology to the spatial functions development (white block), which brings traditional (yellow block) to Internet (cyan block) version. In this Figure, it is obvious that for Internet GIS, XML technology is a significant component, since it covers in XML data exchange, parser, display (SVG) and spatial database, which are applied by XML.


Figure 2. GIS Viewer of Omkoi district, (Chiang Mai Province, Thailand). a) Full screen of the viewer. b) Viewer in Zoom-in mode in specific area, and c). Attribute data of spatial features shown in viewer in XML format.

Spatial functions: Internet version vs. Traditional version
Applying web technologies to spatial functions development will change its capabilities in terms of cross-platform and worldwide accessibility. Table 2 shows the comparison of spatial functions in terms of traditional and Internet versions.

Table 2 Comparison of the spatial functions development for traditional and Internet versions
   Traditional version  Internet version
Programming languages  C/C++ and others  Java
Display  Window-based  Web browser-based 
Platform independence  No  Yes
Open source  No  Partially
Accessibility  Single user  World-wide
Data exchange capability  No  World-wide
Computation speed  Computer dependence  Network dependence
Follows OpenGIS standard  Partially  Yes

Further developments plans
In near future development plans are envisaged to implement the following:

  • C to Java codes porting
  • Development of XML Parser – this is a XML tool to read spatial data in XML format and retrieve the needed information for data processing using spatial functions.
  • Development of Spatial Data – XML data format conversion tools, which will be used to convert spatial data in various formats into XML format.
  • XML spatial database development – this will replace the traditional GIS database which is of relational type.

With the expansion of the World Wide Web, Internet GIS is growing very fast. This system opens many new possibilities such as geographically communicating with other people in terms of spatial data presentations through the Internet to make the right decision. Moreover, Internet GIS provides interactive maps that let users to access useful data anywhere and anytime on the Internet, which is more convenient in comparison to traditional maps that are static. Paper maps will be replaced by digital maps, that will be a benefit to map users who can have a new way of accessing geographical data using personal computers or mobile phones which support wireless application protocol (WAP) in only a few minutes. Anyway, since the Internet connection is different in various places, while accessing GIS data on the internet, data transfer which is affected by the speed of the Internet connection as well the data type to be transferred has to be considered.


Figure 3. Spatial functions development (white block) in the process of Internet GIS development: traditional (yellow block) vs. Internet (cyan block) versions

Acknowledgement
The Authors would like to thank Dr Tripathi Nitin Kumar, assistant professor at the Space Technology Applications and Research Program, for his suggestions and guidance of the preparation of this article.

References