A class representing an image read in one of the supported formats: raw, svg, png, jpg, lottie(json) and etc. Besides the methods inherited from the Paint, it provides methods to load & draw images on the canvas.
More...
|
Result | load (const std::string &path) noexcept |
| Loads a picture data directly from a file. More...
|
|
TVG_DEPRECATED Result | load (const char *data, uint32_t size, bool copy=false) noexcept |
| Loads a picture data from a memory block of a given size. More...
|
|
Result | load (const char *data, uint32_t size, const std::string &mimeType, bool copy=false) noexcept |
| Loads a picture data from a memory block of a given size. More...
|
|
Result | size (float w, float h) noexcept |
| Resizes the picture content to the given width and height. More...
|
|
Result | size (float *w, float *h) const noexcept |
| Gets the size of the image. More...
|
|
const uint32_t * | data (uint32_t *w, uint32_t *h) const noexcept |
| Gets the pixels information of the picture. More...
|
|
Result | load (uint32_t *data, uint32_t w, uint32_t h, bool copy) noexcept |
| Loads a raw data from a memory block with a given size. More...
|
|
Result | mesh (const Polygon *triangles, uint32_t triangleCnt) noexcept |
| Sets or removes the triangle mesh to deform the image. More...
|
|
uint32_t | mesh (const Polygon **triangles) const noexcept |
| Return the number of triangles in the mesh, and optionally get a pointer to the array of triangles in the mesh. More...
|
|
Result | rotate (float degree) noexcept |
| Sets the angle by which the object is rotated. More...
|
|
Result | scale (float factor) noexcept |
| Sets the scale value of the object. More...
|
|
Result | translate (float x, float y) noexcept |
| Sets the values by which the object is moved in a two-dimensional space. More...
|
|
Result | transform (const Matrix &m) noexcept |
| Sets the matrix of the affine transformation for the object. More...
|
|
Matrix | transform () noexcept |
| Gets the matrix of the affine transformation of the object. More...
|
|
Result | opacity (uint8_t o) noexcept |
| Sets the opacity of the object. More...
|
|
Result | composite (std::unique_ptr< Paint > target, CompositeMethod method) noexcept |
| Sets the composition target object and the composition method. More...
|
|
Result | blend (BlendMethod method) const noexcept |
| Sets the blending method for the paint object. More...
|
|
TVG_DEPRECATED Result | bounds (float *x, float *y, float *w, float *h) const noexcept |
| Gets the bounding box of the paint object before any transformation. More...
|
|
Result | bounds (float *x, float *y, float *w, float *h, bool transformed) const noexcept |
| Gets the axis-aligned bounding box of the paint object. More...
|
|
Paint * | duplicate () const noexcept |
| Duplicates the object. More...
|
|
uint8_t | opacity () const noexcept |
| Gets the opacity value of the object. More...
|
|
CompositeMethod | composite (const Paint **target) const noexcept |
| Gets the composition target object and the composition method. More...
|
|
BlendMethod | blend () const noexcept |
| Gets the blending method of the object. More...
|
|
uint32_t | identifier () const noexcept |
| Return the unique id value of the paint instance. More...
|
|
A class representing an image read in one of the supported formats: raw, svg, png, jpg, lottie(json) and etc. Besides the methods inherited from the Paint, it provides methods to load & draw images on the canvas.
- Note
- Supported formats are depended on the available TVG loaders.
-
See Animation class if the picture data is animatable.
Sets or removes the triangle mesh to deform the image.
If a mesh is provided, the transform property of the Picture will apply to the triangle mesh, and the image data will be used as the texture.
If triangles
is nullptr
, or triangleCnt
is 0, the mesh will be removed.
Only raster image types are supported at this time (png, jpg). Vector types like svg and tvg do not support. mesh deformation. However, if required you should be able to render a vector image to a raster image and then apply a mesh.
- Parameters
-
[in] | triangles | An array of Polygons(triangles) that make up the mesh, or null to remove the mesh. |
[in] | triangleCnt | The number of Polygons(triangles) provided, or 0 to remove the mesh. |
- Return values
-
- Note
- The Polygons are copied internally, so modifying them after calling Mesh::mesh has no affect.
- Warning
- Please do not use it, this API is not official one. It could be modified in the next version.
@BETA_API