Thursday, 20 September 2012

Thought about web client -- OpenLayers

OpenLayers is a free and open source web map client. OpenLayers supports many types of layers of different sources, from the most open standards to the latest industry technology.

OpenLayers takes advantage of the new HTML5 functionalities, providing better, more performant experience to the user. It allows rich interactivity in a highly portable technology, namely JavaScript.

Examples

For OpenLayers examples, visit: http://openlayers.org/dev/examples/

Thought about Spatial Databases -- PostGIS

The spatial database is the most important component in any GIS system. Remember, the data depends on it.

A good spatial databases must perform complex spatial request efficiently and that is just what PostGIS is able to do!

PostGIS adds support for geographic objects to the PostgreSQL object-relational database. In effect, PostGIS "spatially enables" the PostgreSQL server, allowing it to be used as a backend spatial database for geographic information systems (GIS).

PostGIS has been developed by Refractions Research as a project in open source spatial database technology. PostGIS is released under the GNU General Public License, making it a Free and Open Source Software.

Installation

  • First step: download and install PostgreSQL
  • Second step: download and install PostGIS
  • Third step (Optional but recommanded): download and install pgadmin

Thought about Spatial Database -- SQL Server 2008 R2 +

The spatial database is the most important component in any GIS system. Remember, the data depends on it.

A good spatial databases must perform complex spatial request efficiently and that is just what SQL Server is able to do!

If you are using a Microsoft stack, it could very well be a good idea to store your spatial data on SQL Server.

SQL Server 2008 R2 is Microsoft database solution and it now supports geospatial types and indexing. Even though SQL Server 2008 R2 come at some licensing cost, it could be the best choice for your infrastructure if your infrastructure is built on Microsoft technology.

SQL Server 2008 R2 provies comprehensive spatial support that enables developers to create location-aware applications for businesses and consumers.

Wednesday, 19 September 2012

Thougth about iOS 6 Maps app -- My impressions

Having just completed my iPhone upgrade to iOS 6. I had to try the new built in maps application.

I tried the new turn by turn function and really liked it. Unfortunately, the quality of the satellite maps and the lack of traffic information is a huge disappointment for my city. The 3D buildings look really nice in New-York, but this feature is not available in many cities. The way tiles are loaded and cached can be improved.

Waiting for Apple to improve the quality of the satellite map in my region,I will be using Google Maps web app for mobiles.

Thanks for reading. Feel free to comment.

Wednesday, 12 September 2012

Thought about KML -- The pros

The problem is common, how to display geospatial information from different sources in a GIS application in a standard way?

KML was first developed by a company named Keyhole as a presentation model for their revolutionizing Earth Viewer latter renamed Google Earth.

KML goes beyond other OGC encoding standard by allowing to specify how Features should be displayed on the map, but also in the treeview.

KML allows to describe how the camera should be positioned to visualize a feature, how the camera should move around the globe.

Kml also allows to describe the time dimension of a features.

Allowing the server to specify how features should be displayed can be quite powerful when combined with the user interaction user gains with vectors; specially when compared with WMS.

Of course KML is not perfect, it has multiple limitations. Since nothing is perfect, KML can often be the best choice.

Thanks for reading! Let me know what you think about it.

Monday, 10 September 2012

Thought about Vectors -- The power of client side rendering

The problem is basic, provide rich interaction with features to users. After all... they all know about Google Earth.

Having vectors rendered on the client allows richer interaction than WMS such as highlight on hover, edition of features, interaction between the map and another component such as a list, show and hide of individual features, etc.

This power comes at a cost, performance can quickly degrade as the load increases, therefore vectors should be used carefully.

Different standard come to my mind: KML popularized by Google, used in Google Earth, Google Map defines a presentation model. WFS standardized by the OGC specifies the behaviour of a service that provides transactions on and access to geographic features in a manner independent of the underlying data store.

So KML provides presentation while WFS provides data. What do your user really wants? If the user is a geotech he wants data, if your user is a system, it wants data, but if your user is a normal guy he wants to visualize information.

Both standards can be used to bring vectors to the clients, both standards have pros and cons. I will discuss them individually in a subsequent posts.

Thanks for reading! Let me know what you think about it.

Thursday, 6 September 2012

Thought about OGC WFS-T -- Enforce Business Rules in Geospatial Edition

The problem is common; allow users to create, modify and delete features. Great, lets use WFS-T, what a nice fit! But...

Example use case:

The user creates a new address (point) on the map. He selects the address position and then has to fill other attributes. Civic number, Street Name, Postal Code, City, Country.

So the user already selected the x,y location for the feature, why should he have to fill the street name, the postal code, the city, the country?

Here is why, It is not possible to enforce any kind of business rules based on the position of the feature we are editing; or based on any other attribute. The describe feature type request should have an optional feature parameter.

Example of a describefeaturetype request:
http:///?request=describefeaturetype&service=wfs&version=1.1.1&outputformat=xmlschema

The solution? In a perfect world, WFS-T should take this use case in consideration for its next revision, so that open source or vendor implementations resolve the issue.

Thanks for reading! Let me know what you think about it.