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
Blake Thompson
7a16ebe7fa
Merge remote-tracking branch 'origin/image' into release/image_data_any
2015-01-12 14:51:08 -06:00
Dane Springmeyer
2747fd5329
fix python bindings after #2629
2015-01-08 17:38:22 -08:00
Dane Springmeyer
049be27b1e
fix compile when building against pycairo headers
2015-01-08 16:35:55 -08:00
Dane Springmeyer
fbecd5ff33
always pass image_data to save_to_string/file
2015-01-08 13:54:43 -08:00
Dane Springmeyer
acb3bb0821
trim down image_32 - refs #2627
2015-01-08 13:16:32 -08:00
artemp
f6651ac74d
use std::make_shared
2015-01-07 12:20:19 +01:00
artemp
b0b89e76d1
image class - containing image_data_any and initial basic python interface
2015-01-06 12:44:28 +01: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
83588937b9
silence boost warnings
2014-10-21 16:37:27 -07:00
artemp
b38dc14188
fix include order and ensure mapnik/config.hpp is before boost_shim_..
2014-08-12 18:44:11 +01:00
Dane Springmeyer
2b1ab49463
finish python bindings + tests for #1448 and #1432
2014-08-04 12:10:26 -07:00
Dane Springmeyer
f66d93d0ec
fix compile of binding/python/mapnik_image.cpp after cairo header shuffling
2014-06-09 10:49:54 -07:00
Dane Springmeyer
0d58a8aee4
merge with 2.3.x
2013-10-28 14:45:52 -07:00
Dane Springmeyer
86dfa0778a
fix cairo reference counting and add more cairo context tests - closes #2031
2013-10-28 12:46:44 -07:00
Dane Springmeyer
5a2954dab7
attempt to fix boost python with c++11 and boost 1.49 - refs #2022
2013-10-23 15:42:01 -07:00
artemp
7adee4ab36
c++11 : remove boost::make_shared includes
2013-10-17 15:09:56 +01:00
artemp
b315eb2167
+ use std::shared_ptr and std::make_shared
2013-09-20 14:01:27 +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
Dane Springmeyer
c011524b67
add mapnik.Image.premultiplied() to query status of pixel premultiplication
2013-07-02 16:01:23 -04:00
artemp
3f6abd3362
+ backport image_reader from buffer/string from image-readers-c++11 branch
2013-04-22 11:35:09 +01:00
artemp
c73e48fa58
+ use std::unique_ptr instead of std::auto_ptr (deprecated!)
2013-04-19 09:50:50 +01:00
artemp
438bfad732
+ factory : variadic templates based implementation ( requires c++11)
...
+ image_reader : stream based reading interface (boost::iostreams)
+ register additional png and jpeg readers with following sigs :
```
std::auto_ptr<mapnik::image_reader> reader(mapnik::get_image_reader(buffer,size));
// buffer - char const*
// size - size_t
```
+ initial type_from_bytes implementation (TODO: add more types)
+ python : mapnik.Image.fromstring(str) mapnik.Image.frombuffer(buf)
2013-04-12 12:46:40 +01:00
Dane Springmeyer
662ff26f94
im/view.is_solid method in python bindings to match node-mapnik - closes #1728
2013-02-22 13:40:05 -08:00
Dane Springmeyer
b1c1c86346
make PNG and TIFF support optional - closes #1704
2013-01-29 02:17:37 -05:00
artemp
f25d4d9279
+ implement cairo_context wrapper and remove unnecessary dependencies
...
( cairomm, libsigc++)
2013-01-09 17:00:30 +00:00
Dane Springmeyer
eebc8cc73e
add image/grid clear methods to make it easier to quickly re-use previously allocated objects for rendering - closes #1571
2012-11-11 21:35:50 -08:00
Dane Springmeyer
9b053f493b
make src_over the default compositing operation (and an optional kwarg) for im.composite()
2012-10-04 14:19:36 -07:00
Dane Springmeyer
7866cc3dec
expose more compositing options in python (the non-agg custom ones) to set up for testing as per #1493 and #1369
2012-10-01 17:41:07 -07:00
Dane Springmeyer
269569250c
use mapnik.Image for visual tests - closes #1296
2012-07-06 17:44:15 -07: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
Artem Pavlenko
c5864453a0
+ only premultiply src
2012-06-18 18:50:32 -04:00
Dane Springmeyer
6fd92dcc3e
do not premultiply the image mask being composited to the target buffer - fixes #1211
2012-05-24 13:41:00 -07:00
Dane Springmeyer
8ae867f6de
default values for composite args to maintain api compatibility
2012-05-11 15:19:05 -07:00
Artem Pavlenko
8085110e8f
+ add opacity parameter
2012-05-10 18:14:53 +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
03d42e59a5
+ allow specifying premultiply flag for src and dst images
...
+ fix logic in agg_renderer (TODO)
2012-04-20 14:53:11 +01:00
kunitoki
1f351e0e09
implement new debug system
2012-04-08 02:20:56 +02:00
Artem Pavlenko
0618f9ca42
+ remove unused header
2012-04-05 15:56:59 +01:00
Dane Springmeyer
b36739fd88
apply mapnik_format.el formatting
2012-03-13 07:59:22 -07:00
Artem Pavlenko
8767ca8275
+ add set_pixel method
2012-02-23 14:32:20 +00:00
Dane Springmeyer
39d199aa49
code formatting
2011-11-13 19:54:32 -08:00
Artem Pavlenko
7387afd96f
+ remove the unnecessary empty palette from tostring2
...
(jonburgess777)
2011-10-03 08:47:25 +00:00
Dane Springmeyer
256937bd4e
expose the painted boolean on images and grids to allow api users to know if any features were processed and likely rendered
2011-09-14 19:31:57 +00:00
Artem Pavlenko
d5e57afac0
+ move compositing into core lib
2011-09-13 15:31:07 +00:00
Artem Pavlenko
a59c961c1f
+ add missing save_to_file overloads
...
+ remove dummy rgba_palette args
2011-09-09 12:40:30 +00:00
Artem Pavlenko
02c143895d
+ refactor palette stuff a bit
...
TODO: We need to change save_to_file|string interface
to avoid passing dummy rgba_palette objects.
2011-09-07 15:01:25 +00:00
Artem Pavlenko
8b3bb3ccd0
+ remove shared_ptr and avoid de-referencing un-initialised shared_ptr
2011-09-07 15:01:16 +00:00