Commit graph

491 commits

Author SHA1 Message Date
Artem Pavlenko
9ba04738d6 + don't expose agg headers 2012-05-04 10:23:49 +01:00
Artem Pavlenko
e23fdb276f + pass scale_factor to vertex_converter 2012-05-02 17:22:54 +01:00
Artem Pavlenko
6d8ce26313 + allow negative offset
+ re-enable affine_transform
2012-05-02 16:30:19 +01:00
Artem Pavlenko
a475b6e0bc + add offset_converter 2012-05-02 15:13:46 +01:00
Artem Pavlenko
77dfac5622 + re-introduce transform on symbolizer_with_image 2012-05-01 16:47:33 +01:00
Artem Pavlenko
a72ee4ba66 Merge branch 'master' into compositing
Conflicts:
	include/mapnik/image_compositing.hpp
	include/mapnik/util/conversions.hpp
	include/mapnik/value.hpp
	src/agg/agg_renderer.cpp
	src/agg/process_line_symbolizer.cpp
	src/agg/process_polygon_symbolizer.cpp
	src/png_reader.cpp
	src/svg_parser.cpp
	utils/svg2png/svg2png.cpp
2012-05-01 12:35:49 +01:00
Artem Pavlenko
f57d2c28f0 + 'direct' image filter support: apply filter on main rendering buffer
(TODO: better user-friendly names)
+ allow empty string e.g image-filters="" (why not?)
2012-04-25 10:54:54 +01:00
Artem Pavlenko
c26ad5706e + move 'clip' property to symbolizer_base
+ support 'clip' accross relevant symbolizer (agg)
2012-04-24 11:10:54 +01:00
Artem Pavlenko
eb16d2867f use src-over as a default comp mode 2012-04-23 16:15:56 +01:00
Artem Pavlenko
a4cdc7a1c0 + make comp_op boost::optional<>
+ use plain pixf when style_level_compositing=true
2012-04-23 15:41:18 +01:00
Artem Pavlenko
03d42e59a5 + allow specifying premultiply flag for src and dst images
+ fix logic in agg_renderer (TODO)
2012-04-20 14:53:11 +01:00
Artem Pavlenko
668d6f2325 image-filters: initial implementation 2012-04-18 12:14:23 +01:00
Artem Pavlenko
5361550e8d + add optional affine-transform converter 2012-04-18 09:45:11 +01:00
Artem Pavlenko
9af11c5ef2 only allocate internal buffer if required 2012-04-18 09:37:02 +01:00
Artem Pavlenko
45b0dd6482 + support smooth conv in polygon_pattern_symbolizer 2012-04-10 15:46:38 +01:00
kunitoki
a902a08aab - added logging to file
- started working on the logger bindings
- cleanups some error reporting with cerr/clog in the library
2012-04-10 00:25:31 +02:00
kunitoki
b60c508c1c - finish thrashing all the useless ifdef MAPNIK_LOG 2012-04-09 21:41:56 +02:00
Artem Pavlenko
2fb00247eb remove unused headers 2012-04-09 12:34:09 +01:00
Artem Pavlenko
c5a27d7398 + use vertex converters 2012-04-09 11:12:34 +01:00
Artem Pavlenko
fdc80ad278 + use BOOST_FOREACH 2012-04-08 12:12:12 +01:00
kunitoki
af201551b8 got rid of old CVS $Id comments kludge in files 2012-04-08 02:45:01 +02:00
kunitoki
1f351e0e09 implement new debug system 2012-04-08 02:20:56 +02:00
Artem Pavlenko
e513b4772d + use vertex_converters 2012-04-06 10:10:20 +01:00
Artem Pavlenko
738ff501fe remove CompositingSymbolizer 2012-04-05 17:04:11 +01:00
Artem Pavlenko
34c984b2b8 + support compositing across all symbolizers
(currently polygon and line symbolizers)
2012-04-05 15:59:11 +01:00
Artem Pavlenko
e7f0e8aac0 + support configurable vertex converter 2012-04-03 19:49:57 +01:00
Artem Pavlenko
6236a63156 + make clip_poly converter optional (default: true) 2012-04-03 16:31:01 +01:00
Artem Pavlenko
cbcb8d6aad + use fusion::vector to pass arguments 2012-04-03 13:40:51 +01:00
Artem Pavlenko
81566a8f80 + use pre-multiplied pixel format in agg_renderer
(de-multiply in end_map_processing())
+ support for compositing at style level
+ image blur (TODO)
2012-04-03 13:10:30 +01:00
Artem Pavlenko
8038561984 + move renderer to agg_helpers 2012-03-28 12:02:03 +01:00
Artem Pavlenko
9840c7df4c Merge branch 'master' into compositing
Conflicts:
	include/mapnik/util/dasharray_parser.hpp
	src/agg/process_line_symbolizer.cpp
	src/image_compositing.cpp
