Commit graph

1506 commits

Author SHA1 Message Date
Dane Springmeyer
5b61c093e5 initialize grid buffers to std::numeric_limits<int>::min() and use that value to mean no-hit or non-interactive pixels - closes #1065 2012-06-23 22:41:07 -04:00
Dane Springmeyer
39bae3825e remove plugin usage of lexical cast - refs #1055 2012-06-22 16:49:53 -04:00
Dane Springmeyer
eb4740b50f fix behavior of compositing via python api now that we have premultiplication issues sorted out in core - refs #1262 and #314 and #1211 2012-06-21 15:44:57 -04:00
Dane Springmeyer
21a109790e demultiply the correct buffer (for style-level compositing and opacity) - refs refs #1262 and #314 2012-06-21 15:38:06 -04:00
Dane Springmeyer
af519a41a2 use the current buffer in markers, building, shield, and line pattern symbolizers to ensure that style level opacity and compositing work - refs #1262 and #314 2012-06-21 15:19:45 -04:00
Dane Springmeyer
9dbfb786a9 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-21 14:57:59 -04:00
Dane Springmeyer
8909c13e98 print name of unloadable tiff file 2012-06-20 20:03:08 -04:00
Artem Pavlenko
2201eb6941 Merge remote-tracking branch 'origin/master' 2012-06-20 10:07:10 -04:00
Artem Pavlenko
eba3a88388 + agg_pixfmt_rgba.h : impl blend_color_hspan_alpha
+ agg_renderer_scanline.h : add support for setting alpha
+ process_polygon_pattern_symbolizer.cpp : setting variable opacity
2012-06-20 10:03:24 -04:00
Dane Springmeyer
10c6dc6fcb ensure the composite operation also applies to the 'fast' line rasterizer method - refs #1262 2012-06-19 17:53:59 -04:00
Tom MacWright
aa5a726b92 Rename color-spin composite operation to colorize alpha
to make it less confusing alongside actual color manipulation
modes.
2012-06-19 17:16:25 -04:00
Dane Springmeyer
48a543b5d5 implement style-level opacity - closes #314 2012-06-19 15:10:28 -04:00
Dane Springmeyer
4e16618771 clean up coda comments 2012-06-19 08:43:15 -04:00
Dane Springmeyer
3272707548 premultiply marker images once, before caching - refs #1262 2012-06-19 08:36:03 -04:00
Artem Pavlenko
65156a59ed + read opacity from .xml (polygon_pattern_symbolizer) 2012-06-18 18:53:41 -04:00
Artem Pavlenko
2c876c3a58 + premultiply raster (process_raster_symbolizer) 2012-06-18 18:52:48 -04:00
Artem Pavlenko
a01e1b3b14 Merge remote-tracking branch 'origin/master' 2012-06-18 18:52:06 -04:00
Artem Pavlenko
c5864453a0 + only premultiply src 2012-06-18 18:50:32 -04:00
Dane Springmeyer
62b7a76f29 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-18 18:47:42 -04:00
Dane Springmeyer
751d246f3c move agg rasterization to use and expect consistently premultiplied buffers - refs #1262 2012-06-18 18:47:30 -04:00
Artem Pavlenko
9b61c0effe Merge remote-tracking branch 'origin/master'
Conflicts:
	deps/agg/include/agg_pixfmt_rgba.h
	include/mapnik/image_compositing.hpp
	src/cairo_renderer.cpp
	src/image_compositing.cpp
