osm-ph first mapping party

2009-April-30

OSM Logo

Our very first OSM Philippines Mapping Party @ Tagaytay City.

An OSM Mapping party – is where a group of openstreetmappers and novices descend on an area to map it exhaustively, usually over a weekend. It’s a very social event where people can meet up and talk (usually at a pub) in between mapping sessions.

Finally, opportunity to meet Pinoy OSMers to share mapping techniques and other things over beer.

Details

  • When: Full day of May 16, 2009
  • Where: Tagaytay City
  • Target: map all roads, POIs and tourist attractions. The gameplan is to produce a comprehensive map suitable for basic navigation both for tourists and locals.

tagaytay_cyclemap

Uh oh, I don’t think I’ll be cycle mapping this one.

Be sure to check and edit the wiki if you want to join (or drop me a note here). Some people will be bringing along extra GPS units, so you can join  even if you don’t own one.

This is my first time to participate in OSM where we actually meet and map an area as a group and not only through the mailinglist and OSM usernames.

voltesv
“Let’s volt innnn!!!!”


late biased review of QGIS 1.0 “Kore” part 2

2009-April-26

qgis icon The previous post talked about my 5 favorite feature of QGIS “Kore”. This time, I appeal to the QGIS developers to add a few more features. Once again, this is from user’s POV and I believe these “little” features could make me perform better in my geo-job. :)

5 feature request

Custom key bindings – An option/plugin to customize assignment of shortcut keys to call any QGIS function. Several commands supports this feature like “Zoom to full” (“F”) and “Zoom to selection” (“Ctrl-F”). But AFAIK, you cannot assign other shortcut keys. A Python plugin would be great.

CAD-like digitizing tools – as we acquire more high-res imagery, digitizing features in ultra-detailed resolution is and will still be an enormous task. There are automated techniques, available, but it has it’s limits. We need more CAD-like tools within the digitizing toolbox (such as creating arcs/circles/regular polygons; mirror and array existing objects).

cad digitizing
No, this isn’t QGIS but QCAD :)

Metadata generator – we were always reminded by this rule:

Never trust data without metadata.

Needless to say this is the rule I always break. A good way to get the hang of creating metadata is to integrate a metadata creator tool within QGIS. No I don’t mean the standard where most fields are blank. All we need is a simple model on the “what, where, when, who” of the data. Perhaps DClite4G is a good starting point.

Multiple map views- I was going to propose a plugin to split the main map canvass into multiple views, where we can add independent map layers and vary the zoom levels. But a prototype is already in development. Nice work Aaron!

Bring back the standalone MS Windows installer – When I introduce FOSS-Geo to people, QGIS is the first app I mention.

“Dude! Better try QGIS! Just download and install the latest version.”

The latest windows installer is bundled under the OSGeo4W installer package. The OSGeo4W installer is an excellent way to package several OSGeo apps for MS/Win users. It should make the install process of several geo-apps (QGIS, GRASS, MapServer, etc.) easier.

osgeo4w advanced setup
What packages!?

But it isn’t. Even the “Express Install” asks you to select several packages you might not need (at the moment) to install QGIS. A “not-so-easy-to-install-in-windows” gives the impression that it’s “not-so-easy-to-use”. I know there are several issues (technical and manpower) that limits the release of a single binary installer. There is a workaround, but I still believe a single binary installer is the best way to easily encourage new users.

That’s my top 5 request feature, I hope the developers can take a peak and take interest :). What’s your list? Post them here or even better, add them to the QGIS trac.

Other people’s wishlist:

  • http://sites.google.com/site/eospansite/myqgiswishlist
  • http://wiki.qgis.org/qgiswiki/PythonPluginIdeas

late biased review of QGIS 1.0 “Kore” part 1

2009-April-23

qgis icon
So my favorite GIS app was finally in version 1.0. I have been using this app since version 0.6 and it has improved a lot both in stability and functionality. For me, QGIS is mainly for my daily GIS needs (display data, vector editing, a quick map layout). While bare bones analysis and processing (mostly raster and imagery) are in GRASS GIS.

