Difference between revisions of "OSGeo Cartographic Engine"
Jump to navigation
Jump to search
Line 23: | Line 23: | ||
* Label placement code: | * Label placement code: | ||
− | ** Mapserver code | + | ** Mapserver [http://trac.osgeo.org/mapserver/browser/trunk/mapserver/maplabel.c labeling code] (MapServer License, C language) |
− | ** GRASS [http://trac.osgeo.org/grass/browser/grass/trunk/vector/v.label.sa v.label.sa] | + | ** GRASS [http://trac.osgeo.org/grass/browser/grass/trunk/vector/v.label.sa v.label.sa] (GPL, C language) |
+ | * Color management: | ||
+ | ** MapGuide, [http://trac.osgeo.org/mapguide/browser/trunk/MgDev/Server/src/Services/Feature/FeatureNumericFunctions.cpp CalculateDistribution] and [http://trac.osgeo.org/mapguide/browser/trunk/MgDev/Common/PlatformBase/Data/Color.cpp Color] (LGPL.C++) | ||
+ | * Stylization: | ||
== License == | == License == |
Revision as of 00:50, 7 April 2008
Motivation
There are plans about new cartographic tools (map composer) for QGIS, as well as for GRASS. We suggest to develop a joint library for the various functions which could be shared across GRASS, QGIS and other projects with bindings to Qt, Python etc. The GUI part will be done within the individual software projects.
Functionality
Shared functions may include
- break for classes (various algorithms)
- histogram analysis
- color ramps
- RGB and possibly CYMK support (aka color transformations) etc.
- Algorithms for intelligent label placement
- Symbology management
Programming Language
- C? C++?
Existing code to be recycled
There will be code in GRASS, QGIS, the Python Cartographic Library (http://zcologia.org/cartography) and other sources which could be integrated (check license compatibility).
- Label placement code:
- Mapserver labeling code (MapServer License, C language)
- GRASS v.label.sa (GPL, C language)
- Color management:
- MapGuide, CalculateDistribution and Color (LGPL.C++)
- Stylization:
License
It is proposed to license the OSGeo Cartographic Library under LGPL. The license needs to be GPL compliant.
Interested people
- Markus Neteler (proposer)
- Horst Düster
- Martin Landa
- Marco Hugentobler
- Frank Warmerdam