mirror of
https://github.com/mapnik/mapnik.git
synced 2026-02-01 17:36:36 +00:00
sync a few files with master
This commit is contained in:
parent
d2f50a0158
commit
7a6ab9b0ed
@ -408,95 +408,6 @@ struct test8
|
||||
}
|
||||
};
|
||||
|
||||
#include <mapnik/rule_cache.hpp>
|
||||
|
||||
struct test9
|
||||
{
|
||||
unsigned iter_;
|
||||
unsigned threads_;
|
||||
unsigned num_rules_;
|
||||
unsigned num_styles_;
|
||||
std::vector<rule> rules_;
|
||||
explicit test9(unsigned iterations,
|
||||
unsigned threads,
|
||||
unsigned num_rules,
|
||||
unsigned num_styles) :
|
||||
iter_(iterations),
|
||||
threads_(threads),
|
||||
num_rules_(num_rules),
|
||||
num_styles_(num_styles),
|
||||
rules_()
|
||||
{
|
||||
mapnik::rule r("test");
|
||||
for (unsigned i=0;i<num_rules_;++i)
|
||||
{
|
||||
rules_.push_back(r);
|
||||
}
|
||||
}
|
||||
|
||||
bool validate()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
void operator()()
|
||||
{
|
||||
for (unsigned i=0;i<iter_;++i) {
|
||||
std::vector<rule_cache> rule_caches;
|
||||
for (unsigned i=0;i<num_styles_;++i)
|
||||
{
|
||||
rule_cache rc;
|
||||
for (unsigned i=0;i<num_rules_;++i)
|
||||
{
|
||||
rc.add_rule(rules_[i]);
|
||||
}
|
||||
rule_caches.push_back(std::move(rc));
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
struct test10
|
||||
{
|
||||
unsigned iter_;
|
||||
unsigned threads_;
|
||||
unsigned num_rules_;
|
||||
unsigned num_styles_;
|
||||
std::vector<rule> rules_;
|
||||
explicit test10(unsigned iterations,
|
||||
unsigned threads,
|
||||
unsigned num_rules,
|
||||
unsigned num_styles) :
|
||||
iter_(iterations),
|
||||
threads_(threads),
|
||||
num_rules_(num_rules),
|
||||
num_styles_(num_styles),
|
||||
rules_() {
|
||||
mapnik::rule r("test");
|
||||
for (unsigned i=0;i<num_rules_;++i) {
|
||||
rules_.push_back(r);
|
||||
}
|
||||
}
|
||||
|
||||
bool validate()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
void operator()()
|
||||
{
|
||||
for (unsigned i=0;i<iter_;++i) {
|
||||
std::vector<std::unique_ptr<rule_cache> > rule_caches;
|
||||
for (unsigned i=0;i<num_styles_;++i) {
|
||||
std::unique_ptr<rule_cache> rc(new rule_cache);
|
||||
for (unsigned i=0;i<num_rules_;++i) {
|
||||
rc->add_rule(rules_[i]);
|
||||
}
|
||||
rule_caches.push_back(std::move(rc));
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
#include <mapnik/wkt/wkt_factory.hpp>
|
||||
#include "agg_conv_clipper.h"
|
||||
#include "agg_path_storage.h"
|
||||
@ -748,19 +659,8 @@ int main( int argc, char** argv)
|
||||
benchmark(runner,"expression parsing by re-using grammar");
|
||||
}
|
||||
|
||||
{
|
||||
#if BOOST_VERSION >= 105300
|
||||
test9 runner(1000,10,200,50);
|
||||
benchmark(runner,"rule caching using move semantics");
|
||||
#else
|
||||
std::clog << "not running: 'rule caching using move semantics'\n";
|
||||
#endif
|
||||
}
|
||||
|
||||
{
|
||||
test10 runner(1000,10,200,50);
|
||||
benchmark(runner,"rule caching using heap allocation");
|
||||
}
|
||||
// TODO - consider bring back rule cache benchmarks after c++11 is in master
|
||||
// previously test 9/10
|
||||
|
||||
// polygon/rect clipping
|
||||
// IN : POLYGON ((155 203, 233 454, 315 340, 421 446, 463 324, 559 466, 665 253, 528 178, 394 229, 329 138, 212 134, 183 228, 200 264, 155 203),(313 190, 440 256, 470 248, 510 305, 533 237, 613 263, 553 397, 455 262, 405 378, 343 287, 249 334, 229 191, 313 190))
|
||||
|
||||
@ -61,7 +61,6 @@ boost::shared_ptr<mapnik::datasource> create_datasource(dict const& d)
|
||||
PyObject* temp = PyUnicode_AsUTF8String(obj.ptr());
|
||||
if (temp)
|
||||
{
|
||||
|
||||
#if PY_VERSION_HEX >= 0x03000000
|
||||
char* c_str = PyBytes_AsString(temp);
|
||||
#else
|
||||
|
||||
@ -263,23 +263,27 @@ int main ( int argc , char** argv)
|
||||
image_32 buf(m.width(),m.height());
|
||||
agg_renderer<image_32> ren(m,buf);
|
||||
ren.apply();
|
||||
std::string msg("These maps have been rendered using AGG in the current directory:\n");
|
||||
#ifdef HAVE_JPEG
|
||||
save_to_file(buf,"demo.jpg","jpeg");
|
||||
msg += "- demo.jpg\n";
|
||||
#endif
|
||||
#ifdef HAVE_PNG
|
||||
save_to_file(buf,"demo.png","png");
|
||||
save_to_file(buf,"demo256.png","png8");
|
||||
msg += "- demo.png\n";
|
||||
msg += "- demo256.png\n";
|
||||
#endif
|
||||
#ifdef HAVE_TIFF
|
||||
save_to_file(buf,"demo.tif","tiff");
|
||||
msg += "- demo.tif\n";
|
||||
#endif
|
||||
|
||||
std::cout << "Three maps have been rendered using AGG in the current directory:\n"
|
||||
"- demo.jpg\n"
|
||||
"- demo.png\n"
|
||||
"- demo256.png\n"
|
||||
"- demo.tif\n"
|
||||
"Have a look!\n";
|
||||
#ifdef HAVE_WEBP
|
||||
save_to_file(buf,"demo.webp","webp");
|
||||
msg += "- demo.webp\n";
|
||||
#endif
|
||||
msg += "Have a look!\n";
|
||||
std::cout << msg;
|
||||
|
||||
#if defined(HAVE_CAIRO)
|
||||
// save to pdf/svg files
|
||||
|
||||
@ -330,36 +330,40 @@ mapnik.render(m, im)
|
||||
|
||||
# Save image to files
|
||||
images_ = []
|
||||
im.save('demo.png', 'png') # true-colour RGBA
|
||||
images_.append('demo.png')
|
||||
if mapnik.has_png():
|
||||
im.save('demo.png', 'png') # true-colour RGBA
|
||||
images_.append('demo.png')
|
||||
|
||||
# old behavior, now can do 'png8:c=256'
|
||||
im.save('demo256.png', 'png256') # save to palette based (max 256 colours) png
|
||||
images_.append('demo256.png')
|
||||
# old behavior, now can do 'png8:c=256'
|
||||
im.save('demo256.png', 'png256') # save to palette based (max 256 colours) png
|
||||
images_.append('demo256.png')
|
||||
|
||||
im.save('demo64_binary_transparency.png', 'png8:c=64:t=1')
|
||||
images_.append('demo64_binary_transparency.png')
|
||||
im.save('demo64_binary_transparency.png', 'png8:c=64:t=1')
|
||||
images_.append('demo64_binary_transparency.png')
|
||||
|
||||
im.save('demo128_colors_hextree_no_alpha.png', 'png8:c=100:m=h:t=0')
|
||||
images_.append('demo128_colors_hextree_no_alpha.png')
|
||||
im.save('demo128_colors_hextree_no_alpha.png', 'png8:c=100:m=h:t=0')
|
||||
images_.append('demo128_colors_hextree_no_alpha.png')
|
||||
|
||||
im.save('demo_high.jpg', 'jpeg100')
|
||||
images_.append('demo_high.jpg')
|
||||
if mapnik.has_jpeg():
|
||||
im.save('demo_high.jpg', 'jpeg100')
|
||||
images_.append('demo_high.jpg')
|
||||
|
||||
im.save('demo_low.jpg', 'jpeg50')
|
||||
images_.append('demo_low.jpg')
|
||||
im.save('demo_low.jpg', 'jpeg50')
|
||||
images_.append('demo_low.jpg')
|
||||
|
||||
im.save('demo.tif', 'tiff')
|
||||
images_.append('demo.tif')
|
||||
if mapnik.has_tiff():
|
||||
im.save('demo.tif', 'tiff')
|
||||
images_.append('demo.tif')
|
||||
|
||||
im.save('demo.webp', 'webp')
|
||||
images_.append('demo.webp')
|
||||
if mapnik.has_webp():
|
||||
im.save('demo.webp', 'webp') # default quality is 90
|
||||
images_.append('demo.webp')
|
||||
|
||||
im.save('demo_med.webp', 'webp80')
|
||||
images_.append('demo_med.webp')
|
||||
im.save('demo_highest.webp', 'webp:quality=100')
|
||||
images_.append('demo_med.webp')
|
||||
|
||||
im.save('demo_low.webp', 'webp50')
|
||||
images_.append('demo_low.webp')
|
||||
im.save('demo_low.webp', 'webp:quality=50')
|
||||
images_.append('demo_low.webp')
|
||||
|
||||
|
||||
# Render cairo examples
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user