I finally managed to install QGIS in my Ubuntu Intrepid 64-bit machine. At first, I tried the usual install process:

sudo apt-get update
sudo apt-get install qgis

However, this method doesn’t include all the QGIS python plugin goodies. I had to follow Tim’s advice to get all the required dependencies.

After a brief twirl, I have to say that the developers lived up to QGIS principles of providing an easy-to-use-yet-very-powerful GIS app. I made a couple of notes of what I like about QGIS. This post lists my top 5 favorite feature of QGIS. Well, from a fanboi/user’s (not developer’s) point-of-view.  First, here’s a screenshot of QGIS the first time I load it.

qgis main window

5 favorite feature

Dockable windows - when working with any GIS app, I use the pan/zoom functions the most. I usually don’t need all the toolbars and window panels. Oftentimes, it is waste of valuable screen space. Fortunately, I can remove all the unnecessary toolbars and panels and leave only those I need.

minimal qgisMy minimal QGIS window

Python plug-insPlug-ins, plug-ins and more plug-ins! ArcView calls it extensions and we love the community-generated free ArcScripts. The plug-in framework is not new to QGIS (we already have C-coded plug-ins since time immemorial). Plug-ins are scripts (no compiling is necessary) that provides additional functionality to QGIS to solve a particular (i.e. “Find by attribute”) or a series of task (i.e. “Geoprocessing”). Using Python as the plug-in framework, user-contributed plug-ins remarkably increased. Here’s a compilation of community maintained plugins available.

QGIS pyhton pluginThat’s a lot of plugin!

One of my all-time favorite is CFarmer’s meta-plugin ftools.

GRASS toolbox - one of the catch-on for me when I started using QGIS is the integration of GRASS tools (actually it is just another meta-plug-in, but I think it deserve special mention in my list). The then cryptic world of GRASS modules using CLI can now be accessed via friendly GUI of QGIS. I like QGIS’ approach to making the GRASS modules simple and easy for beginners. As a rule of thumb, GRASS modules within QGIS must:

1. have 3 or less options;
2. be robust so that it doesn’t allow a user to run a module with wrong option

New GRASS modules are added with every release of QGIS, .

qgis grass toolboxThe power GRASS in QGIS

Mapserver and WMS layerMapserver is a great for publishing your map on the web but configuring your mapfile is a very painful process. Using the mapserver plugin, you can create your mapfile in minutes without even opening a text editor. Simply load all your data layers, edit your layer styles within QGIS and save the QGIS project file as a MapServer mapfile . You can then test and view the resulting WMS layer via the WMS layer plugin.   In addition, the WMS layer provides access to any public WMS available.

mapserver export

Create a MapServer mapfile in a GUI

qgis wms layers

Choose and load your favorite public WMS in QGIS

The community – a good software is never good enough without active community support. Among the mailing-list I subscribe, the QGIS community provides an excellent resource for many of my GIS problems.  Solutions are provided both by the developers and users. In the QGIS mailinglist, you don’t get the “RTFM” response although they have an excellent User’s Manual made no other than the community.

qgis website

Got a problem? Ask the community for help.

So that’s my top 5 pick. A lot more is available, check out the detailed visual log for more. Give it a try and tell me what you like best (you will probably have a different list).

In conclusion, do I like the it? You bet! But I want more, I also made a list of what feature should be added in QGIS, that will be another post.


my shell meme

2009-April-14

I’ve seen the shell meme circulating for ages, but never tried it. So here goes,

running:

history|awk '{a[$2]++} END{for(i in a){printf "%5d\t%s\n ",a[i],i}}'|sort -rn|head

at work:

342 cd
283 ls
143 java
124 grass64
107 history
93 qgis
92 gpsbabel
66 ogr2ogr
52 gdal_translate
47 pidgin

It seems I spend a lot of time looking for things and trying to remember the last command. The rest are the daily apps I use at work while chatting with my boss thousand of islands away.

