Intergeo defines itself as the world’s largest event and communication platform for geodesy, geoinformation and land management. It will be this year in Cologne from 5th to 7th October 2010.
Camptocamp will present MapFish at the Open Source Park and Terrestris will also have a booth with MapFish demos. Meet the specialists over there ;-)
Friday, September 17, 2010
Thursday, September 9, 2010
Foss4g 2010: Python Workshop
If you want to know more about the usage of python, a nice workshop held at Foss4g 20010 is now available.
Foss4g 2010: First steps with MapFish
Don't hesitate to test MapFish with the tutorial just presented at Foss4g 2010.
Monday, September 6, 2010
MapFish at Foss4G
It's time for the annual geomatic FOSS event. This year, several workshops, tutorial or presentations will present the latest information about MapFish.
- On Mon 6, between 15h and 18h, I imagine that Eric and Bruno will illustrate the workshop "Solid web mapping with Python" with MapFish examples.
- On Thursday 9, at 11h, you'll have the possibility to make your first steps with MapFish during a tutorial.
- Tuesday 7, 16h30, "GeoExt and MapFish client components: how to migrate ?" will present the migration path from MapFish client to GeoExt.
- Tuesday 7, 16h30, "Where is MapFish going ?" will deliver some insights in the future
- Thursday 9, 9h, the MapFish print module will be introduced.
- Thursday 9, 14h, an integration of MapFish application within the DRUPAL CMS will be presented.
I probably miss some presentations related to MapFish. I look forward to meet you in Barcelona. Cu.
- On Mon 6, between 15h and 18h, I imagine that Eric and Bruno will illustrate the workshop "Solid web mapping with Python" with MapFish examples.
- On Thursday 9, at 11h, you'll have the possibility to make your first steps with MapFish during a tutorial.
- Tuesday 7, 16h30, "GeoExt and MapFish client components: how to migrate ?" will present the migration path from MapFish client to GeoExt.
- Tuesday 7, 16h30, "Where is MapFish going ?" will deliver some insights in the future
- Thursday 9, 9h, the MapFish print module will be introduced.
- Thursday 9, 14h, an integration of MapFish application within the DRUPAL CMS will be presented.
I probably miss some presentations related to MapFish. I look forward to meet you in Barcelona. Cu.
Friday, September 3, 2010
MapFish Release 2.0 is ready !
The MapFish community is proud to announce MapFish 2.0!
The highlights of the release are:
* MapFish 2 comes with GeoAlchemy, and uses GeoAlchemy internally. Among other things, this brings MapFish support for PostGIS as well as Spatialite, MySQL, and Oracle Spatial. See to know more about
GeoAlchemy.
* MapFish 2 is based on Pylons 1.0, the first stable version of Pylons.
* the API of MapFish 2 is incompatible with that of MapFish 1.2, see to know how to migrate your applications.
* the client plugin installs OpenLayers 2.9.1, and GeoExt 0.7 in the application, and does not longer install MapFish Client.
The full list of enhancements and bug fixes can be found in the Release Notes.
To install MapFish 2.0 follow this. And to get a sense about how MapFish can help you check out our quickstart .
Thanks to everyone who contributed to the release, and especially to Tobias Sauerwein who worked on GeoAlchemy and its integration in MapFish.
We're looking forward to your feeback.
The highlights of the release are:
* MapFish 2 comes with GeoAlchemy, and uses GeoAlchemy internally. Among other things, this brings MapFish support for PostGIS as well as Spatialite, MySQL, and Oracle Spatial. See to know more about
GeoAlchemy.
* MapFish 2 is based on Pylons 1.0, the first stable version of Pylons.
* the API of MapFish 2 is incompatible with that of MapFish 1.2, see to know how to migrate your applications.
* the client plugin installs OpenLayers 2.9.1, and GeoExt 0.7 in the application, and does not longer install MapFish Client.
The full list of enhancements and bug fixes can be found in the Release Notes.
To install MapFish 2.0 follow this. And to get a sense about how MapFish can help you check out our quickstart .
Thanks to everyone who contributed to the release, and especially to Tobias Sauerwein who worked on GeoAlchemy and its integration in MapFish.
We're looking forward to your feeback.
Sunday, August 1, 2010
What is MapFish ?
In the last few weeks, I read several mails about MapFish and I think that it is time to try to explain what is MapFish exactly (I already tried one year ago, but without success...).
First of all, it is a development framework. So, if you are not a developper, you can read the next chapter, then have a drink and enjoy the summer.
MapFish for non developper
MapFish is a complete development framework used for the creation of Web Spatial Data Infrastructure. The client components (client means navigator in that context) helps the developper to build Rich User Interfaces. The server components helps the developper to build spatial REST services like geocoding, reverse geocoding, spatial analysis or spatial editing.
MapFish for developper
MapFish server is a Pylons application (or, more precisely a Pylons template).Pylons is a lightweight web framework emphasizing flexibility and rapid development. MapFish basically adds the spatial support to Pylons. If your data are stored in PostGIS, it’s a piece of cake to create spatial REST services for CRUD operations (it’s what is called the MapFish protocol). MapFish server is mainly developped in Python.
MapFish client is an aggregation of several JavaScript libraries. ExtJS is used for creating standard UI components. OpenLayers is used for the map and GeoExt combines the power of ExtJS and OpenLayers. With the creation of the GeoExt library, it makes no sense anymore to have specific Javascript code in MapFish.
If you follow the MapFish Installation and MapFish Quickstart, you’ll see that MapFish prepares everything for you and you don’t have to care about the management of the several libraries that are included within MapFish.
First of all, it is a development framework. So, if you are not a developper, you can read the next chapter, then have a drink and enjoy the summer.
MapFish for non developper
MapFish is a complete development framework used for the creation of Web Spatial Data Infrastructure. The client components (client means navigator in that context) helps the developper to build Rich User Interfaces. The server components helps the developper to build spatial REST services like geocoding, reverse geocoding, spatial analysis or spatial editing.
MapFish for developper
MapFish server is a Pylons application (or, more precisely a Pylons template).Pylons is a lightweight web framework emphasizing flexibility and rapid development. MapFish basically adds the spatial support to Pylons. If your data are stored in PostGIS, it’s a piece of cake to create spatial REST services for CRUD operations (it’s what is called the MapFish protocol). MapFish server is mainly developped in Python.
MapFish client is an aggregation of several JavaScript libraries. ExtJS is used for creating standard UI components. OpenLayers is used for the map and GeoExt combines the power of ExtJS and OpenLayers. With the creation of the GeoExt library, it makes no sense anymore to have specific Javascript code in MapFish.
If you follow the MapFish Installation and MapFish Quickstart, you’ll see that MapFish prepares everything for you and you don’t have to care about the management of the several libraries that are included within MapFish.
Sunday, June 13, 2010
WMTS in OpenLayers
I mentionned in a previous post the release of the OGC WMTS implementation standard.
OpenLayers has just been extended to support this implementation standard. A WMTS layer and a WMTS capabilities have been added and can be used with WMTS compatible servers. The very nice thing is that it supports KVP and REST encoding.
You can find two new examples in the OpenLayers examples: WMTS layer and WMTS capabilities parsing.
Thanks Tim and August for this very nice work.
OpenLayers has just been extended to support this implementation standard. A WMTS layer and a WMTS capabilities have been added and can be used with WMTS compatible servers. The very nice thing is that it supports KVP and REST encoding.
You can find two new examples in the OpenLayers examples: WMTS layer and WMTS capabilities parsing.
Thanks Tim and August for this very nice work.
Saturday, May 29, 2010
MapFish pour les collectivités publiques
Le projet GéoBretagne a démontré la pertinence de l'utilisation de logiciels OpenSource dans le cadre d'infrastructures de données spatiales.
Outre, bien évidemment, Mapfish, des outils comme GeoNetwork ou GeoServer ont permis de remplir les exigences du projet GéoBretagne. Plus d'informations ici.
Outre, bien évidemment, Mapfish, des outils comme GeoNetwork ou GeoServer ont permis de remplir les exigences du projet GéoBretagne. Plus d'informations ici.
Monday, May 10, 2010
Do you want to test MapFish ?
You can use a VMWare image, preconfigured with GIS Software (MapServer, PostGis etc...) on a Debian distribution.
If you don't know where to start, try this workshop.
Thanks to Bruno for the preparation.
If you don't know where to start, try this workshop.
Thanks to Bruno for the preparation.
Sunday, May 9, 2010
From TileCache to WMTS
I love TileCache ! We have created billions of tiles with it (http://map.geo.admin.ch/,http://plan.epfl.ch/, http://map.veloland.ch/, http://coppet.geocommunes.ch/ etc, etc...). The only issue with TileCache is that it's not an official standard.
The OGC has just released, on 2010.04.06, the first version of the WMTS (Web Map Tile Service) implementation standard. And the very good thing is that one part of the standard proposes a RESTFul implementation. I can already hear some comments like 'all this time for that', but now that it exists, it's probably a good idea to use it. I still think that the service oriented architecture (KVP and more fantastic SOAP (have a look at the wmts:BinaryContent XML tag...)) is a non sense, so this article will only focus on the resource oriented architecture. The standard contains a nice sentence: "The RESTful pattern provides the ability to set up conformant WMTS servers simply", so let's have a look if it's possible to use a TileCache tile sets and serve it as RESTFull WMTS .
Layer
The notion of layer is the same in TileCache and WMTS.
Tile Matrix Set
The notion of Tile Matrix Set doesn't exist in TileCache. A Tile Matrix Set is a collection of tile matrices defined at different scales. For one layer, you can define several Tile Matrix Sets, typically if you want to create tiles in various coordinate systems.
Tile Matrix
A tile matrix is a collection of tiles for a fixed scale. The tile organization is not the same in TileCache and in WMTS.
For TileCache, the first tile (0,0) is on the bottom left:

For WMTS, the first tile (0,0) is on the top left:

But, it's quite easy to name the same tile in both coordinate systems. The following conversion functions can be used:
* WMTS.i = TILECACHE.x
* WMTS.j = HeightNumberOfTiles - TILECACHE.y
The notion of scale in TileCache is simply an integer indexing the tile pyramid (from 0 to n). WMTS offers more freedom for the scale and the identifier can be chosen freely. But it's still possible to convert from WMTS to TileCache:
* WMTS.z (or Tile Matrix identifier) = TILECACHE.scale
Style
In WMTS, the style has been defined as mandatory. Not very clever from my point of view. This should be an optional value. But let's add "default" everywhere... And I still don't understand why the style is defined on the layer level.
Redirection from TileCache to WMTS
A TileCache url:
- http://myTileServer/myLayer/15/000/000/000/000/000/002.jpeg
Can be easily redirected to a WMTS url:
- http://myTileServer/myLayer/default/myTileMatrixSet/15/0/0.jpeg
And, in order to use and see the WMTS tiles, OpenLayers, offers, for example, a very convenient class XYZ:
- new OpenLayers.Layer.XYZ("myLayer",
"http://myTileServer/myLayer/default/myTileMatrixSet/${z}/${y}/${x}.jpeg")
The OGC has just released, on 2010.04.06, the first version of the WMTS (Web Map Tile Service) implementation standard. And the very good thing is that one part of the standard proposes a RESTFul implementation. I can already hear some comments like 'all this time for that', but now that it exists, it's probably a good idea to use it. I still think that the service oriented architecture (KVP and more fantastic SOAP (have a look at the wmts:BinaryContent XML tag...)) is a non sense, so this article will only focus on the resource oriented architecture. The standard contains a nice sentence: "The RESTful pattern provides the ability to set up conformant WMTS servers simply", so let's have a look if it's possible to use a TileCache tile sets and serve it as RESTFull WMTS .
Layer
The notion of layer is the same in TileCache and WMTS.
Tile Matrix Set
The notion of Tile Matrix Set doesn't exist in TileCache. A Tile Matrix Set is a collection of tile matrices defined at different scales. For one layer, you can define several Tile Matrix Sets, typically if you want to create tiles in various coordinate systems.
Tile Matrix
A tile matrix is a collection of tiles for a fixed scale. The tile organization is not the same in TileCache and in WMTS.
For TileCache, the first tile (0,0) is on the bottom left:

For WMTS, the first tile (0,0) is on the top left:

But, it's quite easy to name the same tile in both coordinate systems. The following conversion functions can be used:
* WMTS.i = TILECACHE.x
* WMTS.j = HeightNumberOfTiles - TILECACHE.y
The notion of scale in TileCache is simply an integer indexing the tile pyramid (from 0 to n). WMTS offers more freedom for the scale and the identifier can be chosen freely. But it's still possible to convert from WMTS to TileCache:
* WMTS.z (or Tile Matrix identifier) = TILECACHE.scale
Style
In WMTS, the style has been defined as mandatory. Not very clever from my point of view. This should be an optional value. But let's add "default" everywhere... And I still don't understand why the style is defined on the layer level.
Redirection from TileCache to WMTS
A TileCache url:
- http://myTileServer/myLayer/15/000/000/000/000/000/002.jpeg
Can be easily redirected to a WMTS url:
- http://myTileServer/myLayer/default/myTileMatrixSet/15/0/0.jpeg
And, in order to use and see the WMTS tiles, OpenLayers, offers, for example, a very convenient class XYZ:
- new OpenLayers.Layer.XYZ("myLayer",
"http://myTileServer/myLayer/default/myTileMatrixSet/${z}/${y}/${x}.jpeg")
Subscribe to:
Posts (Atom)