Hi,
the discussion about Few renames seems to get off-topic. However, the
discussion on suppotred transformations and their purpose is highly
relevant. My view of the problem:
My understanding is that transformations are intended for weird HW
with (0,0) bottom-left and such. Mixing these "fixes" for unusual HW
properties with convenience applications such as horizontal flip of
coordinates of drawn line is ... not wise, has limited usefulness and
will lead to confusion. (Note that there can be "real" matrix
transformations for drawing rotated/shifted/... primitives)
What is the (intended) purpose of transformation flags on bitmaps?
Note that a general blit() that would support conversion between all
pairs of pixeltypes (including palettes), bpp's (including
bit-endian), axes_swap (goodbye caches if different), flip_y (easy)
and flip_x (RtL vs LtR), including any combination of the last three
(set all differently on src and dst ... ) is going to be ...
challenging to code, optimize, debug and maintain. Most of these
(almost all except same pixeltype and orientation) are going to be
very expensive + hard to optimize.
My idea of the most common use-case would be to have a "global/common"
setting (based on HW) of transformations and really transforming only
when loading images or fonts.
Most other libraries do only simple blit, perhaps with simple format
conversion. Flips are then special functions. Rotation is declared to
be slow and it is easy to see when is it applied.
Best,
Tomas