Commit graph

152 commits

Author SHA1 Message Date
Blake Thompson
2031215247 Renamed set_opacity to apply_opacity, reverted it to the old logic of set_alpha. Updated tests, clamping is now used. 2015-05-20 13:08:18 -05:00
Blake Thompson
b68d079255 Changed the name of the set_alpha and multiply_alpha to be set_opacity and multiply_opacity 2015-05-20 12:39:01 -05:00
Blake Thompson
25c6576fdd Updated the way that multiply_alpha works, such that it is not clamped at the multiplier, but rather at the result of the multiplier and alpha. 2015-05-20 12:39:00 -05:00
artemp
3ce65e8b65 rename view_to_string to view_to_stream and tempalate on stream type 2015-05-19 11:58:20 +01:00
artemp
05b5d16e87 more std::size_t fixes (consistent usage) 2015-05-19 11:43:39 +01:00
artemp
64979f24b7 use enumeration type ! 2015-05-19 11:30:51 +01:00
artemp
3b5a8f354f use std::size_t 2015-05-19 11:17:01 +01:00
Dane Springmeyer
7a0cf4d750 fix unused typedef warning in image_util 2015-05-15 14:43:42 -07:00
artemp
881dba4fc9 fix camel case 2015-05-14 12:53:21 +01:00
artemp
ee414c4796 partially revive numeric_cast<> 2015-05-14 12:40:00 +01:00
artemp
5b865d1f2e more constness 2015-05-14 12:07:34 +01:00
artemp
3b3ca55042 remove numeric_cast + more constness correctness 2015-05-14 11:17:53 +01:00
artemp
e20ae67110 apply constness 2015-05-14 10:47:06 +01:00
artemp
78c56968c1 add clamp(v, min, max) function + clamp opacity in ctor 2015-05-14 10:43:25 +01:00
Blake Thompson
1dddfd17ef Removed try catch around set_alpha, and just checked bounds. Added unit tests for image_view 2015-05-12 12:24:14 -05:00
Blake Thompson
f54164da75 Changed the way that set alpha worked, renaming old method to multiply_alpha, added new set_alpha, that simply sets the alpha. Added protection for overflows and underflows. Added unit tests to cover all code 2015-05-11 13:12:13 -05:00
Blake Thompson
bbe88a9352 Added fix for null image views and added test coverage for is_solid 2015-05-10 14:27:44 -05:00
artemp
470da20d53 fix remanining cAmEl case names 2015-05-04 12:49:11 +02:00
artemp
081cf02dcf fix method signitures to use std::size_t
rename getSize() -> size(), getRowSize() -> row_size
2015-05-04 10:57:57 +02:00
Dane Springmeyer
842e4bebe6 start fixing windows compile - refs #2708 2015-02-16 18:48:14 -08:00
Blake Thompson
0cd9c1fc34 Updated image_any building switch statement to support all the correct types, added tests for all the new data formats with get and set in python. 2015-02-16 14:23:55 -06:00
Blake Thompson
06ef081282 Another set of fixes for the compare SSE code, added test where it was failing 2015-02-04 18:26:18 -06:00
Blake Thompson
c0fcf48019 Fixed issues with SSE compare when the threshold is greater then zero. Added several new SSE methods for unsigned integers. 2015-02-04 17:46:18 -06:00
Blake Thompson
2b8bd59d82 A large set of updates:
* Added new gray data types adding those to the variants and updating all the code necessary for them
* Added basic SSE to the image compare method, (only for RGBA) must be enabled with the -DSSE_MATH flag this is not yet put into the build process in any location.
* Fixed the resulting image for some TIFF visual tests, most likely they were incorrect due to fixes in TIFF reader
* Added some MAPNIK_DECL where necessary to grid rendering.
* Added support for more data types in GDAL plugin with grayscale images.
* Added views for all the new gray data types
* Updated python bindings for new gray data types.

