2. Pass resolution to bbox query
3. Use variant<int,double,string> as parameter value e.g in Python:
ds = Raster(file="/path/to/file",lox = 12312.4,.....)
Added extractor facility to work with mapnik::parameter (C++):
mapnik::parameters params;
params["parameter0"] = 123.456;
params["parameter1"] = "123.456"; // initialize with string extract double later
boost::optional<double> val0 = params.get<double>("parameter0");
if (val0)
{
std::cout << *val0;
}
// with default value. NOTE: there is no 'parameter2' in params
boost::optional<double> val2 = params.get<double>("parameter2",654.321);
std::cout << * val2;
//
4. Added Gdal factory method in __init__.py
ds = Gdal(file="/tmp/file.tiff")
bool hit_test(double x, double y, double tol);
2. added image_view(unsigned x, unsigned y, unsigned width, unsigned height)
allowing to select region from image data e.g (in Python):
im = Image(2048,2048)
view = im.view(0,0,256,256)
save_to_file(filename,type, view)
3. changed envelope method to return vy value in datasource classes
4. features_at_point impl for shape and postgis plug-ins
rendering them as labels when using the text or shield symbolisers
(blame my horrible datasets)
* correctly recognise the Postgis "text" data type (it was in
postgisfs.cpp just not postgis.cpp) - my initial workaround to the
above was "SELECT trim(from label) AS label ..." which failed
miserably because it returned a text data type.
Thanks to Robert Coup for the patch!
2. added extra parameter 'estimate_extent'. By default, exact extent will be calulated e.g :
select extent(geom) from table_name;
Sometimes it is more practical (faster!) to use estimated extent
select estimated_extent('table_name','geom');
but it is somewhere around 95% accurate.
Usage:
....
params["estimate_extent"]="true";
....
f = feature(id);
f["name"] = "what is my name?";
boost.put(f,"area",123123.4325);
2. simplified and corrected value class and operators
3. updated input plug-ins to work with new features
4. add text_symbolizer (getting there:)
5. template version of agg_renderer
6. attribute_collector how accepts rules
(to collect attribute names for text labels)