2012-06-18 14:36:15 -04:00
Artem Pavlenko
c71944bf32 + use HSV color space (as in GIMP)
+ rename 'luminosity' to 'value'
2012-06-18 14:30:01 -04:00
Tom MacWright
f6c10bbb7e Add color_spin composite operation. 2012-06-18 11:10:04 -04:00
Artem Pavlenko
dc89f6fac4 Merge remote-tracking branch 'origin/master' 2012-06-17 15:21:27 -04:00
Artem Pavlenko
14d365d572 + hue, saturation, color and luminosity blending modes (HSL based)
(http://en.wikipedia.org/wiki/Blend_modes#Hue.2C_saturation_and_luminosity)
2012-06-17 15:19:29 -04:00
Artem Pavlenko
6281dec04b + add missing headers 2012-06-17 15:16:13 -04:00
Dane Springmeyer
998bf593ef svg parsing: support empty paths and avoid leaking file descriptors in the case of invalid paths - closes #1256 2012-06-16 23:54:14 -04:00
Dane Springmeyer
014fe26f70 Merge branch 'master' of github.com:mapnik/mapnik into copy-grid-features 2012-06-16 17:29:45 -04:00
Dane Springmeyer
d0b838b7a4 Merge branch 'master' of github.com:mapnik/mapnik 2012-06-16 15:50:59 -04:00
Dane Springmeyer
0516c2f59a amend cd7ad3e15e by avoiding use of setjmp which does not compile with latest png (as per #772) - see also #1258 2012-06-16 15:50:46 -04:00
Dane Springmeyer
bd7ad7cd3c address #1198 by moving away from caching grid features and (back) to copying attributes - also roll back to passing feature_impl& rather than feature_ptr (which is now unneeded) 2012-06-15 22:17:26 -04:00
Dane Springmeyer
00853a118c expand clipping box for lines to avoid trimmed edges - TODO - make sensitive to line width - refs #1215 2012-06-15 15:37:08 -04:00
Dane Springmeyer
d33496baa7 split up code that handles datasource plugin registration 2012-06-13 19:25:59 -04:00
Mickey Rose
1e3c48afb1 split parse_transform.hpp, set dynamic transform expression from python 2012-06-07 17:06:45 +02:00
Artem Pavlenko
03e6f9d023 Merge pull request #1245 from simonsonc/png-exceptions
Catch and throw PNG exceptions - fixes #1213
2012-06-07 04:00:40 -07:00
Artem Pavlenko
11c34b1599 Merge branch 'transform_expr' of https://github.com/mirecta/mapnik 2012-06-07 10:20:05 +01:00
Dane Springmeyer
957c40f763 move to int32 for grid rendering buffer - closes #1196 2012-06-06 16:36:38 -07:00
Carl Simonson
cd7ad3e15e Catch and throw PNG exceptions - fixes #1213
The png library uses setjmp/longjmp to throw exceptions when reading. If this
is not set up, the png library calls abort(). This change handles the errors
and throws a C++ exception instead.

This issue was found by testing images from pngsuite at
http://www.schaik.com/pngsuite/. These images are included and a unit test was
added to test both images that should be successful and images that should
throw an exception.
2012-06-06 17:52:41 -05:00
Mickey Rose
bd9609c370 new feature: transform expressions are now dynamic
(cherry picked from commit 173c402b5c142310087246b0ea54dbec54edcac8)

Conflicts:

	include/mapnik/vertex_converters.hpp
	src/agg/process_markers_symbolizer.cpp
	src/agg/process_point_symbolizer.cpp
	src/agg/process_polygon_pattern_symbolizer.cpp
	src/load_map.cpp
2012-06-06 17:34:26 +02:00
Mickey Rose
46c2d1c710 add operators for computing the envelope of a transformed box2d
(cherry picked from commit 9ad342cbed150948561c08e98957bc014dedc7f3)
2012-06-06 17:34:02 +02:00
Dane Springmeyer
eb779b1580 only link libjpeg if we are building with jpeg support 2012-06-04 15:23:08 -07:00
Dane Springmeyer
11e81fdb03 finish exposing markers symbolizer in python - closes #612 2012-06-04 13:42:51 -07:00
Dane Springmeyer
f3073f3693 agg/grid renderers - match cairo by using buffered detector dimensions for placement_finder collision tests 2012-06-04 13:41:35 -07:00
Dane Springmeyer
c8c2d98c0e avoid compiler warnings with msvc 2012-06-04 11:36:27 -07:00
Dane Springmeyer
857a6950f7 fix warning message for pending features for markers 2012-06-04 11:11:29 -07:00
Artem Pavlenko
024ebfdfe3 + better not to use errno (via perror) for std::iostreams
(it works with gcc and friends but non-standard)
2012-06-01 12:19:42 +01:00
Artem Pavlenko
90c3415d9b + don't premultiply pattern source
+ cleanup
2012-05-31 13:26:16 +01:00
Artem Pavlenko
500f57cf60 + make vertex() and rewind() methods const
+ remove unused coord_transforms
+ rename coord_transform2 to coord_transform
2012-05-31 12:13:09 +01:00
Artem Pavlenko
6e23b64244 + don't draw 'frame' to match AGG renderer output 2012-05-30 16:29:39 +01:00
Artem Pavlenko
f4539474fc + scale_factor is 1.0 in cairo renderer
TODO: should consider using variable scale_factor as in AGG
2012-05-30 16:27:55 +01:00