and, at home:

238 wvdial
49 ls
40 cd
32 gpsbabel
25 elinks
22 java
20 sudo
16 ogr2ogr
8 mogrify
6 identify

I always have problems with my dial-up connection, that’s why. elinks is the only browser that can bear with such snail-pace connection.


DIY garmin routable map from openstreetmap data into mapsource (win) and roadtrip (mac)

2009-April-13

OSM Logo

As promised, here’s my follow-up how-to in making installers of OSM Garmin maps. My previous post outlines the process for making a routable map for Garmin GPS using mkgmap. For this post, I will guide you in how you can view the maps in Garmin’s desktop application MapSource and RoadTrip

Building the Garmin map

The routing functionality is now in the trunk version of mkgmap, so this time, we will use the trunk version. I also made a couple of changes suggested by other mkgmap developers.

Get latest trunk svn snapshot, in the terminal type the following:

mkdir mkgmap
cd mkgmap
svn co http://svn.parabola.me.uk/mkgmap/trunk trunk

Build the source

cd trunk
ant dist
java -jar dist/mkgmap.jar

Build the map
The exact command I use is below (remove the “\” and type the syntax in one line):

java -Xmx512m -jar dist/mkgmap.jar --code-page=1252 --tdbfile --gmapsupp \
--latin1 --country-abbr=PHI --country-name=PHILIPPINES --road-name-pois --add-pois-to-areas \
--no-poi-address --family-id=639 --family-name="OSM_PHIL" --overview-mapname=40000001 \
--route --description="OSM_PHIL" /path/to/your/osm/file/philippines.osm

mkgmap will create several files:

  • 63240001.img – the main map
  • 40000001.img – the overview map
  • 40000001.tdb – tdb file

We will use these files to create an installer for MapSource.

mapsource logo

Installer for Windows MapSource
To be able to view the maps within MapSource, we need to create a custom registry configuration. We will place the maps in c:/osm so the registry should instruct MapSource to read the files from this path.

Handcraft a registry information for MapSource

Open a text editor and paste these lines:

REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Garmin\MapSource\Families\OSM_PHIL]
"ID"=hex:7f,02
[HKEY_LOCAL_MACHINE\SOFTWARE\Garmin\MapSource\Families\OSM_PHIL\1]
"LOC"="C:\\OSM\\"
"BMAP"="C:\\OSM\\40000001.img"
"TDB"="C:\\OSM\\40000001.tdb"

regedit_shot

Save the file as 40000001.reg.

If you already saved your maps to c:\osm, you can double-click the 40000001.reg file to save the registry information.

You can now open MapSource to view the maps.

If you want (like me) to share your maps to other Mapsource users, it would be better to make an executable installer. This way, other users can easily install and view the maps within Mapsource and then upload directly to the GPS units.

Prepare an executable installer
I am using WinRar to create the executable file. The executable archive file simply extracts all the map data into c:/osm and then automatically add the registry information in the 40000001.reg file. The following screenshots explains the procedure (warning XP screenshots below):

Right-click on the directory of you map and click “Add to archive”.

Within WinRar’s “General” tab, select “Create SFX archive”.

winrar 1

In the “Advance” tab, click “SFX options” button.

winrar 2

In the “Advanced SFX options” “General” tab, type c:\osm in the “Path to extract” and in the “Run after extraction”, type c:\osm\40000001.reg

winrar 3

Click “OK” and WinRar will create a file with the “exe” extension.

roadtrip logo
For Mac’s RoadTrip
Garmin also has RoadTrip as a Mac version of MapSource. For adding the maps to Mac’s RoadTrip, you can use a simple Python-based app called Gmapibuilder . Just follow the instructions from the above link.

Here is Makati in RoadTrip (I actually prefer RoadTrip’s simpler interface than Mapsource):

roadtrip

Thanks to jan of phroadguide and the mkgmap users and developers for sharing the tips in this how-to.

UPDATE:
1. Changed svn url for trunk.
2. Revised mkgmap syntax and registry