2012-03-26 09:05:02 +01:00
Dane Springmeyer
3f26c439c9 fix marker width/height to mean pixels - which it should have all along - closes #1134 2012-03-23 20:28:12 -07:00
Artem Pavlenko
97eb078adb + re-use renderer (TODO) 2012-03-23 09:34:26 +00:00
Dane Springmeyer
d991427737 formatting 2012-03-22 16:37:24 -07:00
Artem Pavlenko
bc2589960b + add missing files 2012-03-21 17:34:41 +00:00
ldp
1542e3e513 add ignore-placement to MarkersSymbolizer 2012-03-18 22:35:02 +01:00
Artem Pavlenko
66beaaa05b + support smoothing in conv_dash 2012-03-15 10:42:30 +00:00
Artem Pavlenko
70512dc03b + add optional smothing to line_symbolizer
( TODO: conv_dash )
2012-03-15 10:26:53 +00:00
Artem Pavlenko
3e4733c51a + refactor join/cap settings (agg_helper.hpp) 2012-03-14 17:21:04 +00:00
Artem Pavlenko
f1a0887628 + apply smooth converter after clipping and transformations
+ inflate query_extent
2012-03-14 16:12:36 +00:00
Artem Pavlenko
108b99725c + refactor gamma setting logic to avoid code duplication
( agg_helpers.hpp )
2012-03-14 15:45:35 +00:00
Artem Pavlenko
87b22c29b2 + add optional polygon smoothing ( 0.0 < smooth < 1.0 )
using agg_conv_poly1_curve
2012-03-14 15:01:31 +00:00
Dane Springmeyer
93995d7c4b apply mapnik_format.el formatting 2012-03-13 07:56:11 -07:00
Hermann Kraus
2b68cea0a1 Merge branch 'new-xml'
Conflicts:
	include/mapnik/config_error.hpp
	include/mapnik/ptree_helpers.hpp
	src/formatting/text.cpp
	src/libxml2_loader.cpp
	src/load_map.cpp
	src/metawriter_factory.cpp
	src/text_placements/registry.cpp
	src/text_placements/simple.cpp
2012-03-13 11:11:28 +01:00
Artem Pavlenko
254b3c9fa7 Merge branch 'master' into geometry-clipping
Conflicts:
	SConstruct
	include/mapnik/symbolizer_helpers.hpp
	src/placement_finder.cpp
2012-03-09 14:18:41 +00:00
Artem Pavlenko
a763d03110 resolve conflict 2012-03-09 13:33:16 +00:00
Artem Pavlenko
514ec14cc9 + add clipping to polygon/line_pattern_syms 2012-03-09 12:57:14 +00:00
Artem Pavlenko
13ea874585 + inflate query extent to avoid line joining artifacts 2012-03-09 12:55:22 +00:00
Artem Pavlenko
40b9553722 + add clipping to text/shield/markers
Conflicts:

	include/mapnik/symbolizer_helpers.hpp
2012-03-09 12:54:13 +00:00
Artem Pavlenko
c12161bf19 + clip geometries before applying any
transformations.
2012-03-09 12:44:29 +00:00
Hermann Kraus
cd8cfc6527 Improve error messages. 2012-03-08 18:52:53 +01:00
Dane Springmeyer
f1aee03912 forward declare marker so marker_cache api access is cleaner 2012-03-08 08:37:58 -08:00
Hermann Kraus
ad86e9aebc Reenable text meta writers. 2012-03-04 23:25:13 +01:00
Hermann Kraus
b4eddaab24 Move variables from text_placements_info to placement_finder.
Reuse placement_finder objects.
Pass feature to placement_finder.
Refs #1048.
2012-03-04 01:49:01 +01:00
Hermann Kraus
46f80cc6aa Use double instead of int and avoid rounding when possible.
Closes #1078.
2012-02-20 19:32:34 +01:00
Hermann Kraus
2843ff3da8 Fix placement_finder.hpp includes. 2012-02-18 14:03:21 +01:00
Hermann Kraus
bb3ad18c95 Rename starting_{x,y} to center to reflect actual meaning. 2012-02-18 13:07:23 +01:00
Hermann Kraus
7b22d69932 Revert "+ fix shield/text positioning - we still need to floor both text and shield"
floor is removed from position calculation now, resulting in better marker and text matching.
Refs #1078.

