Re: Update of libchamplain version in external dependencies



Hi Brian,

On Tue, Aug 10, 2010 at 19:04, Brian Cameron <brian cameron oracle com> wrote:
>
> Jiří:
>
> On 08/ 9/10 08:54 AM, Jiří Techet wrote:
>>
>> I forgot to mention that. The libmemphis dependency is optional.
>> libchamplain checks libmemphis presence during configure and enables
>> it when it's found. It can be explicitly disabled with
>> --disable-memphis - in that case only the memphis renderer is not
>> available, the rest of libchamplain works normally. libmemphis
>> packages exist for Debian and Ubuntu:
>
> I understand that libmemphis is an optional dependency, but I would
> be interested to have a better understanding of what libchamplain
> features are enabled when it is built with libmemphis.  In other
> words, what is the difference building libchamplain with and without
> libmemphis?  What value does libmemphis add?

first some theory how libchamplain map sources work. libchamplain can
use different map sources to load tiles from - these can be loaded
from the web (e.g. tiles provided by OpenStreetMap), from persistent
cache (previously loaded tiles stored on harddisk), from temporary
cache (stored in memory only), from a single file, etc. So map sources
answer the question "where the tile data are loaded from". Each map
source has assigned a renderer - renderer answers a question "how to
generate a tile from the input data" (provided by the map source).
Currently we have 3 renderers:

* ImageRenderer - generates tiles from binary image data such as png, jpg, ...
* ErrorTileRenderer - used as a fallback renderer when no real data is
available to generate an empty tile with red X in the middle
* MemphisRenderer - generates tiles in real time from OpenStreetMap
xml vector data

So back to your question the answer should be clear now - you won't be
able to generate tiles directly from OpenStreetMap vector data using
MemphisRenderer. There are currently two map sources that are
primarily meant to be used with MemphisRenderer - FIleSource (data
loaded from a single file) and NetworkBboxTileSource - a map source
loading vector data from
http://api.openstreetmap.org/api/0.6/map?bbox=%f,%f,%f,%f (where the
last four numbers specify the bounding box).

I would describe the current state of local rendering as "technology
preview" - we have a demo application that uses it but both the map
sources and the renderer would have to be improved to provide
comparable results to the output of mapnik-rendered tiles and to be
able to generate tiles in real time for huge maps. So in my opinion
disabling memphis support for now wouldn't cause any harm to other
applications because as far as I know there are none that use the
memphis rendering feature of libchamplain.

Jiri

>
> Brian
>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]