You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thomas Bonfort edited this page Apr 6, 2012
·
1 revision
This page documents the rendering plugin implementation status for MapServer version 6.0. To date work has accomplished primarily by Thomas Bonfort with the exception of the KML and OpenGL work.
What Works:
create image function (into an imageObj)
notes...
basic vector API is in place (e.g. draw line, fill polygon, etc...)
Cairo Graphics is implemented in trunk
AGG is minimally implemented in a sandbox
KML SoC work uses this API
OpenGL is minimally implemented in trunk (status?)
basic text API is in place
performance concerns regarding font handling
per glyph or per string?
symbols support works for the most part
exception in PIXMAP symbols
Remaining Tasks:
implement lazy PIXMAP loading
write our own image loaders (into an imageObj), this is part of the rendering API
using libpng, libjpeg and something for GIF
drivers could choose to implement their own (e.g. GD)
write our own image writers (from an imageObj), again, this is part of the rendering API
using libpng, libjpeg and something for GIF
drivers could choose to implement their own (e.g. GD)
Thomas has implemented PNG and JPEG writers already, minus color pre-preocessing and some other output optionss
raster API implementation
how to deal with potentially different image buffers (e.g. GD vs. everything else)?
implement color pre-processing
quantization
is there still a need for a partial palette?
existing renderer re-writes
GD
vector drivers (PDF/SVG/Flash), may, in some cases, be replaced by Cairo
symbol API gaps
use an imageObj instead of a gdImagePtr
vector API gaps
polygon fills using a tile
hatching support
possibility exists to create a hatch generator (e.g. all the lines) and we'd pass those to the renderer
GD driver has code to compute the lines, but they aren't clipped
remove GD dependencies from certain functional areas, specifically scalebar, legend and reference map generation
embedding may be difficult, however, if the symbolObj changes to use imageObj's for PIXMAP symbols then the current process can probably be retained