KompazzVG – An Open source OpenVG implementation

Posted in kompazz, kompazzvg, Linux, navigation by Karthik Murugesan on March 25, 2008

For my Kompazz project, I was looking for an open source 2D graphics rendering engine that can render high quality vector graphics images and can support both software and hardware based rendering. But after googling for quite a long time, I found, Cairo and AGG are the only implementations that can cater my requirements.

While Cairo can support both hardware and software based rendering, Cairo’s software renderer performance is really very bad. While the AGG’s software renderer can provide a decent performance, AGG doesnt support any hardware based rendering.

Since the initial versions of the Kompazz will only use the software based renderers, I decided to go with AGG but I wanted the flexibility of using hardware based renderer later. So instead using AGG directly, I have decided to create a new project KompazzVG, which will be an opensource OpenVG implementation based on AGG. Currently KompazzVG will not be a complete implementation of OpenVG and I will implement only the features/APIs required for my Kompazz project.

As usual, I am open for any suggestions/contributions.


Announcing Kompazz project

Posted in kompazz, Linux, navigation, openmoko by Karthik Murugesan on March 25, 2008

Today I am kickstarting my first open source project Kompazz and will work on it during my free time.

Kompazz is an opensource personal navigation system (targeted for both automobiles and pedestrians) that can run on any linux based device and will support both offline and connected navigation mode. In offline navigation mode, the maps will be rendered using the vector data stored locally in the device/SD Card similar to any GPS car navigation device and in connected navigation mode, the maps will be rendered from the map servers like OpenStreetMap or from any of GYM (google, yahoo or microsoft) maps etc., similar to Google Maps in Iphone.

I expect to implement the following features in the initial version of kompazz:

  1. High quality 2D Map rendering engine.
  2. Touch Screen based UI
  3. Support only offline navigation mode.
  4. Support for overlays.
  5. Support multiple map formats and should be easy to add new map formats
  6. Capable of communicating with different GPS devices and should be extendable.
  7. Optimized Routing Engine
  8. Voice Guidance and multi-lingual support
  9. Support POIs and Waypoints
  10. Focus only automobiles navigation.

I will blog you the details as things progresses further.

For those interested in the project, here is the link

How Google Maps works

Posted in navigation, PND by Karthik Murugesan on November 29, 2007