The tests cover issue #117 and pull request #118, extending the coverage
for all color types that may have tRNS chunks:
- color type 0 (grayscale), the tRNS chunk contains a single gray level
- color type 2 (truecolor), the tRNS chunk contains a single RGB color
- color type 3 (indexed color), the tRNS chunk contains a series of
one-byte alpha values
Add sample PNG files from the "official" test-suite for PNG
created by Willem van Schaik.
Add <define>BOOST_GIL_IO_TEST_ALLOW_READING_IMAGES to Jamfile for PNG tests.
NOTE: Deliberately not defined BOOST_GIL_IO_TEST_ALLOW_WRITING_IMAGES
as it seems to require some extra configuration, currently it causes
some tests to fail. So, Jamfile likely needs more updates and clean-up.
Closes#120
Add static assertions to verify channel types are convertible to
expected result type.
Add new and update existing Doxygen comments describing interfaces in
`extension/numeric/channel_numeric_operations.hpp`.
* Implement generation of simple kernels
This commits implements mean and
Gaussian kernel generators,
roughly documents them, and has
tests. But tests for Gaussian have
accuracy problem
* Use difference for testing Gaussian
This commit applies percentage based
difference check on generation of
Gaussian kernels, as exact values are
dependant on platform. The error margin
is set to 5% in this commit
* Remove debugging code
In simple_kernels.cpp, there was
some debugging code, mostly streams
related stuff and commented out code,
which is now removed.
* Address review comments
This commit adds inline to kernel
generator functions, uses
std::ptrdiff_t instead of long int,
resolves some conversion warnings
and does small cosmetic changes
* Remove useless iostream include
There was stray include from debugging
code, now removed
* Use \code and \endcode for formula
This commit applies formatting to
formula of normalized mean
* Change are_equal to is_equal
Change a function name in
simple_kernels.cpp test
* Remove redundant function
In simple_kernels.cpp test there was
a function that was not used at all,
now removed
* Cosmetic changes
Mostly opening brackets moved
Avoid discouraged naming with leading underscore for class member variables.
Rename cryptic `_p` member variable as `y_pos_` to clearly indicate its
purpose as current position of `y_iterator`.
Rename abbreviated template parameters to more self-descriptive names (e.g.
Deref to DerefFn to indicate it is type of a function object).
Remove superfluous `public` keywords from base types fo struct-s.
Tidy up formatting and code flow for readability.
Fixes compiler warning:
typedef `using result_channel_t = typename boost::gil::channel_type<XIt>::type`
locally defined but not used [-Wunused-local-typedefs]
Fixes annoying compiler warnings that implicit conversion from `y_coord_t`
`{aka long int}` to `int` may change value `[-Wconversion]`.
Add missing #include <type_traits>.
Rename `rr` to `y` to clarify it is vertical indexing of pixel lines,
it also indicates the correspondence with y_coord_t better.
Rename CamelCase, incorrectly introduced in 055ee947a0,
for using-declared type aliases to `lower_case_t` convention.
Add Doxygen comments and placeholders for documentation content to fill.
Tidy up formatting and code flow for readability.
These assertions validating user-specified x and y values for pixel
positions at run-time should help GIL users to catch basic mistakes
as early as possible, especially during complex processing algorithms.
(Easy to make a mistake calling `view(y, x)` instead of `view(x, y)`!)
The checks are deliberately implemented using assertions as debug-only
tools disabled in `NDEBUG` builds, and not as exceptions to avoid
potentially significant performance hit at run-time in optimised builds.
Add `TODO` comments where certain assumptions are not immediately
obvious and may require further testing to clarify and documenting.
For example, what are constraints on requesting locators with
negative offsets using `image_view::xy_at`?
Tidy up image.hpp and image_view.hpp formatting vertically rather than
horizontally with very long lines, align return statements to left for
immediate display what is calculated and returned, instead of hiding it
behind the right margin.
- Tidy up formatting and code flow for readability
- Rename parameters for clarify, avoiding abbreviations
- Rename typedefs in CamelCase style instead of UPPER_CASE
- Add Doxygen comments and placeholders for documentation content to fill
Split the table of contents into two section:
- Quickstart materials
- Detailed documentation
Move doc/before_after.dox to tutorial/histogram.rst (closes#286).
Tidy up tutorial reST paragraphs, mark-up and code samples.
Align with `subsampled_view` overloads accepting `point_t` and `coord_t`
Both types are based on `std::ptrdiff_t`. Fixes compilation warnings.
Tidy up `subimage_view` and `subsampled_view` with trailing return.
Add tests for `subimage_view` in core and dynamic_image extension.
(First tests for the dynamic_image, hurray! :))
Add explicit cast to double in division operator for point<T> to
fix compilation warnings.