67 Commits

Author SHA1 Message Date
Dane Springmeyer
341db51aa7 finish wrapping boost includes to suppress warnings - add agg wrapper - refs #2907 2016-03-09 16:42:15 -08:00
artemp
8c6bf0eef6 update copyright notice 2015-06-16 12:49:16 +02:00
Jiri Drbalek
76b7466719 fix rendering raster without scaling 2015-06-08 17:31:56 +00:00
Blake Thompson
51172c8fdf Move image_data.hpp to image.hpp and renamed most everything from image_data to image alone. This might lead to the need to clean up some variables that are currently named image through out the code at some time, but I think in the long term is much better as image is a better name for the base class. 2015-01-22 11:39:37 -06:00
Blake Thompson
22a384ef33 Moved image_data_rgba8 to image_rgba8. Ref #2633 2015-01-21 20:31:02 -06:00
Blake Thompson
93f835177b Removed all the code for the previous type of image and image_32. Ref #2633 2015-01-21 17:57:16 -06:00
Blake Thompson
badb0c9a97 This is a complete removal of code that utilizes image_32 in the library. It is a sweeping change that does some of the following:
* Changes all agg_renderers to use a image_data_any variant (only image_data_rgba8 is implemented currently)
* Changes the marker and marker_cache to use image_data_any images
* Changes the symbolizers so that they must be aware of the source data type they are attempting to render and the render type that is expected to be rendered into.
* Moves many utilities into image_utils, that were previously in image_32.

The kicker is that this still isn't working perfectly yet, but I am commiting so I don't have tears in case everything is lost on my computer.

Ref #2633
2015-01-20 18:30:10 -06:00
Dane Springmeyer
364fb4961b fix handling of premultiplied pixels during rendering 2015-01-14 21:04:05 -08:00
Blake Thompson
202a0e8e5f Added a lot of premultiply_alpha functions to attempt to have proper premultiplication of data prior to compositing. There still seem to be some errors in the resulting images, but I am not quite sure what they are yet. 2015-01-14 18:29:00 -06:00
Blake Thompson
4184f75011 Moved premultiply and demultiply out of image_32 and other parts of the code. The image_data object is now responsible for keeping track of its own premultiplied_alpha status. Created a new utility method in image_util to preform premultiplication.
Added visitor pattern to several different methods as well to prepare for image_data_any including compositing.

Ref #2633
2015-01-14 12:42:30 -06:00
artemp
38da080f82 make concrete image_data type names more expressive and explicit about color channels/depth:
image_data_32 -> image_data_rgba8
image_data_8  -> image_data_gray8
image_data_16 -> image_data_gray16
image_data_float32  -> image_data_gray32f

NOTE: currently image_data_gray16::pixel_type = std::int16_t (signed 16 bit int) to match GDAL
should we support unsigned types?
2014-12-04 11:02:42 +01:00
artemp
333965b588 update copyright year 2014-11-20 15:25:50 +01:00
Dane Springmeyer
aaae8b1cba optimize raster rendering when not resizing 2014-05-15 23:38:47 -07:00
Matt Amos
f01953e8f7 Factored out common implementation of raster symbolizer. 2013-12-06 18:09:24 +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
198dbcd4ca fix raster alignment post #1748 2013-03-06 17:53:13 -08:00
Dane Springmeyer
c36795e0a9 respect both sx and sy in setting up affine transform for raster scaling since they may be different - closes #1748 2013-03-06 17:41:20 -08:00
Dane Springmeyer
e16567fecb fixup std:: prefixing of cmath functions - closes #1694 2013-01-17 13:53:48 -08:00
Dane Springmeyer
32760318a4 iwyu 2013-01-03 23:19:54 -08:00
Dane Springmeyer
42661cf6e4 wrap long code lines 2012-10-20 16:20:32 -07:00
Dane Springmeyer
8674e463a6 premultiply before image scaling - closes #1508 (at least for gdal.input) and refs #1498 2012-10-02 21:50:42 -07:00
Dane Springmeyer
798b101f0c finish #1512 and adjust tests to use new parameter 2012-10-01 17:09:28 -07:00
Dane Springmeyer
ef28a1db80 cleanup includes in rule/feature_style_processor and move code to rule.cpp and raster_symbolizer.cpp 2012-10-01 15:01:12 -07:00
artemp
3ffe8ec21c + add premultiplied_alpha flag to mapnik::raster 2012-09-28 16:43:05 +01:00
Dane Springmeyer
1af2faf56b formatting 2012-09-25 14:52:32 -07:00
Dane Springmeyer
2a3a402f5d finish fixing pixel alignment for raster rendering in cairo - closes #1471 2012-09-12 13:25:40 -07:00
artemp
8cb2ce41ac raster scaling issue
+ fix rasterizer polygon to be equal to target image
+ align raster to pixel bouyndaries (?)
  ( fixes grey border issue - #1471)
2012-09-12 14:41:27 +01:00
Dane Springmeyer
3823890b40 rollback 34c3128b0cea7, move 'scaling' to proper enum, and move image_scaling functions to new cpp/hpp 2012-07-06 16:45:58 -07:00
artemp
34c3128b0c + use Map::scale_factor_ 2012-06-29 12:30:36 +01:00
Artem Pavlenko
2c876c3a58 + premultiply raster (process_raster_symbolizer) 2012-06-18 18:52:48 -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
8ae867f6de default values for composite args to maintain api compatibility 2012-05-11 15:19:05 -07:00
Artem Pavlenko
7380a6a001 + fix raster_symbolizer: add x/y dst args to composite 2012-05-11 10:55:58 +01:00
Artem Pavlenko
c469a63615 + use standard compositing ops (process raster symbolizer) 2012-05-10 18:17:14 +01:00
Artem Pavlenko
aad7c5e384 + implement compositing for text
+ refactor image_32
2012-05-09 12:39:23 +01:00
kunitoki
af201551b8 got rid of old CVS $Id comments kludge in files 2012-04-08 02:45:01 +02:00
Dane Springmeyer
17d13cff67 whitespace fixes - closes #911 2012-02-01 17:53:35 -08:00
Dane Springmeyer
07d7d7d537 convert to using feature_ptr rather than const& for renderers 2012-02-01 16:37:05 -08:00
Artem Pavlenko
fbbd1d4dcf re-enable colorizer support 2012-01-17 14:16:03 -05:00
Artem Pavlenko
0eb8e2d246 temp fix to compile FIXME 2012-01-12 10:04:49 +00:00
kunitoki
596757a269 - fix copyright to 2011 (script to do this will follow) 2011-10-23 15:04:25 +02: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