This is an extension of the BaseBitmap class that supports higher bit depths, floating point images and multiple layers.
The layers are stored hierarchically. There are three kinds of layers:
- Layer : A regular layer, with full range of functionality.
- Folder : A collection of layers. This is a dummy element that has no image content, but other stuff like name, visibility etc.
- Alpha : An alpha channel layer, with full range of functionality.
- Note
- Has to be created with Alloc() and destroyed with Free(). Use AutoAlloc to automate the allocation and destruction based on scope.
-
This represents internally the same class as VPBuffer, so a VPBuffer can be cast to a MultipassBitmap and vice versa.
|
Bool | SetColorProfile (const ColorProfile *profile, Int32 index=COLORPROFILE_INDEX_IMAGE) |
|
const ColorProfile * | GetColorProfile (Int32 index=COLORPROFILE_INDEX_IMAGE) const |
|
IMAGERESULT | Init (const Filename &name, Int32 frame=-1, Bool *ismovie=nullptr) |
|
IMAGERESULT | Init (Int32 x, Int32 y, Int32 depth=24, INITBITMAPFLAGS flags=INITBITMAPFLAGS::NONE) |
|
void | FlushAll () |
|
IMAGERESULT | Save (const Filename &name, Int32 format, BaseContainer *data, SAVEBIT savebits) const |
|
BaseBitmap * | GetClone () const |
|
BaseBitmap * | GetClonePart (Int32 x, Int32 y, Int32 w, Int32 h) const |
|
Bool | CopyTo (BaseBitmap *dst) const |
|
Bool | CopyPartTo (BaseBitmap *dst, Int32 x, Int32 y, Int32 w, Int32 h) const |
|
Int32 | GetBw () const |
|
Int32 | GetBh () const |
|
Int32 | GetBt () const |
|
Int32 | GetBpz () const |
|
COLORMODE | GetColorMode () const |
|
void | ScaleIt (BaseBitmap *dst, Int32 intens, Bool sample, Bool nprop) const |
|
void | ScaleBicubic (BaseBitmap *dst, Int32 src_xmin, Int32 src_ymin, Int32 src_xmax, Int32 src_ymax, Int32 dst_xmin, Int32 dst_ymin, Int32 dst_xmax, Int32 dst_ymax) const |
|
void | SetPen (Int32 r, Int32 g, Int32 b) |
|
void | Clear (Int32 r, Int32 g, Int32 b) |
|
void | Clear (Int32 x1, Int32 y1, Int32 x2, Int32 y2, Int32 r, Int32 g, Int32 b) |
|
void | Line (Int32 x1, Int32 y1, Int32 x2, Int32 y2) |
|
void | Arc (Int32 x, Int32 y, Float radius, Float angle_start, Float angle_end, Int32 subdiv=32) |
|
void | GetPixel (Int32 x, Int32 y, UInt16 *r, UInt16 *g, UInt16 *b) const |
|
Vector32 | GetPixelDirect (Int32 x, Int32 y) const |
|
Bool | SetPixel (Int32 x, Int32 y, Int32 r, Int32 g, Int32 b) |
|
void | GetAlphaPixel (BaseBitmap *channel, Int32 x, Int32 y, UInt16 *val) const |
|
Bool | SetAlphaPixel (BaseBitmap *channel, Int32 x, Int32 y, Int32 val) |
|
void | GetPixelCnt (Int32 x, Int32 y, Int32 cnt, UChar *buffer, Int32 inc, COLORMODE dstmode, PIXELCNT flags, ColorProfileConvert *conversion=nullptr) const |
|
Bool | SetPixelCnt (Int32 x, Int32 y, Int32 cnt, UChar *buffer, Int32 inc, COLORMODE srcmode, PIXELCNT flags) |
|
BaseBitmap * | AddChannel (Bool internal, Bool straight) |
|
void | RemoveChannel (BaseBitmap *channel) |
|
const BaseBitmap * | GetInternalChannel () const |
|
BaseBitmap * | GetInternalChannel () |
|
Int32 | GetChannelCount () const |
|
const BaseBitmap * | GetChannelNum (Int32 num) const |
|
BaseBitmap * | GetChannelNum (Int32 num) |
|
GeData | GetData (Int32 id, const GeData &t_default) const |
|
Bool | SetData (Int32 id, const GeData &data) |
|
UInt32 | GetDirty () const |
|
void | SetDirty () |
|
const BaseBitmap * | GetUpdateRegionBitmap () const |
|
BaseBitmap * | GetUpdateRegionBitmap () |
|
void | GetUpdateRegion (Int32 &xMin, Int32 &xMax, Int32 &yMin, Int32 &yMax, Bool reset) |
|
void | UpdateRegionAddPoint (Int32 x, Int32 y, Bool updateImageRefRegions=false) |
|
void | UpdateRegionAddLine (Int32 x1, Int32 x2, Int32 y, Bool updateImageRefRegions=false) |
|
void | UpdateRegionAddRegion (Int32 x1, Int32 y1, Int32 x2, Int32 y2, Bool updateImageRefRegions=false) |
|
Int | GetMemoryInfo () const |
|
Bool | IsMultipassBitmap () const |
|
void | SetCMAP (Int32 i, Int32 r, Int32 g, Int32 b) |
|
Bool | GetImageRef (SAVEBIT saveBit, Bool alpha, PIXELCNT getFlags, maxon::ImageRef &imageRef) const |
|
Bool | GetImageRef (SAVEBIT saveBit, Bool alpha, maxon::ImageRef &imageRef) const |
|
static BaseBitmap * | Alloc () |
|
static void | Free (BaseBitmap *&bm) |
|
static IMAGERESULT | Init (BaseBitmap *&res, const Filename &name, Int32 frame=-1, Bool *ismovie=nullptr, BitmapLoaderPlugin **loaderplugin=nullptr, const maxon::Delegate< void(Float progress)> &progressCallback=nullptr) |
|
static constexpr Int32 | COLORPROFILE_INDEX_IMAGE |
|
static constexpr Int32 | COLORPROFILE_INDEX_RENDERSPACE |
|
static constexpr Int32 | COLORPROFILE_INDEX_VIEW_TRANSFORM |
|
static constexpr Int32 | COLORPROFILE_INDEX_DISPLAYSPACE |
|