Hi,

> Hi,
>
> I am starting to use mapnik with python and I have two questions:
>
>        1. Is there any datasource for mysql?
>        2. Does exist a way to implement a datasource from python?
>


The short answer is no to both, the longer one:

1. No, but  you can implement MySQL data source in c++ . postgis,input  
can be a good starting point.
2. No, not at the moment. I agree it would be nice to be able to  
create Features/Geometries in Python. \
Cheers
Artem

> Thanks
>
>
> El sáb, 14-06-2008 a las 02:25 +0200, Frederik Ramm escribió:
>> Hi,
>>
>>>> Fred, Image32 does appear to be a pretty basic type
>>>> (yes it's a mapnik class). If you're using C++ at all (or have
>>>> the option to) I'd highly suggest you take a look at CImg...
>>>
>>> I'm using C++ and tend to stick what I already know (which is
>>> GD and ImageMagick) but will check out CImg as well.
>>
>> Ok here's an update on what I've achieved so far.
>>
>> I have successfully used the cairo_renderer to draw onto a cairo  
>> surface
>> which I subsequently rendered onto a new surface with scaling  
>> applied.
>> This gives the desired result, with good quality, but unfortunately  
>> it
>> is very slow (full execution time for rendering a 2° by 2° OSM styled
>> map onto an 800x600 canvas - 15 seconds with cairo compared to 7  
>> seconds
>> with AGG).
>>
>> Actually applying the scaling to the cairo context used internally by
>> the cairo_renderer, instead of scaling the resulting surface like I  
>> do,
>> gains you a second but still the performance makes this unsuitable  
>> for
>> my task.
>>
>> So I went back to the idea of using the original AGG render result  
>> and
>> somehow scale that bitmap before returning it. Unfortunately,  
>> neither GD
>> nor ImageMagick nor CImg have a convenient method to work with the  
>> kind
>> of interleaved data store that backs the Image32 type (GD stores an
>> array of interleaved three-byte pixels and the alpha value is  
>> elsewhere;
>> ImageMagick has 64bit pixels; CImg uses a non-interlaved four byte
>> store, while Image32 is an interleaved four byte store). Somewhat
>> exasperated, I did the ugliest thing and had Mapnik write the image  
>> to
>> disk for me, then called ImageMagick externally to scale the PNG  
>> file,
>> then read it back in - which adds an extra half second to  
>> processing but
>> at least works for testing.
>>
>> Since I don't need top-notch image quality for this corner case where
>> the WMS client requests non-matching width/height, I will perhaps try
>> the homebrew way of simply duplicating or dropping full lines in  
>> the PNG
>> output to achieve the desired height. I have to roll my own PNG  
>> output
>> from Image32 anyway because (unlike cairo which supports callback
>> output) the existing Mapnik code will only create PNG files on disk  
>> and
>> not in memory, where I need them if I want to return them to the  
>> user.
>>
>> If anyone in the know reads this and has some insight to share, do  
>> speak up.
>>
>> Bye
>> Frederik
>>
> _______________________________________________
> Mapnik-users mailing list
> [email protected]
> https://lists.berlios.de/mailman/listinfo/mapnik-users

_______________________________________________
Mapnik-users mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/mapnik-users

Reply via email to