About this blog

Thursday, March 17, 2011

Welcome to Python code blog. Most likely, I think you reach this blog by searching info related to QGIS or Python. I hope you will find the blog useful.

Background

This is a blog about programming in Python. Or I should say it is about the problems that I encountered in creating QGIS Plugin with Python script. I am working in a mobile network company as an RF Engineer. My team started a project to port an old in-house GIS program written in Borland C++ to QGIS. As a telecom engineer, I try to use my limited programming skill to start the project.

In general, radio network planning team will have coverage planning tools such as Mentum and Atoll to assist their planning activities. The tools are quite expensive and license controlled. If we just want to display site information on GIS platform, Mapinfo is usually used. Mapinfo info is good and easy to use, but it is not free as well. Therefore, we try to find a suitable open-source platform to replace our old GIS tools.

Googling the web, we found several suitable GIS tools : MapWindow, Udig and QGIS. While all 3 GIS apps support programming or plug-ins, they are walking in different paths. MapWindow goes in dot net approach. If you are familiar with dot net and ActiveX, MapWindow may suit your need. Or if you are a Java programmer, you should consider Udig seriously. Since I am not good at programming, I choose an easier path of Python scripting approach.

After kick-off, I am almost submerged in the sea of QGIS, Python, PyQt, GIS file format and of course debugging process. It is quite difficult to remember everything without write it down clearly, especially to a "part-time programmer" like me. And I think it would be good to share the info to someone who needs to write QGIS plug-in in Python.

Without formal training or programming background, most of the codes and info shared are learnt by googling the web and wild-guess. So please accept my ignorance and your comments will be highly appreciated.

So you may ask what is the function of plug-in you are going to write? Screen captures are attached to give you some ideas:



Display of site inform on a map




Display signal level of drive test result


MP