This reverts commit 009a1e45a7.
2012-02-17 00:59:20 +01:00
Hermann Kraus
44beaf1bdf Make ShieldSymbolizer variables doubles.
Refs #1078.
2012-02-17 00:03:46 +01:00
Artem Pavlenko
63735982ee + remove const from parameters passed by-value 2012-02-16 15:35:27 +00:00
Artem Pavlenko
009a1e45a7 + fix shield/text positioning - we still need to floor both text and shield
position for consistent rendering.
2012-02-15 23:27:33 +00:00
Artem Pavlenko
6495ea8996 + clip polygons 2012-02-14 18:39:36 +00:00
Dane Springmeyer
0acd2137b8 restore agg renderer clip_box, accidentally disabled in 21d05444 - refs #1075 2012-02-10 15:14:15 -08:00
Dane Springmeyer
8e61d9a6d2 remove used typedefs 2012-02-07 13:42:45 -08:00
Dane Springmeyer
17d13cff67 whitespace fixes - closes #911 2012-02-01 17:53:35 -08:00
Dane Springmeyer
21d05444f7 manual whitespace fix 2012-02-01 17:48:56 -08:00
Dane Springmeyer
07d7d7d537 convert to using feature_ptr rather than const& for renderers 2012-02-01 16:37:05 -08:00
Dane Springmeyer
cf8e036574 warn if non bitmap (svg) files are used for pattern symbolizers as this is not currently supported - refs #1010 and #1045 2012-02-01 12:27:57 -08:00
Artem Pavlenko
b90de4874c Merge branch 'textplacement-merge' into feature-text-merge
Conflicts:
	docs/textrendering.gv
	include/mapnik/building_symbolizer.hpp
	include/mapnik/placement_finder.hpp
	include/mapnik/symbolizer_helpers.hpp
	include/mapnik/text_placements.hpp
	include/mapnik/text_placements_list.hpp
	include/mapnik/text_placements_simple.hpp
	include/mapnik/text_processing.hpp
	plugins/input/shape/shape_utils.hpp
	src/agg/process_shield_symbolizer.cpp
	src/agg/process_text_symbolizer.cpp
	src/cairo_renderer.cpp
	src/grid/process_shield_symbolizer.cpp
	src/grid/process_text_symbolizer.cpp
	src/load_map.cpp
	src/placement_finder.cpp
	src/shield_symbolizer.cpp
	src/text_placements.cpp
	src/text_processing.cpp
	src/text_symbolizer.cpp
	tests/visual_tests/clean.sh
	tests/visual_tests/test.py

Merge herm/textplacement-merge
2012-01-31 11:09:55 +00:00
Hermann Kraus
09459683e9 Update symbolizer helpers for ShieldSymbolizer.
Correctly handle point placement for TextSymbolizer. (Tries each possible placement for each point).
2012-01-29 04:49:02 +01:00
Hermann Kraus
dbc1280731 Process more than one geometry.
Start work on ShieldSymbolizer.
2012-01-26 20:05:38 +01:00
Artem Pavlenko
d1f16bb227 merge textplacement-merge into feature_impl 2012-01-26 13:04:08 +00:00
Hermann Kraus
bdc20f766b Complete symbolizer_helpers.hpp for TextSymbolizer. 2012-01-25 15:44:19 +01:00
Hermann Kraus
3b887972b8 Start work on new symbolizer helpers. 2012-01-23 19:02:35 +01:00
Artem Pavlenko
4b22636f3b initial implementation of multipolygon labeling strategy
based on ordering by bounding box.

