Commit graph

453 commits

Author SHA1 Message Date
Matt Amos
ceaea9a948 Factored out common implementation of polygon symbolizer. 2013-12-09 20:42:00 +00:00
Matt Amos
dd9584bdd6 Factored out markers symbolizer logic.
It's not ideal - there's still a bunch of "dispatch" objects from
which the common elements could be factored for greater
readability.
2013-12-09 18:50:00 +00:00
Matt Amos
f01953e8f7 Factored out common implementation of raster symbolizer. 2013-12-06 18:09:24 +00:00
Matt Amos
da5574d247 Factored out common implementation of point symbolizer. 2013-12-06 17:30:06 +00:00
Matt Amos
05982c4caf Factored out common code for building symbolizer.
There's a lot of code common between symbolizers which do things
like layout, setup, etc... So it seems sensible to extract the
common operations & loops into a single place which is
independent of the actual renderer.

I've started doing this with C++11 lambdas, although that might
not be the best implementation long term. Should be easy enough
to change, though.
2013-12-06 16:33:26 +00:00
Matt Amos
a76e441174 Factored out common renderer fields.
The idea here is that much of the code in the renderers and the
various `process_*` rendering methods is shared, but this sharing
is obfuscated by the lack of sharing of renderer fields and
methods.

This is the first step in trying to factor out commonalities in
order to simplify the implementation of the renderers and make
them easier to understand and modify.
2013-12-05 16:21:55 +00:00
Dane Springmeyer
e9ca9c8790 symbolizer-expressions replayed against latest master 2013-11-27 22:50:15 -08:00
Dane Springmeyer
64d5153aea Improved support for international text
- Implementation by @herm for GSOC 2012 (http://mapnik.org/news/2012/10/06/gsoc2012-status9/)
 - C++11 port, improvements, optimizations by @artemp
 - Testing and integration with master by @springmeyer
 - Thank you to all the support from @behdad along the way
 - Thanks for help testing @toton6868, @stephankn, @nirvn, @mfrasca, @simonsonc and many others

Refs: #2073,#2070,#2038,#2037,#1953,#1820,#1819,#1714,#1634,#1547,#1532,#1319,#1208,#1154,#1146
2013-11-22 00:06:32 -08:00
Dane Springmeyer
c7a6265869 organize text code in subdirectory 2013-11-07 20:09:22 -08:00
Dane Springmeyer
08fa9fd8ec Merge branch '2.3.x' of github.com:mapnik/mapnik
Conflicts:
	bindings/python/mapnik_building_symbolizer.cpp
	bindings/python/mapnik_debug_symbolizer.cpp
	bindings/python/mapnik_line_pattern_symbolizer.cpp
	bindings/python/mapnik_line_symbolizer.cpp
	bindings/python/mapnik_markers_symbolizer.cpp
	bindings/python/mapnik_point_symbolizer.cpp
	bindings/python/mapnik_polygon_symbolizer.cpp
	bindings/python/mapnik_python.cpp
	bindings/python/mapnik_raster_symbolizer.cpp
	bindings/python/mapnik_shield_symbolizer.cpp
	bindings/python/mapnik_symbolizer.cpp
2013-11-07 09:21:05 -08:00
Dane Springmeyer
0250538149 add support for geometry-transform in pattern symbolizers - closes #2065 2013-11-05 16:40:09 -08:00
artemp
3837c68762 use non-zero filling rule when rasterising lines 2013-10-29 12:26:33 +00:00
artemp
2eaf6a1ead use even/odd polygon filling rule ref https://github.com/mapbox/tilemill/issues/2110 2013-10-28 15:57:35 +00:00
Dane Springmeyer
730f8e36e2 remove dead code 2013-10-23 18:24:35 -07:00
Dane Springmeyer
f14854912c backport ecf8c20938 from master 2013-10-23 18:24:04 -07:00
Dane Springmeyer
ecf8c20938 completely fix (across various g++ versions) clipping regression - closes #2049 2013-10-23 18:09:22 -07:00
Dane Springmeyer
cb04fc0b34 apply bbox clipping fix to shield symbolizer as applied to text in 96fff72837 - refs #2049 2013-10-23 17:41:24 -07:00
Dane Springmeyer
bc2ee11d9a fix text related test failures on ubuntu precise/g++-4.7 - refs #2049 2013-10-23 17:41:15 -07:00
Dane Springmeyer
78f7de16b8 apply bbox clipping fix to shield symbolizer as applied to text in 96fff72837 - refs #2049 2013-10-23 17:39:46 -07:00
Dane Springmeyer
96fff72837 fix text related test failures on ubuntu precise/g++-4.7 - refs #2049 2013-10-24 00:33:26 +00:00
Dane Springmeyer
8272b0b3db remove dead code 2013-10-22 21:13:02 -07:00
artemp
7adee4ab36 c++11 : remove boost::make_shared includes 2013-10-17 15:09:56 +01:00
artemp
3edfc69c81 == c++11
use std::tuple with std::get<>
2013-10-11 12:36:04 +01:00
artemp
7f035f9226 + remove unused vertex tags 2013-10-10 13:43:59 +01:00
Dane Springmeyer
ddf2226b6f merge with branch 2.3.x 2013-10-05 15:37:29 -07:00
Dane Springmeyer
0224ce3019 add support for seamless blurring - closes #1478 2013-10-03 16:37:09 -07:00
Dane Springmeyer
8e9028e931 use std::fabs not fabs 2013-10-03 13:28:42 -07:00
Dane Springmeyer
681f8853d3 pull in changes from master 2013-09-24 22:57:01 -07:00
artemp
09ce29489e use const std::unique_ptr<> instead of boost::scoped_ptr<> 2013-09-20 14:22:58 +01:00
artemp
b315eb2167 + use std::shared_ptr and std::make_shared 2013-09-20 14:01:27 +01:00
Dane Springmeyer
9df4deac73 consistent use of agg::rgba8_pre to construct premultiplied colors - refs #2011 2013-09-19 19:41:46 -07:00
Dane Springmeyer
5b78b6b2dc fix #2011 2013-09-19 19:19:11 -07:00
artemp
ec0bdb21ad Merge branch 'geometry-types' into c++11 2013-09-16 14:18:22 +01:00
artemp
b690015d63 Merge branch 'master' into c++11 2013-09-09 12:32:47 +01:00
Dane Springmeyer
c5dd5487a5 Merge pull request #1966 from mapnik/background-image-comp-op
Map background-image-comp-op and background-image-opacity
2013-09-05 12:25:47 -07:00
artemp
d4b9a48cb1 + geometry::types Exterior/Interior polygon loops 2013-09-03 12:15:31 +01:00
artemp
4f4e2b001e Merge branch 'master' into c++11
Conflicts:
	SConstruct
	benchmark/run.cpp
	bindings/python/mapnik_datasource.cpp
	bindings/python/mapnik_feature.cpp
	bindings/python/python_optional.hpp
	include/mapnik/css_color_grammar.hpp
	include/mapnik/expression_grammar.hpp
	include/mapnik/feature.hpp
	include/mapnik/feature_style_processor_impl.hpp
	include/mapnik/image_filter_types.hpp
	include/mapnik/image_util.hpp
	include/mapnik/json/geometry_generator_grammar.hpp
	include/mapnik/json/geometry_grammar.hpp
	include/mapnik/processed_text.hpp
	include/mapnik/tiff_io.hpp
	include/mapnik/util/geometry_svg_generator.hpp
	include/mapnik/util/geometry_wkt_generator.hpp
	include/mapnik/utils.hpp
	include/mapnik/webp_io.hpp
	include/mapnik/wkt/wkt_grammar.hpp
	plugins/input/shape/shape_datasource.cpp
	plugins/input/shape/shapefile.hpp
	src/expression_grammar.cpp
	src/expression_string.cpp
	src/image_util.cpp
	src/json/feature_collection_parser.cpp
	src/json/feature_parser.cpp
	src/miniz.c
	src/symbolizer_helpers.cpp
	src/tiff_reader.cpp
	src/webp_reader.cpp
	tests/cpp_tests/geometry_converters_test.cpp
	tests/cpp_tests/image_io_test.cpp
	tests/cpp_tests/map_request_test.cpp
	tests/python_tests/image_test.py
	tests/visual_tests/test.py
2013-08-30 09:46:09 +01:00
Petr Dlouhý
69185339a5 offset enabled for LinePatternSymbolizer 2013-08-22 10:35:44 +02:00
Dane Springmeyer
78b4980352 finish exposing mapnik.Feature.from_geojson 2013-07-30 15:45:46 -04:00
Dane Springmeyer
fad9af5263 add support for applying custom comp_op and opacity when blending map background image into background color at render time - refs mapnik/mapnik-support#8 2013-07-25 01:00:38 -04:00
Dane Springmeyer
6269b42ffc iwyu 2013-07-23 18:41:59 -04:00
Dane Springmeyer
4d3ab5e3aa agg_renderer: remove uneeded define of AGG_RENDERING_BUFFER row_ptr_cache<int8u> since it is already hardcoded in agg_renderer_buffer.h and agg_config.h 2013-07-22 14:49:10 -04:00
Dane Springmeyer
f999615cec ensure agg rendering buffer uses proper dimensions since these may become more dynamic in the near future - refs #1478 2013-07-19 01:29:01 -04:00
Dane Springmeyer
8634a04938 add support for drawing all geometry verticies with debug symbolizer mode=vertex and expose in python - closes #1848 2013-05-21 19:21:35 -07:00
artemp
58927b404c c++11
+ replace BOOST_FOREACH with for( : )
+ remove boost/foreach.hpp
+ fix benchmarks (17,18)
2013-04-24 16:40:35 +01:00
Hermann Kraus
fe526fd3d6 Fix PointSymbolizer collision bounding boxes. 2013-03-24 15:50:18 +01:00
artemp
aa122ea907 + local vars locality 2013-03-22 11:54:34 +00:00
Dane Springmeyer
4e6b6d5a62 ensure the line clipping box is padded using scale_factor as well - closes #1767 2013-03-19 16:15:50 -07:00
Dane Springmeyer
7d868558d7 fix a variety of msvc compiler warnings about signed/unsigned implicit conversion 2013-03-15 13:37:48 -07:00
Dane Springmeyer
44c02a10c5 reduce overhead of flexible agg gamma setting per symbolizer - closes #1174 2013-03-14 17:05:06 -07:00