Ref #2681
2015-02-04 15:41:58 -06:00
Blake Thompson
5a4f9321d0 A few updates to attempt to fix pixel getting and setting 2015-01-29 16:10:56 -07:00
Blake Thompson
826e13f911 Renamed background to fill, added numeric casting to fill utility, changed clog uses to MAPNIK_LOG, changed the implementation of fill some so that it only used a single template 2015-01-29 13:27:42 -07:00
Blake Thompson
de99180a44 Added new image_cast method and added its bindings to python, added two new properities to images: offset and scaling. Added way to cast between image types with offset and scaling. Added new unit tests for color and casting. Made it so that pixel setting doesn't result in overflows or underflows. Made the return of get_pixel, dynamic based on what is passed to it. Added new methods for setting pixels that are doubles and ints. 2015-01-28 20:20:14 -06:00
Blake Thompson
bc28c12572 Found more situations where getRowSize should be used over multiplying the width by the pixel size. 2015-01-27 15:29:43 -06:00
Blake Thompson
b090882902 Added compare utility to python bindings and image_util, modified set_grayscale_to_alpha to take a color optionally. 2015-01-27 11:41:05 -06:00
Blake Thompson
a100b2fe1f Fixed the issues associated with TIFFs, now they always will return as premultiplied in the event they are rgba8 due to the way that the TIFF reader operates. Also added premultiply as a flag inside color class and exposed many of its components, made it so that setting and getting pixels took into consideration the state of the color and the image when dealing with the two. 2015-01-23 18:08:59 -06:00
Blake Thompson
490645d2e3 Perhaps a solution to TIFF IO problems 2015-01-22 20:36:45 -06: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
e353225772 Modified the name of image_data_null to image_null. 2015-01-22 10:58:01 -06:00
Blake Thompson
e01ce5b7d6 Changed image_data_gray* to image_gray* Ref #2633. 2015-01-21 21:08:04 -06:00
Blake Thompson
22a384ef33 Moved image_data_rgba8 to image_rgba8. Ref #2633 2015-01-21 20:31:02 -06:00
Blake Thompson
0f388ed68f Changed the name of image_data_any to image_any. Moved header file for image_data_any to image_any. Ref #2633 2015-01-21 19:40:12 -06:00
Dane Springmeyer
97869f7dc1 minor include cleanup for image_utils 2015-01-20 09:06:21 -08:00
Blake Thompson
2439f1b298 A whole lot of changes. #Ref 2633 2015-01-20 10:48:33 -06:00
Blake Thompson
aa03cf4f7c Implemented a new get_pixel method to go along with the set_pixel method in image_util. Ref #2633 2015-01-16 22:15:33 -06:00
Blake Thompson
a002139e18 Added set_pixel to visitor pattern and moved it to image_util. Added exception throwing in composite only if debug flags are on.
Ref #2633
2015-01-16 18:26:56 -06:00
Blake Thompson
1470bea9cb Migrated composite_pixel out of image_32, it is now in image_utils. Ref #2633 2015-01-16 16:48:43 -06:00
Blake Thompson
a7b8ca2888 Moved set_rectangle out of image_32 into image_util.
Ref #2633
2015-01-16 15:36:53 -06:00
Blake Thompson
aebb6fee58 Removed the background and set/get background from image_32 class. Removed clear method from image_32. Added new fill method for image_data_any, that allows many generic types to fill an image.
Ref #2633
2015-01-16 13:06:52 -06:00
Blake Thompson
33ccc12355 Moved set_color_to_alpha and set_grayscale_to_alpha to image_util.
Ref # 2633
2015-01-15 20:26:20 -06:00
Blake Thompson
3b1c99ff1b Moved set_alpha to src/image_util.cpp and out of image_32. Added a boolean response to premultiply_alpha and demultiply_alpha so that if it is changed in set_alpha and other locations like the python bindings for composite that the image can be restored to its original state. Removed blend from python bindings.
Ref #2633
2015-01-15 17:57:21 -06:00
Blake Thompson
73d9c60168 Small fix for is solid to work with image_view_any and image_data_any properly. 2015-01-15 10:53:21 -06:00
Dane Springmeyer
cf646030f3 move is_solid to hpp for now to avoid linking errors 2015-01-15 10:21:11 -06:00
Blake Thompson
7ce7416999 Added is_solid to image_utils. It is currently built to support the eventual use of image_view_any and image_data_any, but for a limited time supports the passing of image_view_rgba8 and image_data_rgba8.
Ref #2633
2015-01-15 10:14:00 -06:00
Blake Thompson
cbc76f7361 Some minor corrections to allow for the source to build properly with out linking errors with vis to hidden. 2015-01-14 15:24:16 -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