TODO : sync with https://github.com/herm/mapnik/tree/textplacement
2012-01-23 16:00:55 +00:00
Hermann Kraus
fdd58903f9 Disable rendering of TextSymbolizer and ShieldSymbolizer.
This avoids breaking compiles with the next changes.
2012-01-22 18:24:28 +01:00
Hermann Kraus
5fd7035527 Move font engine functions from .hpp to .cpp. 2012-01-21 01:47:02 +01:00
Hermann Kraus
21a58b7b7a Add missing includes. 2012-01-20 22:43:05 +01:00
Hermann Kraus
537231f60e Remove glyph symbolizer. 2012-01-19 20:34:09 +01:00
Artem Pavlenko
a6a540cb68 Merge branch 'master' into feature_impl 2012-01-18 09:40:55 -05:00
Artem Pavlenko
fbbd1d4dcf re-enable colorizer support 2012-01-17 14:16:03 -05:00
Artem Pavlenko
b838d17680 remove extra empty lines 2012-01-17 13:32:26 -05:00
Cezary Tarnowski
93ff232ca2 #1023 making gamma power default, making gamma-method awailable for polygon pattern symolizer and stroke 2012-01-13 18:20:03 +01:00
Cezary Tarnowski
53fc770495 #1023 making gamma power default, making gamma-method awailable for polygon pattern symolizer and stroke 2012-01-13 18:20:03 +01:00
Cezary Tarnowski
e7a751987d Merge remote-tracking branch 'upstream/master' 2012-01-13 14:49:59 +01:00
Cezary Tarnowski
afa8ecefc4 Merge remote-tracking branch 'upstream/master' 2012-01-13 14:49:59 +01:00
Cezary Tarnowski
c007a608ff Adding gamma-method to polygon symbolizer 2012-01-12 16:58:10 +01:00
Cezary Tarnowski
c7cfdef8d4 Adding gamma-method to polygon symbolizer 2012-01-12 16:58:10 +01:00
Artem Pavlenko
0eb8e2d246 temp fix to compile FIXME 2012-01-12 10:04:49 +00:00
Artem Pavlenko
30839b4d17 Merge branch 'master' of https://github.com/tarnowsc/mapnik 2012-01-09 12:20:07 +00:00
Artem Pavlenko
838f6872d4 Merge branch 'master' of https://github.com/tarnowsc/mapnik 2012-01-09 12:20:07 +00:00
Cezary Tarnowski
23631d31a8 bugfix - a proper bugfix for rewinding geometry in building symbolizer 2012-01-09 13:17:03 +01:00
Cezary Tarnowski
7b72898832 bugfix - a proper bugfix for rewinding geometry in building symbolizer 2012-01-09 13:17:03 +01:00
Artem Pavlenko
544d834cee Merge pull request #999 from tarnowsc/master
Bugfix for building symbolizer
2012-01-02 04:37:36 -08:00
Artem Pavlenko
883615d454 Merge pull request #999 from tarnowsc/master
Bugfix for building symbolizer
2012-01-02 04:37:36 -08:00
Cezary Tarnowski
68febbdbfb bugfix - if geometry is used twice from cache it will be missing walls in building symbolizer 2011-12-30 12:35:28 +01:00
Cezary Tarnowski
46a15d50bf bugfix - if geometry is used twice from cache it will be missing walls in building symbolizer 2011-12-30 12:35:28 +01:00
Dane Springmeyer
d0e3f683ed Revert "text rendering: only create objects once rather than per geometry part/placement attempt - refs #162"
This reverts commit eaf8d50422.
2011-12-22 15:01:41 -08:00
Dane Springmeyer
681930372f Revert "text rendering: only create objects once rather than per geometry part/placement attempt - refs #162"
This reverts commit eaf8d50422.
2011-12-22 15:01:41 -08:00
Dane Springmeyer
eaf8d50422 text rendering: only create objects once rather than per geometry part/placement attempt - refs #162 2011-12-22 14:48:40 -08:00
Dane Springmeyer
f47365a927 text rendering: only create objects once rather than per geometry part/placement attempt - refs #162 2011-12-22 14:48:40 -08:00
Artem Pavlenko
726cea7ba4 Merge branch 'master' into geometry_cleanup 2011-12-14 14:04:30 +00:00
Artem Pavlenko
ed7abc5c51 Merge branch 'master' into geometry_cleanup 2011-12-14 14:04:30 +00:00
Cezary Tarnowski
4250e5de58 Changing the gamma for better visual effect 2011-12-13 15:40:47 +01:00
Cezary Tarnowski
fbe8829791 Changing the gamma for better visual effect 2011-12-13 15:40:47 +01:00
Cezary Tarnowski
b438a56ada refactoring following comment on pull request 2011-12-13 15:28:18 +01:00
Cezary Tarnowski
79af8fdbc9 refactoring following comment on pull request 2011-12-13 15:28:18 +01:00
Cezary Tarnowski
8bf359451d Adding support for height as expression for building symbolizer 2011-12-09 12:08:50 +01:00
Cezary Tarnowski
c5eb808059 Adding support for height as expression for building symbolizer 2011-12-09 12:08:50 +01:00
Artem Pavlenko
7209988fb0 Simplify geometry model to support: Point/LineString/Polygon
Multi geometries are collections of single geometries
Remove multiple_geometries parameter
2011-12-06 12:53:16 +00:00
Artem Pavlenko
cc60b74921 Simplify geometry model to support: Point/LineString/Polygon
Multi geometries are collections of single geometries
Remove multiple_geometries parameter
2011-12-06 12:53:16 +00:00
Dane Springmeyer
efa1b95cb8 add support for rendering svg icons with point placement in markers symbolizer (originally markers just supported special line placement) - closes #953 - refs #952 2011-11-16 09:56:35 -08:00
Dane Springmeyer
758428a2ca add support for rendering svg icons with point placement in markers symbolizer (originally markers just supported special line placement) - closes #953 - refs #952 2011-11-16 09:56:35 -08:00
Dane Springmeyer
6257ac57c9 sqlite: futher refactoring of sqlite plugin, allowing all tests to pass 2011-11-03 19:51:37 -04:00
Dane Springmeyer
d965bcbeae sqlite: futher refactoring of sqlite plugin, allowing all tests to pass 2011-11-03 19:51:37 -04:00
Artem Pavlenko
a35b9c4eaa add support for fractional text size
( use FT_Set_Char_Size )
NOTE: ensure it works as expected, currently
I see different results from different fonts.
2011-10-28 11:24:08 +01:00
Artem Pavlenko
87c1d126b8 add support for fractional text size
( use FT_Set_Char_Size )
NOTE: ensure it works as expected, currently
I see different results from different fonts.
2011-10-28 11:24:08 +01:00
kunitoki
f1fb0c1939 - fix copyright to 2011 (script to do this will follow) 2011-10-23 15:04:25 +02:00
kunitoki
596757a269 - fix copyright to 2011 (script to do this will follow) 2011-10-23 15:04:25 +02:00
Artem Pavlenko
986edc3c6e Merge pull request #909 from MapQuest/expose-label-collision-detector
Exposed the label collision detector
2011-10-21 12:20:21 -07:00
Artem Pavlenko
c7e1174d6b Merge pull request #909 from MapQuest/expose-label-collision-detector
Exposed the label collision detector
2011-10-21 12:20:21 -07:00
Matt Amos
a2b4f9db59 Use make_shared as suggested by coding guidelines. 2011-10-13 19:34:28 +01:00
Matt Amos
b5c4bb77de Exposed the label collision detector outside the agg_render object
and via Python, allowing detectors to be re-used across renderings.
2011-10-12 01:05:35 +01:00
Matt Amos
3f47de0e81 Fixed bug in shield line placement when dx/dy are used to shift
the label relative to the placement point.
2011-10-12 01:02:28 +01:00
Artem Pavlenko
a88a49960d + update shield-symbolizer to use 'transformed' label extent (#808) 2011-09-25 17:58:13 +00:00
Artem Pavlenko
12072606d6 + fixed bounding box calculation to use transform (#808) 2011-09-23 15:52:32 +00:00
Alberto Valverde
4ff5404a57 added includes for config.hpp (PROJ_ENEVLOPE_POINTS) 2011-09-16 14:35:47 +00:00
Alberto Valverde
4444907855 ported warer warping functionallity to cairo renderer. Closes #887 2011-09-16 14:34:14 +00:00
Alberto Valverde
97431c8de4 made mesh_size configurable 2011-09-16 12:21:21 +00:00
Alberto Valverde
dd5713740d support for other filters other than bilinear when warping rasters. default near scaling is about 20% faster than before. However, for some reason, bilinear is nor about 300% slower 2011-09-16 11:09:08 +00:00
Alberto Valverde
ec11ba8311 fixed calculation of target polygon when warping rasters. Shrinked rasterizer window back to pre r3344 size since it was to mask artifacts due to the badly calculated polygon 2011-09-15 08:29:59 +00:00
Alberto Valverde
e6cb8eb8b3 slightly larger rasterizer window for better quality 2011-09-14 16:25:10 +00:00
Alberto Valverde
66b66d0754 using define for PROJ_ENVELOPE_POINTS 2011-09-14 16:22:23 +00:00
Alberto Valverde
85c165d327 reverted to old calculation of scale_method 2011-09-14 12:36:09 +00:00
Alberto Valverde
a7c12a3765 removed redundant bounds checks (I asuume AGG already makes sure not to write outside the buffer). Moved object creation from inside loop 2011-09-14 11:50:06 +00:00
Alberto Valverde
ad31aa717a better bounds checking 2011-09-14 00:13:46 +00:00
Alberto Valverde
785303f2dc not using coords of center of pixel since it is now in origin coordinates 2011-09-13 23:55:04 +00:00
Alberto Valverde
1edc6ceceb using AGG for interpolating when warping (for real now) 2011-09-13 23:48:55 +00:00
Alberto Valverde
226e382214 projecting map extent before calculating resolution in order to obtain sensible values. Commented out AGG interpolating when warping because it doesn't work. I must have been linking against the wrong thing when developing, sorry, will fix tomorrow 2011-09-13 23:20:51 +00:00
Alberto Valverde
5508af6b76 typo 2011-09-13 17:14:36 +00:00
Alberto Valverde
6ffbd07174 use AGG for interpolation when warping rasters 2011-09-13 15:41:39 +00:00
Dane Springmeyer
6968adaf40 remove unneeded clip 2011-09-13 01:44:08 +00:00
Dane Springmeyer
9bda9c7019 support raster reprojection - adapted from work at https://github.com/albertov/mapnik2/ - nice work alberto and meteogrid - closes #663 2011-09-12 18:41:44 +00:00
Dane Springmeyer
3ad234bce8 early return from rendering text labels if polygon width does not meet minimum threashold - refs #840 2011-09-10 08:50:07 +00:00
Dane Springmeyer
67d7a3a6f0 add alternative line rasterizer that can be enabled to draw faster lines at the expense of dropping short geometries - for thin lines has nicer look but should not be used with think lines - refs #873 2011-09-09 23:45:49 +00:00
Dane Springmeyer
6003a647f3 add needed include for evaluating expressions to prepare for moving feature_style_processor to cpp file 2011-09-01 00:43:46 +00:00
Dane Springmeyer
abcba2bc34 #759 is fixed, revert r3008 2011-07-16 00:25:30 +00:00
Robert Coup
8e8f43e50f Fix incorrect blending of rasters with alpha channel. Use pixfmt_rgba32_plain rather than pixfmt_rgba32, and undo old changes to blender_rgba<>::blender_pix which aren't needed anymore. Thanks @rfw, @cdestigter, @albertov [fixes #759] 2011-07-15 03:59:44 +00:00
Dane Springmeyer
f156e147d3 rollback to using pre r2543 methods for bilinear scaling (non agg) - to be used until #759 is resolved 2011-07-07 21:24:17 +00:00
Dane Springmeyer
476e04c4c7 add gamma to polygon-pattern-symbolizer, useful for avoiding AA affects at tile edges so that global patterns can have seamless alignment 2011-06-28 22:37:35 +00:00
Dane Springmeyer
4dde8e8d9e warning if non svg file passed to markers_symbolizer 2011-06-24 20:34:21 +00:00
Hermann Kraus
8474976353 Prepare for merging "text_placement_info" and "placement". 2011-05-30 01:16:21 +00:00
Dane Springmeyer
3469c20f1c adapt to new svg renderer template 2011-05-17 06:19:41 +00:00
Dane Springmeyer
b578c02c54 make renderer type a template argument of agg svg renderer 2011-05-17 06:18:06 +00:00
Alberto Valverde
d5dafdc2be reverted patch which was committed by mistake 2011-05-12 18:11:16 +00:00
Alberto Valverde
0e0c4aa82c integrated test case from #759 2011-05-12 18:09:03 +00:00
Dane Springmeyer
90fbd6a204 use boost::make_shared to avoid explicit new and ensure fast and exception safe allocation 2011-05-10 21:09:54 +00:00
Artem Pavlenko
53c8225246 + Shield/text misalignment patch from Ldp
( http://trac.mapnik.org/ticket/739 )
2011-05-10 21:05:40 +00:00
Artem Pavlenko
498809dde8 + don't scale shield (scale_factor is applied in agg_renderer<T>::render_marker) 2011-05-09 13:51:50 +00:00
Dane Springmeyer
f925c395e5 apply patch from kevin for #756 2011-05-06 00:33:49 +00:00
Dane Springmeyer
d05b0c539f apply major refactor of RasterColorizer by ben moores from https://github.com/BenMoores/mapnik-trunk/wiki/RasterColorizer - closes #523 2011-05-04 00:20:17 +00:00
Dane Springmeyer
2c275729b1 initialize variables 2011-05-03 21:38:35 +00:00
Dane Springmeyer
157d52e38f add option to collect the total extent of all placement bboxs to enable passing along to metawriters - modified patch from kevin.kreaiser - closes #755 2011-04-30 00:06:27 +00:00
Dane Springmeyer
9da2d701a5 further template the svg_renderer based on pixfmt 2011-04-26 17:38:18 +00:00
Dane Springmeyer
2699ba42d0 avoid unused parameter compiler warnings 2011-04-04 04:35:28 +00:00
Dane Springmeyer
eafac7fc7b comment out currently unused agg renderer headers 2011-04-01 06:14:55 +00:00
Dane Springmeyer
14068cad23 move segment y_order sort to header that can be used by each renderer 2011-03-22 00:02:50 +00:00
Hermann Kraus
714f918332 Fix indentation. 2011-02-28 13:29:39 +00:00
Hermann Kraus
4af0696b9d Add support for multiple placements.
NOTE: In some places indention is not updated to keep this patch readable. This will be fixed in the next revision.
2011-02-28 13:17:46 +00:00
Dane Springmeyer
545960a340 fix point_placement enum checking 2011-02-24 18:05:07 +00:00
Dane Springmeyer
a317c5d051 add 'capitalize' option to text-transform - closes #715 2011-02-21 20:43:26 +00:00
Artem Pavlenko
046d99f3be + remove debug printout 2011-02-02 15:09:54 +00:00
Dane Springmeyer
fd2d9d7ff3 enable aliased lines using stroke-gamma for line_symbolizer - closes #689 2011-02-02 01:46:14 +00:00
Dane Springmeyer
75649b8863 add 'interior' point placement option to point_symbolizer - closes #709 2011-02-01 08:16:32 +00:00
Dane Springmeyer
e803b1c2ec add 'interior' placement option to text_symbolizr - patch from Toby Collet - closes #709 2011-02-01 08:13:08 +00:00
Robert Coup
bea611a185 Fix positioning problem with scale() transforms for SVG symbols. Centering transform applied in the wrong order. Thanks to Toby Collett. 2011-01-31 09:56:31 +00:00
Dane Springmeyer
5bf6efafb0 apply patch from Craig de Stigter for better scaling methods using agg image filters - closes #656 2011-01-27 03:47:54 +00:00
Dane Springmeyer
57f15aa74e forward declare agg:trans_affine and mapnik::marker classes to allow compiling against libmapnik without agg headers - see #703 2011-01-26 09:19:00 +00:00
Robert Coup
386a4f5daf #654 - add support for linear and radial gradients in SVG symbols. Thanks to Toby Collett for the coding & Paul Wicks for funding. 2011-01-26 01:18:40 +00:00
Dane Springmeyer
7955178468 respect alpha of symbolizer for LINE placement as well as POINT and VERTEX placement 2010-12-10 22:31:57 +00:00
Artem Pavlenko
6713df5937 + if avoid_edges=true check 'contains' using un-buffered extent. 2010-11-22 11:25:36 +00:00
Artem Pavlenko
d5f0a497a8 + auto detect paths orientation
+ not need to set clip box on rasterizer it's
  already set (fixes gap when label is overlapping border)
2010-11-10 14:40:05 +00:00
Artem Pavlenko
ab101401cd + simplify geometry implementation
+ removed multiple geometry typedefs
+ use geometry_type
+ revert to storing vertices in vector_vertex
  (previous implementation using std::vector was
   fragmenting heap causing performance issues with large geometries)
+ FIXME: hit_test is broken!
2010-11-03 13:19:15 +00:00
Dane Springmeyer
3011f53205 add support to PointSymbolizer for 'ignore_placement' - #564 2010-10-15 02:15:40 +00:00
Dane Springmeyer
c8d5280b00 only render stroke on markers if it actually has a width 2010-10-15 00:12:51 +00:00
Artem Pavlenko
2f84e31e09 + revert using shield displacement in placement_finder
+ correct shield placement logic
   (TODO: ensure scale_factor works correctly)
2010-10-05 11:41:07 +00:00
Artem Pavlenko
4dbafdcec0 + apply scale_factor to shield/text displacement
+ fix recentering logic
2010-09-30 11:40:24 +00:00
Artem Pavlenko
8163be1cc2 + align text to pixel dim for svg shields 2010-09-27 10:07:21 +00:00
Artem Pavlenko
bbc797aeff + pass scale_factor to text placement 2010-09-27 09:58:30 +00:00
Artem Pavlenko
0727df6319 + recentre svg symbol before applying user transform 2010-09-27 09:58:21 +00:00
Artem Pavlenko
77da818cd9 + recentre SVG symbols before rendering
(todo: maybe better recentre SVGs at loading time)
2010-09-25 12:12:59 +00:00
Artem Pavlenko
71bfe37601 + align text placement to pixel boundary 2010-09-24 12:55:03 +00:00
Dane Springmeyer
c35310445a rename text_convert to text_transform to match css naming convention (also matching enums to css) 2010-09-18 19:10:18 +00:00
Artem Pavlenko
46f9a7188a + don't compensate dx/dy 2010-09-10 13:49:21 +00:00
Artem Pavlenko
acd05cb5cd + align text and shields to pixels 2010-09-10 13:15:34 +00:00
Artem Pavlenko
56bca0d194 + re-use placement for subsequent points 2010-09-10 13:15:06 +00:00
Dane Springmeyer
b307013ba2 add additional support for dynamically drawing ellipses in the markers_symbolizer, now supporting both line/point placement, metawriters for point placement, and width/height/stroke attributes - TODO - reflect in python bindings, buggy matrix transform for ellipses 2010-08-19 17:33:01 +00:00
Hermann Kraus
b6f839b0f1 Calculate exact bounding boxes for GlyphSymbolizer. 2010-08-13 00:51:58 +00:00
Hermann Kraus
7fea0f7a6c Metawriter support for LineSymbolizer and LinePatternSymbolizer 2010-08-12 21:39:29 +00:00
Hermann Kraus
fb4baa4fcf Metawriter support for LineSymbolizer and LinePatternSymbolizer 2010-08-12 19:12:15 +00:00
Marcin Rudowski
bd8f189bd1 fix raster blending, ported r2137, fixing #589 2010-08-12 06:59:35 +00:00
Hermann Kraus
5867aadb66 Metawriter support for ShieldSymbolizer. 2010-08-11 03:25:15 +00:00
Hermann Kraus
de5d191a02 Metawriter support for GlyphSymbolizer. 2010-08-10 12:44:29 +00:00
Hermann Kraus
30470bd52b Metawriter support for TextSymbolizer. 2010-08-10 12:19:19 +00:00
Hermann Kraus
035e99d2f0 Only initialize proj_transform once in metawriter_json_stream. 2010-08-02 12:14:27 +00:00
Dane Springmeyer
e021f27f96 explicitly convert doubles to int to avoid compiler warnings 2010-07-21 00:59:40 +00:00
Artem Pavlenko
c943447509 + fix comment 2010-07-19 11:10:20 +00:00
Artem Pavlenko
8b8e247e62 + add support for background-image attribute
( background image is repeated both vertically
   and horizontally )
2010-07-19 11:10:03 +00:00
Artem Pavlenko
c7770ce6b1 Scaled text of shield symbolizer
(cherry-picked from mapnik-resolution branch)
2010-07-14 13:51:27 +00:00
Hermann Kraus
d5b0432dd7 Many metawriter improvements:
- Easier to configure
- Correct JSON output
- Handling more than one renderer run (writing pre-/postamble is no longer done in constructor/destructor)
- Collect all attributes required by metawriters
2010-07-12 15:27:33 +00:00
Hermann Kraus
9a0bcf23be Added basic infrastructure for metawriter and support for JSON output (limited to PointSymbolizer atm) 2010-07-06 00:37:05 +00:00
Artem Pavlenko
70b2453065 + add explicit support for shield displacement
(NOTE:text displacement is relative shield!)
2010-06-28 21:32:30 +00:00
Artem Pavlenko
9b3809443c + fix naming style in mapnik::Map 2010-06-25 15:23:35 +00:00
Dane Springmeyer
83f91867bc remove raster_symbolizer and line_pattern_symbolizer from agg_renderer, moved to src/agg in r1929 2010-06-24 19:51:51 +00:00
Artem Pavlenko
36928706bb + apply scale_factor in building sym 2010-06-24 16:02:50 +00:00
Artem Pavlenko
b472808fb1 + refactor remaining processing methods in agg_renderer
+ move agg_renderer.cpp to src/agg
2010-06-24 15:57:25 +00:00
Dane Springmeyer
0959f8ef16 + add support to polygon_patter_symbolizer for global pattern alignment in addition to local/feature (default) alignment - closes #203 2010-06-20 22:36:49 +00:00
Dane Springmeyer
74850a4839 break out polygon_pattern_symbolizer 2010-06-20 03:56:03 +00:00
Dane Springmeyer
43bc58f158 break out text symbolizer 2010-06-19 21:01:30 +00:00
Dane Springmeyer
1566b486fa break out agg-based glyph, line, and polygon symbolizers 2010-06-19 20:52:44 +00:00
Dane Springmeyer
fd17b14120 restore rendering of default point_symbolizer square, useful for debugging 2010-06-19 20:32:00 +00:00
Artem Pavlenko
e645338237 + use FT_Stroker to stroke glyphs outlines
(we can have outlined text now!)
+ allow fractional halo_radius
+ TODO: Rename halo_fill to stroke
               halo_radius to stroke-width
+ TODO: Implement proper 'halo' effect
2010-06-16 15:15:13 +00:00
Artem Pavlenko
f7fe6dbf15 + apply opacity and text-opacity 2010-06-15 12:28:06 +00:00
Artem Pavlenko
f43c36daad + separate state mutating svg ops from underlying data
to allow multi-threded access to svg symbols (SVG commands
  are stored in std::vector<vertex_type> )
2010-06-14 16:38:02 +00:00
Artem Pavlenko
30b87400ca + put rasterizer def into sepatate header 2010-06-13 12:03:42 +00:00
Artem Pavlenko
7f03186cdf + don't recentre SVG markers 2010-06-10 16:35:01 +00:00
Artem Pavlenko
b1b730d94c + add middle_point() method
+ fixed 'point' positioning
  in shield_symbolizer
2010-06-10 16:34:52 +00:00
Artem Pavlenko
d39ed1d364 + apply scale_factor in agg_renderer 2010-06-10 14:12:28 +00:00
Artem Pavlenko
48921a412d + refactor (TODO!) 2010-06-08 11:14:31 +00:00
Artem Pavlenko
4a986bc5ff + format 2010-06-08 11:14:23 +00:00
Artem Pavlenko
2b3858df07 + cache SVG marker bounding box 2010-06-08 10:16:31 +00:00
Artem Pavlenko
c500451cd8 + refactor SVG parsing/rendering code into separate logical units
to facilitate multi-threading:
    * SVG data (todo: enforce const)
    * SVG parsing/reading mutable
    * SVG rendering (read-only access to the data)
2010-06-08 10:16:22 +00:00
Artem Pavlenko
f67f6c4ec1 + add transformation matrix support 2010-06-03 12:36:00 +00:00
Artem Pavlenko
bc5730f006 + shield_symbolizer: support SVG images rendering
TODO: This is a first take, proper refactoring required!!!
2010-06-03 12:35:51 +00:00
Artem Pavlenko
5e43fefdba + don't qualify with mapnik:: namespace 2010-06-03 12:35:43 +00:00
Artem Pavlenko
ac468f05c2 + removed commented out lines 2010-06-03 12:34:45 +00:00
Artem Pavlenko
6cc6eac442 + move marker init out of geometry loop 2010-06-02 12:53:23 +00:00
Artem Pavlenko
246731874b + apply 'mapnik-format' to *.cpp *.hpp 2010-06-02 11:03:30 +00:00
Artem Pavlenko
9069df6492 + cleanup 2010-06-02 10:53:13 +00:00
Artem Pavlenko
484dce8943 + impl transform parameter (follow SVG spec) in point_symbolizer 2010-06-01 15:27:19 +00:00
Artem Pavlenko
12b74bc1cc + split agg_renderer implementation into diff
translation units
2010-06-01 13:31:08 +00:00