mirror of
https://github.com/openharmony/interface_sdk_c.git
synced 2026-08-24 14:32:50 -04:00
完善native_drawing头文件中文API注释(第2组: canvas/matrix/brush/path_effect/surface/point/record_cmd/round_rect/memory_stream/filter/mask_filter)
Signed-off-by: dreamyhhh <hangmengxin@huawei.com>
This commit is contained in:
@@ -25,7 +25,8 @@
|
||||
/**
|
||||
* @file drawing_brush.h
|
||||
*
|
||||
* @brief This file declares the functions related to the brush in the drawing module.
|
||||
* @brief 文件中定义了与画刷相关的功能函数。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -52,28 +53,34 @@ extern "C" {
|
||||
typedef struct OH_NativeColorSpaceManager OH_NativeColorSpaceManager;
|
||||
|
||||
/**
|
||||
* @brief 用于创建一个画刷对象。
|
||||
* @brief 用于创建一个画刷对象。调用本接口创建的画刷对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_BrushDestroy}销毁并回收内存,否则会导致内存泄漏。
|
||||
*
|
||||
* @return 函数会返回一个指针,指针指向创建的画刷对象。
|
||||
* @return 函数会返回一个指针,指针指向创建的画刷对象。如果返回NULL,表示创建失败;可能的原因是可用内存不足。
|
||||
* @since 8
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_Brush* OH_Drawing_BrushCreate(void);
|
||||
|
||||
/**
|
||||
* @brief 创建一个画刷对象副本{@link OH_Drawing_Brush},用于拷贝一个已有画刷对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 拷贝一个已有画刷对象,创建其画刷对象副本{@link OH_Drawing_Brush}。调用本接口创建的画刷对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_BrushDestroy}销毁并回收内存,
|
||||
* 否则会导致内存泄漏。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @return 函数会返回一个指针,指针指向创建的画刷对象副本{@link OH_Drawing_Brush}。如果对象返回NULL,表示创建失败;可能的原因是可用内存为空,或者是brush为NULL。
|
||||
* @return 函数会返回一个指针,指针指向创建的画刷对象副本{@link OH_Drawing_Brush}。如果返回NULL,表示创建失败;
|
||||
* 可能的原因是可用内存不足,或者是brush为NULL。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_Brush* OH_Drawing_BrushCopy(OH_Drawing_Brush* brush);
|
||||
|
||||
/**
|
||||
* @brief 用于销毁画刷对象并回收该对象占有的内存。
|
||||
* @brief 用于销毁画刷对象并回收该对象占用的内存。
|
||||
* 应与{@link OH_Drawing_BrushCreate}或{@link OH_Drawing_BrushCopy}配对使用,对已创建或拷贝得到的画刷对象进行释放,
|
||||
* 避免内存泄漏。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @since 8
|
||||
@@ -83,8 +90,8 @@ void OH_Drawing_BrushDestroy(OH_Drawing_Brush* brush);
|
||||
|
||||
/**
|
||||
* @brief 用于获取画刷是否设置抗锯齿属性,如果为真则说明画刷会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @return 函数返回画刷对象是否设置抗锯齿属性,返回真则设置了抗锯齿,返回假则没有设置抗锯齿。
|
||||
@@ -95,8 +102,8 @@ bool OH_Drawing_BrushIsAntiAlias(const OH_Drawing_Brush* brush);
|
||||
|
||||
/**
|
||||
* @brief 用于设置画刷的抗锯齿属性,设置为真则画刷在绘制图形时会对图形的边缘像素进行半透明的模糊处理。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @param antiAlias 真为抗锯齿,假则不做抗锯齿处理。
|
||||
@@ -107,11 +114,11 @@ void OH_Drawing_BrushSetAntiAlias(OH_Drawing_Brush* brush, bool antiAlias);
|
||||
|
||||
/**
|
||||
* @brief 用于获取画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @return 函数返回一个描述颜色的32位(ARGB)变量。
|
||||
* @return 函数返回一个描述颜色的32位(ARGB)变量,各颜色通道取值范围为[0, 255]。
|
||||
* @since 8
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -119,23 +126,26 @@ uint32_t OH_Drawing_BrushGetColor(const OH_Drawing_Brush* brush);
|
||||
|
||||
/**
|
||||
* @brief 用于设置画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* 当需要色彩空间管理或高精度颜色表示时,建议优先使用{@link OH_Drawing_BrushSetColor4f}。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @param color 描述颜色的32位(ARGB)变量。
|
||||
* @param color 描述颜色的32位(ARGB)变量,各颜色通道取值范围为[0, 255]。
|
||||
* @since 8
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_BrushSetColor(OH_Drawing_Brush* brush, uint32_t color);
|
||||
|
||||
/**
|
||||
* @brief 获取画刷的透明度值。画刷在填充形状时透明通道会使用该值。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 用于获取画刷的透明度值。画刷在填充形状时透明通道会使用该值。
|
||||
* 当画刷颜色通过{@link OH_Drawing_BrushSetColor4f}设置时,建议使用
|
||||
* {@link OH_Drawing_BrushGetAlphaFloat}获取透明度以避免精度丢失。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 表示指向画刷对象的指针。
|
||||
* @return 返回一个8位变量,用于表示透明度值。
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @return 返回一个8位无符号整数,用于表示透明度值,取值范围为[0, 255],0表示完全透明,255表示完全不透明。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -143,30 +153,33 @@ uint8_t OH_Drawing_BrushGetAlpha(const OH_Drawing_Brush* brush);
|
||||
|
||||
/**
|
||||
* @brief 为画刷设置透明度值。画刷在填充形状时透明通道会使用该值。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @param alpha 表示要设置的透明度值,是一个8位变量。
|
||||
* @param alpha 表示要设置的透明度值,取值范围为[0, 255]的8位无符号整数,0表示完全透明,255表示完全不透明。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_BrushSetAlpha(OH_Drawing_Brush* brush, uint8_t alpha);
|
||||
|
||||
/**
|
||||
* @brief 设置画刷的颜色。颜色将被画刷用来填充形状。
|
||||
* 颜色采用浮点数表示的ARGB格式,色彩空间由{@link OH_NativeColorSpaceManager}指定。
|
||||
* 如果colorSpaceManager为nullptr,使用SRGB(基于IEC 61966-2.1:1999的标准红绿蓝色彩空间)色彩空间作为默认值。
|
||||
* @brief 设置画刷的颜色。画刷使用该颜色填充形状。
|
||||
* <br>与{@link OH_Drawing_BrushSetColor}相比,本接口使用浮点数表示ARGB分量,精度更高,
|
||||
* 并支持通过colorSpaceManager指定色彩空间;当需要色彩空间管理或高精度颜色表示时,
|
||||
* 优先使用本接口。
|
||||
* <br>颜色采用浮点数表示的ARGB格式,色彩空间由{@link OH_NativeColorSpaceManager}指定。
|
||||
* <br>如果colorSpaceManager为NULL,使用sRGB(基于IEC 61966-2.1:1999的标准红绿蓝色彩空间)色彩空间作为默认值。
|
||||
*
|
||||
* @param brush 表示指向{@link OH_Drawing_Brush}对象的指针。
|
||||
* @param a 表示颜色中的透明度值,用0.0 ~ 1.0之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param r 表示颜色中的红色分量,用0.0 ~ 1.0之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param g 表示颜色中的绿色分量,用0.0 ~ 1.0之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param b 表示颜色中的蓝色分量,用0.0 ~ 1.0之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param a 表示颜色中的透明度值,用[0.0, 1.0]之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param r 表示颜色中的红色分量,用[0.0, 1.0]之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param g 表示颜色中的绿色分量,用[0.0, 1.0]之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param b 表示颜色中的蓝色分量,用[0.0, 1.0]之间的浮点数表示,大于1.0时,取1.0,小于0.0时,取0.0。
|
||||
* @param colorSpaceManager 表示指向{@link OH_NativeColorSpaceManager}对象的指针。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush为NULL。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush为NULL。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -174,52 +187,60 @@ OH_Drawing_ErrorCode OH_Drawing_BrushSetColor4f(OH_Drawing_Brush* brush, float a
|
||||
OH_NativeColorSpaceManager* colorSpaceManager);
|
||||
|
||||
/**
|
||||
* @brief 获取画刷颜色的透明度值。
|
||||
* @brief 用于获取画刷颜色的透明度值,以浮点数形式表示。与{@link OH_Drawing_BrushGetAlpha}相比,
|
||||
* 本接口返回浮点数表示的透明度,精度更高;当画刷颜色通过
|
||||
* {@link OH_Drawing_BrushSetColor4f}设置时,应使用本接口获取透明度以避免精度丢失。
|
||||
*
|
||||
* @param brush 表示指向{@link OH_Drawing_Brush}对象的指针。
|
||||
* @param a 表示颜色的透明度,范围为0.0 ~ 1.0的浮点数。
|
||||
* @param a 表示指向浮点数的指针,用于接收画刷颜色的透明度值,取值范围为[0.0, 1.0]。调用前需确保指针指向有效内存。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或a为NULL。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或a为NULL。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_BrushGetAlphaFloat(const OH_Drawing_Brush* brush, float* a);
|
||||
|
||||
/**
|
||||
* @brief 获取画刷颜色的红色分量。
|
||||
* @brief 用于获取画刷颜色的红色分量,以浮点数形式表示。与{@link OH_Drawing_BrushGetColor}相比,
|
||||
* 本接口以浮点数返回颜色分量,精度更高;当画刷颜色通过
|
||||
* {@link OH_Drawing_BrushSetColor4f}设置时,应使用本接口获取红色分量以避免精度丢失。
|
||||
*
|
||||
* @param brush 表示指向{@link OH_Drawing_Brush}对象的指针。
|
||||
* @param r 表示颜色中的红色分量,范围为0.0 ~ 1.0的浮点数。
|
||||
* @param r 表示指向浮点数的指针,用于接收画刷颜色的红色分量值,取值范围为[0.0, 1.0]。调用前需确保指针指向有效内存。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或r为NULL。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或r为NULL。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_BrushGetRedFloat(const OH_Drawing_Brush* brush, float* r);
|
||||
|
||||
/**
|
||||
* @brief 获取画刷颜色的绿色分量。
|
||||
* @brief 用于获取画刷颜色的绿色分量,以浮点数形式表示。与{@link OH_Drawing_BrushGetColor}相比,
|
||||
* 本接口以浮点数返回颜色分量,精度更高;当画刷颜色通过
|
||||
* {@link OH_Drawing_BrushSetColor4f}设置时,应使用本接口获取绿色分量以避免精度丢失。
|
||||
*
|
||||
* @param brush 表示指向{@link OH_Drawing_Brush}对象的指针。
|
||||
* @param g 表示颜色中的绿色分量,范围为0.0 ~ 1.0的浮点数。
|
||||
* @param g 表示指向浮点数的指针,用于接收画刷颜色的绿色分量值,取值范围为[0.0, 1.0]。调用前需确保指针指向有效内存。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或g为NULL。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或g为NULL。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_BrushGetGreenFloat(const OH_Drawing_Brush* brush, float* g);
|
||||
|
||||
/**
|
||||
* @brief 获取画刷颜色的蓝色分量。
|
||||
* @brief 用于获取画刷颜色的蓝色分量,以浮点数形式表示。与{@link OH_Drawing_BrushGetColor}相比,
|
||||
* 本接口以浮点数返回颜色分量,精度更高;当画刷颜色通过
|
||||
* {@link OH_Drawing_BrushSetColor4f}设置时,应使用本接口获取蓝色分量以避免精度丢失。
|
||||
*
|
||||
* @param brush 表示指向{@link OH_Drawing_Brush}对象的指针。
|
||||
* @param b 表示颜色中的蓝色分量,范围为0.0 ~ 1.0的浮点数。
|
||||
* @param b 表示指向浮点数的指针,用于接收画刷颜色的蓝色分量值,取值范围为[0.0, 1.0]。调用前需确保指针指向有效内存。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或b为NULL。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数brush或b为NULL。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -227,8 +248,8 @@ OH_Drawing_ErrorCode OH_Drawing_BrushGetBlueFloat(const OH_Drawing_Brush* brush,
|
||||
|
||||
/**
|
||||
* @brief 为画刷设置着色器效果。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @param shaderEffect 表示指向着色器对象的指针,为NULL表示清空画刷的着色器效果。
|
||||
@@ -239,8 +260,8 @@ void OH_Drawing_BrushSetShaderEffect(OH_Drawing_Brush* brush, OH_Drawing_ShaderE
|
||||
|
||||
/**
|
||||
* @brief 为画刷设置阴影层,设置的阴影层效果当前仅在绘制文字时生效。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @param shadowLayer 表示指向阴影层的指针,为NULL表示清空画刷的阴影层效果。
|
||||
@@ -251,8 +272,8 @@ void OH_Drawing_BrushSetShadowLayer(OH_Drawing_Brush* brush, OH_Drawing_ShadowLa
|
||||
|
||||
/**
|
||||
* @brief 为画刷设置滤波器{@link OH_Drawing_Filter}。滤波器是一个容器,可以承载蒙版滤波器和颜色滤波器。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象的指针。
|
||||
* @param filter 表示指向滤波器对象的指针,为NULL表示清空画刷滤波器。
|
||||
@@ -263,24 +284,26 @@ void OH_Drawing_BrushSetFilter(OH_Drawing_Brush* brush, OH_Drawing_Filter* filte
|
||||
|
||||
/**
|
||||
* @brief 从画刷获取滤波器{@link OH_Drawing_Filter}。滤波器是一个容器,可以承载蒙版滤波器和颜色滤波器。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush、filter任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush、filter任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象{@link OH_Drawing_Brush}的指针。
|
||||
* @param filter 表示指向滤波器对象{@link OH_Drawing_Filter}的指针。
|
||||
* @param filter 表示指向滤波器对象{@link OH_Drawing_Filter}的指针,用于接收从画刷中获取的滤波器。调用前需分配好内存,
|
||||
* 由函数写入结果。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_BrushGetFilter(OH_Drawing_Brush* brush, OH_Drawing_Filter* filter);
|
||||
|
||||
/**
|
||||
* @brief 为画刷设置一个混合器,该混合器实现了指定的混合模式枚举。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER;
|
||||
* blendMode不在枚举范围内时返回OH_DRAWING_ERROR_PARAMETER_OUT_OF_RANGE。
|
||||
* @brief 为画刷设置混合模式,通过指定的混合模式枚举决定画刷在绘制时源像素与目标像素的合成方式。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER;
|
||||
* <br>blendMode不在枚举范围内时返回OH_DRAWING_ERROR_PARAMETER_OUT_OF_RANGE。
|
||||
*
|
||||
* @param brush 指向画刷对象{@link OH_Drawing_Brush}的指针。
|
||||
* @param blendMode 混合模式枚举类型{@link OH_Drawing_BlendMode}。
|
||||
* @param blendMode 要设置的混合模式,用于指定画刷在绘制时源像素与目标像素的混合方式。
|
||||
* 枚举类型{@link OH_Drawing_BlendMode}。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -288,8 +311,8 @@ void OH_Drawing_BrushSetBlendMode(OH_Drawing_Brush* brush, OH_Drawing_BlendMode
|
||||
|
||||
/**
|
||||
* @brief 将画刷重置至初始状态,清空所有已设置的属性。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>brush为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param brush 指向画刷对象{@link OH_Drawing_Brush}的指针。
|
||||
* @since 12
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -25,7 +25,8 @@
|
||||
/**
|
||||
* @file drawing_filter.h
|
||||
*
|
||||
* @brief This file declares the functions related to the filter in the drawing module.
|
||||
* @brief 声明与绘图模块中的滤波器对象相关的函数。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -54,8 +55,8 @@ OH_Drawing_Filter* OH_Drawing_FilterCreate(void);
|
||||
|
||||
/**
|
||||
* @brief 为滤波器对象设置图像滤波器对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* filter为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>filter为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param filter 指示指向滤波器对象{@link OH_Drawing_Filter}的指针。
|
||||
* @param imageFilter 指示指向图像滤波器{@link OH_Drawing_ImageFilter}对象的指针,为NULL表示清空滤波器对象中的图像滤波器效果。
|
||||
@@ -66,8 +67,8 @@ void OH_Drawing_FilterSetImageFilter(OH_Drawing_Filter* filter, OH_Drawing_Image
|
||||
|
||||
/**
|
||||
* @brief 为滤波器对象设置蒙版滤波器对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* filter为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>filter为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param filter 指示指向滤波器对象{@link OH_Drawing_Filter}的指针。
|
||||
* @param maskFilter 指示指向蒙版滤波器对象{@link OH_Drawing_MaskFilter}的指针,为NULL表示清空滤波器对象中的蒙版滤波器效果。
|
||||
@@ -78,8 +79,8 @@ void OH_Drawing_FilterSetMaskFilter(OH_Drawing_Filter* filter, OH_Drawing_MaskFi
|
||||
|
||||
/**
|
||||
* @brief 为滤波器对象设置颜色滤波器对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* filter为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>filter为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param filter 指示指向滤波器对象{@link OH_Drawing_Filter}的指针。
|
||||
* @param colorFilter 指示指向颜色滤波器对象{@link OH_Drawing_ColorFilter}的指针,为NULL表示清空滤波器对象中的颜色滤波器效果。
|
||||
@@ -90,8 +91,8 @@ void OH_Drawing_FilterSetColorFilter(OH_Drawing_Filter* filter, OH_Drawing_Color
|
||||
|
||||
/**
|
||||
* @brief 从滤波器对象获取颜色滤波器对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* filter、colorFilter任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>filter、colorFilter任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param filter 指示指向滤波器对象{@link OH_Drawing_Filter}的指针。
|
||||
* @param colorFilter 指示指向颜色滤波器对象{@link OH_Drawing_ColorFilter}的指针。
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
/**
|
||||
* @file drawing_mask_filter.h
|
||||
*
|
||||
* @brief This file declares the functions related to the mask filter in the drawing module.
|
||||
* @brief 声明与绘图模块中的对象相关的函数。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -55,7 +56,7 @@ typedef enum {
|
||||
*/
|
||||
NORMAL,
|
||||
/**
|
||||
* 内部实体,外部模糊。
|
||||
* 内部实心,外部模糊。
|
||||
*/
|
||||
SOLID,
|
||||
/**
|
||||
@@ -69,11 +70,13 @@ typedef enum {
|
||||
} OH_Drawing_BlurType;
|
||||
|
||||
/**
|
||||
* @brief 创建具有模糊效果的蒙版滤波器。
|
||||
* @brief 创建具有模糊效果的蒙版滤波器。常用于为图形、文本等绘制内容添加模糊视觉效果。创建的蒙版滤波器对象使用完毕后,
|
||||
* 必须调用{@link OH_Drawing_MaskFilterDestroy}销毁并释放内存。
|
||||
*
|
||||
* @param blurType 表示模糊类型。
|
||||
* @param sigma 表示要应用的高斯模糊的标准偏差。必须大于0。
|
||||
* @param respectCTM 表示模糊标准差值被CTM(当前变换矩阵)修改,默认为真。true表示模糊标准差值受CTM影响,false表示模糊标准差值固定,不受CTM影响。
|
||||
* @param blurType 表示模糊类型,用于指定蒙版滤波器的模糊操作方式。
|
||||
* @param sigma 表示要应用的高斯模糊的标准差,单位为px。必须大于0。
|
||||
* @param respectCTM 表示模糊标准差值是否受CTM(当前变换矩阵)影响。传入true表示受CTM影响,传入false表示不受CTM影响,
|
||||
* 标准差值固定。
|
||||
* @return 返回创建的蒙版滤波器对象的指针。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
|
||||
@@ -25,7 +25,9 @@
|
||||
/**
|
||||
* @file drawing_matrix.h
|
||||
*
|
||||
* @brief This file declares the functions related to the matrix in the drawing module.
|
||||
* @brief 文件中定义了矩阵的创建、拷贝、变换(旋转、缩放、平移、倾斜)、查询(判断相等、判断单位矩阵、
|
||||
* 获取元素值)和映射等功能函数。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -45,19 +47,21 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief 用于创建一个矩阵对象。
|
||||
* @brief 用于创建一个矩阵对象。调用此函数创建的矩阵对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_MatrixDestroy}释放该对象占用的内存,否则会导致内存泄漏。
|
||||
*
|
||||
* @return 函数会返回一个指针,指针指向创建的矩阵对象。
|
||||
* @return 函数返回一个指针,指针指向创建的矩阵对象{@link OH_Drawing_Matrix}。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_Matrix* OH_Drawing_MatrixCreate(void);
|
||||
|
||||
/**
|
||||
* @brief 用于创建一个矩阵对象的拷贝。
|
||||
* @brief 用于创建一个矩阵对象的拷贝。调用此函数返回的是一个新的独立矩阵对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_MatrixDestroy}单独释放拷贝对象占用的内存,否则会导致内存泄漏。
|
||||
*
|
||||
* @param matrix 指向用于拷贝的矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @return 函数会返回一个指针,指针指向创建的新矩阵对象。
|
||||
* @return 函数返回一个指针,指针指向创建的新矩阵对象{@link OH_Drawing_Matrix}。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -65,12 +69,14 @@ OH_Drawing_Matrix* OH_Drawing_MatrixCopy(const OH_Drawing_Matrix* matrix);
|
||||
|
||||
/**
|
||||
* @brief 创建一个带旋转属性的矩阵对象。
|
||||
* 该矩阵对象为:单位矩阵在(x, y)旋转点以度为单位进行旋转后得到的矩阵。
|
||||
* <br>该矩阵对象为:单位矩阵在(x, y)旋转中心点以度为单位进行旋转后得到的矩阵。调用此函数创建的矩阵对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_MatrixDestroy}释放该对象占用的内存,
|
||||
* 否则会导致内存泄漏。
|
||||
*
|
||||
* @param deg 旋转的角度,单位为度。正数表示按顺时针旋转,负数表示按逆时针旋转。
|
||||
* @param x x轴上坐标点。
|
||||
* @param y y轴上坐标点。
|
||||
* @return 函数会返回一个指针,指针指向创建的新矩阵对象。
|
||||
* @param deg 旋转的角度,单位为度。正数表示顺时针旋转,负数表示逆时针旋转。
|
||||
* @param x 旋转中心点的x轴坐标,单位为物理像素px。
|
||||
* @param y 旋转中心点的y轴坐标,单位为物理像素px。
|
||||
* @return 函数返回一个指针,指针指向创建的矩阵对象{@link OH_Drawing_Matrix}。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -78,12 +84,13 @@ OH_Drawing_Matrix* OH_Drawing_MatrixCreateRotation(float deg, float x, float y);
|
||||
|
||||
/**
|
||||
* @brief 创建一个带缩放属性的矩阵对象。
|
||||
* 该矩阵对象为:单位矩阵在(px, py)旋转点以sx和sy为缩放因子进行缩放后得到的矩阵。
|
||||
* <br>该矩阵对象为:单位矩阵在(px, py)缩放中心点以sx和sy为缩放因子进行缩放后得到的矩阵。调用此函数创建的矩阵对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_MatrixDestroy}释放该对象占用的内存。
|
||||
*
|
||||
* @param sx 水平缩放因子,为负数时可看作是先关于y = px作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param sy 垂直缩放因子,为负数时可看作是先关于x = py作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param px x轴上坐标点。
|
||||
* @param py y轴上坐标点。
|
||||
* @param sx 水平缩放因子,为负数时可看作是先关于x = px作镜像翻转后再进行缩放。
|
||||
* @param sy 垂直缩放因子,为负数时可看作是先关于y = py作镜像翻转后再进行缩放。
|
||||
* @param px 缩放中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 缩放中心点的y轴坐标,单位为物理像素px。
|
||||
* @return 函数返回一个指针,指针指向创建的矩阵对象{@link OH_Drawing_Matrix}。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
@@ -92,10 +99,11 @@ OH_Drawing_Matrix* OH_Drawing_MatrixCreateScale(float sx, float sy, float px, fl
|
||||
|
||||
/**
|
||||
* @brief 创建一个带平移属性的矩阵对象。
|
||||
* 该矩阵对象为:单位矩阵平移(dx, dy)后得到的矩阵。
|
||||
* <br>该矩阵对象为:单位矩阵平移(dx, dy)后得到的矩阵。调用此函数创建的矩阵对象,
|
||||
* 在使用完毕后必须调用{@link OH_Drawing_MatrixDestroy}释放该对象占用的内存,否则会导致内存泄漏。
|
||||
*
|
||||
* @param dx 水平方向平移距离,正数表示往x轴正方向平移,负数表示往x轴负方向平移,该参数为浮点数。
|
||||
* @param dy 垂直方向平移距离,正数表示往y轴正方向平移,负数表示往y轴负方向平移,该参数为浮点数。
|
||||
* @param dx 水平方向平移距离,单位为物理像素px。正数表示往x轴正方向平移,负数表示往x轴负方向平移。
|
||||
* @param dy 垂直方向平移距离,单位为物理像素px。正数表示往y轴正方向平移,负数表示往y轴负方向平移。
|
||||
* @return 函数返回一个指针,指针指向创建的矩阵对象{@link OH_Drawing_Matrix}。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
@@ -103,19 +111,19 @@ OH_Drawing_Matrix* OH_Drawing_MatrixCreateScale(float sx, float sy, float px, fl
|
||||
OH_Drawing_Matrix* OH_Drawing_MatrixCreateTranslation(float dx, float dy);
|
||||
|
||||
/**
|
||||
* @brief 用于给矩阵对象设置参数。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* OH_Drawing_Matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 用于给矩阵对象设置变换参数,包括缩放、倾斜、位移和透视系数。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>OH_Drawing_Matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象的指针。
|
||||
* @param scaleX 水平缩放系数。
|
||||
* @param scaleX 水平缩放因子。
|
||||
* @param skewX 水平倾斜系数。
|
||||
* @param transX 水平位移系数。
|
||||
* @param skewY 垂直倾斜系数。
|
||||
* @param scaleY 垂直缩放系数。
|
||||
* @param scaleY 垂直缩放因子。
|
||||
* @param transY 垂直位移系数。
|
||||
* @param persp0 X轴透视系数。
|
||||
* @param persp1 Y轴透视系数。
|
||||
* @param persp0 x轴透视系数。
|
||||
* @param persp1 y轴透视系数。
|
||||
* @param persp2 透视缩放系数。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
@@ -131,7 +139,7 @@ void OH_Drawing_MatrixSetMatrix(OH_Drawing_Matrix* matrix, float scaleX, float s
|
||||
*/
|
||||
typedef enum {
|
||||
/**
|
||||
* 按水平轴和垂直轴缩放以填充目标矩形。
|
||||
* 按水平轴和垂直轴缩放以填充目标矩形,不保留源矩形宽高比例。
|
||||
*/
|
||||
SCALE_TO_FIT_FILL,
|
||||
/**
|
||||
@@ -149,17 +157,17 @@ typedef enum {
|
||||
} OH_Drawing_ScaleToFit;
|
||||
|
||||
/**
|
||||
* @brief 将矩阵以缩放方式适配目标矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix、src、dst任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 将矩阵以缩放方式适配目标矩形。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix、src或dst任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param src 指向映射源的{@link OH_Drawing_Rect}对象Rect的指针。
|
||||
* @param dst 指向要映射到的{@link OH_Drawing_Rect}对象Rect的指针。
|
||||
* @param stf 缩放方式,支持方式{@link OH_Drawing_ScaleToFit}。
|
||||
* @return 如果设置失败,则返回false;如果设置成功,则返回true;如果矩阵为空,则返回true,并将矩阵设置为:
|
||||
* 如果源矩形src的宽高任意一个小于等于0,则返回false,并将矩阵设置为单位矩阵;
|
||||
* 如果目标矩形dst的宽高任意一个小于等于0,则返回true,并将矩阵设置为除透视缩放系数为1外其余值皆为0的矩阵;
|
||||
* @param src 指向源矩形对象{@link OH_Drawing_Rect}的指针。
|
||||
* @param dst 指向目标矩形对象{@link OH_Drawing_Rect}的指针。
|
||||
* @param stf 缩放方式,详见{@link OH_Drawing_ScaleToFit}。
|
||||
* @return 如果设置成功,则返回true;如果设置失败,则返回false。特殊情况:
|
||||
* <br>如果源矩形src的宽高任意一个小于等于0,则返回false,并将矩阵设置为单位矩阵;
|
||||
* <br>如果目标矩形dst的宽高任意一个小于等于0,则返回true,并将矩阵设置为除透视缩放系数为1外其余值皆为0的矩阵。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -167,82 +175,84 @@ bool OH_Drawing_MatrixSetRectToRect(OH_Drawing_Matrix* matrix, const OH_Drawing_
|
||||
const OH_Drawing_Rect* dst, OH_Drawing_ScaleToFit stf);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵设置为矩阵左乘围绕轴心点旋转一定角度的单位矩阵后得到的矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 将矩阵设置为矩阵左乘围绕旋转中心点旋转degree指定角度的单位矩阵后得到的矩阵。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param degree 旋转角度,单位为度。正数表示顺时针旋转,负数表示逆时针旋转。
|
||||
* @param px 旋转中心点的横坐标。
|
||||
* @param py 旋转中心点的纵坐标。
|
||||
* @param px 旋转中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 旋转中心点的y轴坐标,单位为物理像素px。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_MatrixPreRotate(OH_Drawing_Matrix* matrix, float degree, float px, float py);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵设置为矩阵左乘围绕轴心点按一定缩放因子缩放后的单位矩阵后得到的矩阵。
|
||||
* @brief 将矩阵设置为矩阵左乘围绕缩放中心点按缩放因子sx和sy缩放后的单位矩阵后得到的矩阵。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param sx x轴方向的缩放比例因子,为负数时可看作是先关于y = px作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param sy y轴方向的缩放比例因子,为负数时可看作是先关于x = py作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param px 缩放中心点的横坐标。
|
||||
* @param py 缩放中心点的纵坐标。
|
||||
* @param sx 水平缩放因子,为负数时可看作是先关于x = px作镜像翻转后再进行缩放。
|
||||
* @param sy 垂直缩放因子,为负数时可看作是先关于y = py作镜像翻转后再进行缩放。
|
||||
* @param px 缩放中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 缩放中心点的y轴坐标,单位为物理像素px。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_MatrixPreScale(OH_Drawing_Matrix* matrix, float sx, float sy, float px, float py);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵设置为矩阵左乘平移一定距离后的单位矩阵后得到的矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 将矩阵设置为矩阵左乘平移dx和dy距离后的单位矩阵后得到的矩阵。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param dx 表示在x轴方向上的平移距离,正数表示往x轴正方向平移,负数表示往x轴负方向平移,该参数为浮点数。
|
||||
* @param dy 表示在y轴方向上的平移距离,正数表示往y轴正方向平移,负数表示往y轴负方向平移,该参数为浮点数。
|
||||
* @param dx 水平方向平移距离,单位为物理像素px。正数表示往x轴正方向平移,负数表示往x轴负方向平移。
|
||||
* @param dy 垂直方向平移距离,单位为物理像素px。正数表示往y轴正方向平移,负数表示往y轴负方向平移。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_MatrixPreTranslate(OH_Drawing_Matrix* matrix, float dx, float dy);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵设置为矩阵右乘围绕轴心点旋转一定角度的单位矩阵后得到的矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 将矩阵设置为矩阵右乘围绕旋转中心点旋转degree角度的单位矩阵后得到的矩阵。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param degree 旋转角度,单位为度。正数表示顺时针旋转,负数表示逆时针旋转。
|
||||
* @param px 旋转中心点的横坐标。
|
||||
* @param py 旋转中心点的纵坐标。
|
||||
* @param px 旋转中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 旋转中心点的y轴坐标,单位为物理像素px。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_MatrixPostRotate(OH_Drawing_Matrix* matrix, float degree, float px, float py);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵设置为矩阵右乘围绕轴心点按一定缩放因子缩放后的单位矩阵后得到的矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 将矩阵设置为矩阵右乘围绕缩放中心点按sx和sy缩放因子缩放后的单位矩阵后得到的矩阵。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param sx x轴方向的缩放比例因子,为负数时可看作是先关于y = px作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param sy y轴方向的缩放比例因子,为负数时可看作是先关于x = py作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param px 缩放中心点的横坐标。
|
||||
* @param py 缩放中心点的纵坐标。
|
||||
* @param sx 水平缩放因子,为负数时可看作是先关于x = px作镜像翻转后再进行缩放。
|
||||
* @param sy 垂直缩放因子,为负数时可看作是先关于y = py作镜像翻转后再进行缩放。
|
||||
* @param px 缩放中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 缩放中心点的y轴坐标,单位为物理像素px。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_MatrixPostScale(OH_Drawing_Matrix* matrix, float sx, float sy, float px, float py);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵设置为矩阵右乘平移一定距离后的单位矩阵后得到的矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 将矩阵设置为矩阵右乘平移dx和dy距离后的单位矩阵后得到的矩阵。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param dx 表示在x轴方向上的平移距离,正数表示往x轴正方向平移,负数表示往x轴负方向平移,该参数为浮点数。
|
||||
* @param dy 表示在y轴方向上的平移距离,正数表示往y轴正方向平移,负数表示往y轴负方向平移,该参数为浮点数。
|
||||
* @param dx 水平方向平移距离,单位为物理像素px。正数表示往x轴正方向平移,负数表示往x轴负方向平移。
|
||||
* @param dy 垂直方向平移距离,单位为物理像素px。正数表示往y轴正方向平移,负数表示往y轴负方向平移。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -250,8 +260,8 @@ void OH_Drawing_MatrixPostTranslate(OH_Drawing_Matrix* matrix, float dx, float d
|
||||
|
||||
/**
|
||||
* @brief 重置当前矩阵为单位矩阵。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @since 12
|
||||
@@ -261,8 +271,8 @@ void OH_Drawing_MatrixReset(OH_Drawing_Matrix* matrix);
|
||||
|
||||
/**
|
||||
* @brief 将矩阵total设置为矩阵a乘以矩阵b。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* total、a、b任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>total、a或b任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param total 指向最终的矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param a 指向矩阵对象a{@link OH_Drawing_Matrix}的指针。
|
||||
@@ -274,26 +284,27 @@ void OH_Drawing_MatrixConcat(OH_Drawing_Matrix* total, const OH_Drawing_Matrix*
|
||||
const OH_Drawing_Matrix* b);
|
||||
|
||||
/**
|
||||
* @brief 获取矩阵所有元素值。
|
||||
* @brief 获取矩阵所有元素值。9个元素按行主序存储,对应3×3矩阵结构,具体排列方式参见{@link OH_Drawing_MatrixSetMatrix}。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param value 用于存储得到的矩阵元素值的数组。
|
||||
* @return 返回错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示成功获取矩阵的所有元素值。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示获取矩阵元素值失败,原因是矩阵对象或者存储矩阵元素值数组为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示成功获取矩阵的所有元素值。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示matrix或value为NULL。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_MatrixGetAll(OH_Drawing_Matrix* matrix, float value[9]);
|
||||
|
||||
/**
|
||||
* @brief 对矩阵a左乘矩阵b。
|
||||
* @brief 对矩阵a左乘矩阵b。与{@link OH_Drawing_MatrixConcat}功能类似,
|
||||
* 区别在于OH_Drawing_MatrixConcat将结果存入单独的total矩阵,而本方法直接修改矩阵a。
|
||||
*
|
||||
* @param a 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param b 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param a 指向被左乘的矩阵对象{@link OH_Drawing_Matrix}的指针,左乘后该矩阵会被修改为a × b的结果。
|
||||
* @param b 指向作为乘数的矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @return 返回错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示成功执行左乘方法。
|
||||
* 返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示入参异常,rect或other为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示成功执行左乘方法。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示a或b为NULL。
|
||||
* @since 22
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -301,9 +312,9 @@ OH_Drawing_ErrorCode OH_Drawing_MatrixPreConcat(OH_Drawing_Matrix* a, OH_Drawing
|
||||
|
||||
/**
|
||||
* @brief 获取矩阵给定索引位的值。索引范围0-8。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER;
|
||||
* index小于0或者大于8时返回OH_DRAWING_ERROR_PARAMETER_OUT_OF_RANGE。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER;
|
||||
* <br>index小于0或者大于8时返回OH_DRAWING_ERROR_PARAMETER_OUT_OF_RANGE。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param index 索引位置,范围0-8。
|
||||
@@ -314,14 +325,14 @@ OH_Drawing_ErrorCode OH_Drawing_MatrixPreConcat(OH_Drawing_Matrix* a, OH_Drawing
|
||||
float OH_Drawing_MatrixGetValue(OH_Drawing_Matrix* matrix, int index);
|
||||
|
||||
/**
|
||||
* @brief 设置矩阵为单位矩阵,并围绕位于(px, py)的旋转轴点进行旋转。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 设置矩阵为单位矩阵,并围绕位于(px, py)的旋转中心点进行旋转。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param degree 角度,单位为度。正数表示顺时针旋转,负数表示逆时针旋转。
|
||||
* @param px x轴上坐标点。
|
||||
* @param py y轴上坐标点。
|
||||
* @param px 旋转中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 旋转中心点的y轴坐标,单位为物理像素px。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -329,27 +340,27 @@ void OH_Drawing_MatrixRotate(OH_Drawing_Matrix* matrix, float degree, float px,
|
||||
|
||||
/**
|
||||
* @brief 设置矩阵为单位矩阵,并平移(dx, dy)。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param dx 水平方向平移距离,正数表示往x轴正方向平移,负数表示往x轴负方向平移,该参数为浮点数。
|
||||
* @param dy 垂直方向平移距离,正数表示往y轴正方向平移,负数表示往y轴负方向平移,该参数为浮点数。
|
||||
* @param dx 水平方向平移距离,单位为物理像素px。正数表示往x轴正方向平移,负数表示往x轴负方向平移。
|
||||
* @param dy 垂直方向平移距离,单位为物理像素px。正数表示往y轴正方向平移,负数表示往y轴负方向平移。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
void OH_Drawing_MatrixTranslate(OH_Drawing_Matrix* matrix, float dx, float dy);
|
||||
|
||||
/**
|
||||
* @brief 设置矩阵为单位矩阵,并围绕位于(px, py)的旋转轴点,以sx和sy进行缩放。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 设置矩阵为单位矩阵,并围绕位于(px, py)的缩放中心点,以sx和sy进行缩放。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param sx 水平缩放因子,为负数时可看作是先关于y = px作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param sy 垂直缩放因子,为负数时可看作是先关于x = py作镜像翻转后再进行缩放,该参数为浮点数。
|
||||
* @param px x轴上坐标点。
|
||||
* @param py y轴上坐标点。
|
||||
* @param sx 水平缩放因子,为负数时可看作是先关于x = px作镜像翻转后再进行缩放。
|
||||
* @param sy 垂直缩放因子,为负数时可看作是先关于y = py作镜像翻转后再进行缩放。
|
||||
* @param px 缩放中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 缩放中心点的y轴坐标,单位为物理像素px。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -357,8 +368,8 @@ void OH_Drawing_MatrixScale(OH_Drawing_Matrix* matrix, float sx, float sy, float
|
||||
|
||||
/**
|
||||
* @brief 将矩阵inverse设置为矩阵的逆矩阵,并返回结果。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix、inverse任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix或inverse任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param inverse 指向逆矩阵对象{@link OH_Drawing_Matrix}的指针,开发者可调用{@link OH_Drawing_MatrixCreate}接口创建。
|
||||
@@ -370,15 +381,16 @@ bool OH_Drawing_MatrixInvert(OH_Drawing_Matrix* matrix, OH_Drawing_Matrix* inver
|
||||
|
||||
/**
|
||||
* @brief 通过设置源点以及目标点,生成对应的变换矩阵。
|
||||
* 源点以及目标点的个数要大于等于0,小于等于4。本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER;
|
||||
* count小于0或者大于4时返回OH_DRAWING_ERROR_PARAMETER_OUT_OF_RANGE。
|
||||
* <br>源点以及目标点的个数要大于等于0,小于等于4。本接口会产生错误码,
|
||||
* 可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER;
|
||||
* <br>count小于0或者大于4时返回OH_DRAWING_ERROR_PARAMETER_OUT_OF_RANGE。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param src 源点数组,为NULL时count应当为0。
|
||||
* @param dst 目标点数组,个数要与源点相等,为NULL时count应当为0。
|
||||
* @param count 源点数组以及目标点数组的个数,为0时将矩阵对象设为单位矩阵。
|
||||
* @return 函数返回是否可以生成对应矩阵以用来完成变换。true表示矩阵生成成功,false表示无法生成对应矩阵。
|
||||
* @param count 源点数组以及目标点数组的个数,取值范围为[0, 4],为0时将矩阵对象设为单位矩阵。
|
||||
* @return 函数返回是否可以生成对应矩阵用来完成变换。true表示矩阵生成成功,false表示无法生成对应矩阵。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -387,13 +399,13 @@ bool OH_Drawing_MatrixSetPolyToPoly(OH_Drawing_Matrix* matrix, const OH_Drawing_
|
||||
|
||||
/**
|
||||
* @brief 通过矩阵变换将源点数组映射到目标点数组。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix、src、dst任意一个为NULL或者count小于等于0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix、src或dst任意一个为NULL或者count小于等于0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param src 源点数组。
|
||||
* @param dst 目标点数组,个数要与源点相等。
|
||||
* @param count 源点数组以及目标点数组的个数。
|
||||
* @param src 源点数组,数组长度应大于等于count,否则可能导致越界访问。
|
||||
* @param dst 目标点数组,数组长度应大于等于count,否则可能导致越界访问。
|
||||
* @param count 源点数组以及目标点数组的个数,必须大于0。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -402,12 +414,12 @@ void OH_Drawing_MatrixMapPoints(const OH_Drawing_Matrix* matrix, const OH_Drawin
|
||||
|
||||
/**
|
||||
* @brief 将目标矩形设置为一个新的矩形,该矩形是能够包围源矩形的四个顶点通过矩阵变换映射后形成的新顶点的最小矩形。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix、src、dst任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix、src或dst任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param src 源矩形。
|
||||
* @param dst 目标矩形。
|
||||
* @param src 指向源矩形{@link OH_Drawing_Rect}的指针。
|
||||
* @param dst 指向目标矩形{@link OH_Drawing_Rect}的指针,用于存储映射后的结果。
|
||||
* @return 函数返回源矩形与映射后的目标矩形是否相等。true表示相等,false表示不相等。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
@@ -416,8 +428,8 @@ bool OH_Drawing_MatrixMapRect(const OH_Drawing_Matrix* matrix, const OH_Drawing_
|
||||
|
||||
/**
|
||||
* @brief 判断两个矩阵是否相等。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix、other任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix或other任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向用于判断的其中一个矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param other 指向用于判断的另一个矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
@@ -428,9 +440,10 @@ bool OH_Drawing_MatrixMapRect(const OH_Drawing_Matrix* matrix, const OH_Drawing_
|
||||
bool OH_Drawing_MatrixIsEqual(OH_Drawing_Matrix* matrix, OH_Drawing_Matrix* other);
|
||||
|
||||
/**
|
||||
* @brief 判断矩阵是否是单位矩阵。
|
||||
* 单位矩阵为 : | 1 0 0 || 0 1 0 || 0 0 1 |本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 判断矩阵是否是单位矩阵。单位矩阵为:`[1 0 0; 0 1 0; 0 0 1]`。
|
||||
* <br>如需判断两个矩阵是否相等,请使用{@link OH_Drawing_MatrixIsEqual}。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>matrix为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @return 函数返回true表示矩阵是单位矩阵,函数返回false表示矩阵不是单位矩阵。
|
||||
@@ -445,42 +458,47 @@ bool OH_Drawing_MatrixIsIdentity(OH_Drawing_Matrix* matrix);
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param isAffine 表示当前矩阵是否为仿射矩阵。作为出参使用。true表示当前矩阵是仿射矩阵,false表示当前矩阵不是仿射矩阵。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix或isAffine是空指针。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix或isAffine为NULL。
|
||||
* @since 23
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_MatrixIsAffine(const OH_Drawing_Matrix* matrix, bool* isAffine);
|
||||
|
||||
/**
|
||||
* @brief 将当前矩阵左乘一个以(px, py)为中心按(kx, ky)倾斜构造的矩阵。
|
||||
* @brief 将当前矩阵左乘一个以(px, py)为中心按(kx, ky)倾斜构造的矩阵。与{@link OH_Drawing_MatrixPreRotate}、
|
||||
* {@link OH_Drawing_MatrixPreScale}、
|
||||
* {@link OH_Drawing_MatrixPreTranslate}同属Pre系列方法。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param kx 表示x轴上的倾斜量。
|
||||
* @param ky 表示y轴上的倾斜量。
|
||||
* @param px 表示倾斜中心点的x轴坐标。
|
||||
* @param py 表示倾斜中心点的y轴坐标。
|
||||
* @param px 表示倾斜中心点的x轴坐标,单位为物理像素px。
|
||||
* @param py 表示倾斜中心点的y轴坐标,单位为物理像素px。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix是空指针。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix为NULL。
|
||||
* @since 23
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_MatrixPreSkew(OH_Drawing_Matrix* matrix, float kx, float ky, float px, float py);
|
||||
|
||||
/**
|
||||
* @brief 判断矩形经过当前矩阵映射后是否仍保持矩形形状。当矩阵是单位矩阵或仅包含平移、缩放、旋转90度倍数等仿射变换时满足该条件。
|
||||
* @brief 判断矩形经过当前矩阵映射后是否仍保持矩形形状。当矩阵是单位矩阵或仅包含平移、缩放、
|
||||
* 旋转90度倍数这类仿射变换时满足该条件。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param isRectStaysRect 表示经过该矩阵映射后的矩形的形状是否仍为矩形。作为出参使用。
|
||||
* true表示映射后的矩形形状是矩形,false表示映射后的矩形形状不是矩形。
|
||||
* <br>true表示映射后的矩形形状是矩形,false表示映射后的矩形形状不是矩形。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix或isRectStaysRect是空指针。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix或isRectStaysRect为NULL。
|
||||
* @since 23
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_MatrixRectStaysRect(const OH_Drawing_Matrix* matrix, bool* isRectStaysRect);
|
||||
|
||||
/**
|
||||
* @brief 设置矩阵,使其围绕旋转中心 (px, py) 以指定的正弦值和余弦值进行旋转。
|
||||
* 与{@link OH_Drawing_MatrixRotate}功能类似,
|
||||
* 区别在于OH_Drawing_MatrixRotate直接传入角度值,而本方法传入正弦值和余弦值。
|
||||
*
|
||||
* @param matrix 指向矩阵对象{@link OH_Drawing_Matrix}的指针。
|
||||
* @param sinValue 表示旋转角度的正弦值。
|
||||
@@ -488,15 +506,15 @@ OH_Drawing_ErrorCode OH_Drawing_MatrixRectStaysRect(const OH_Drawing_Matrix* mat
|
||||
* @param px 表示旋转中心的x轴坐标。
|
||||
* @param py 表示旋转中心的y轴坐标。
|
||||
* @return 函数返回执行结果。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix是空指针。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示matrix为NULL。
|
||||
* @since 23
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_MatrixSetSinCos(OH_Drawing_Matrix* matrix, float sinValue, float cosValue,
|
||||
float px, float py);
|
||||
|
||||
/**
|
||||
* @brief 用于销毁矩阵对象并回收该对象占有的内存。
|
||||
* @brief 用于销毁矩阵对象并回收该对象占用的内存。
|
||||
*
|
||||
* @param matrix 指向矩阵对象的指针。
|
||||
* @since 11
|
||||
|
||||
@@ -25,7 +25,9 @@
|
||||
/**
|
||||
* @file drawing_memory_stream.h
|
||||
*
|
||||
* @brief This file declares the functions related to the memory stream in the drawing module.
|
||||
* @brief 文件中定义了与内存流相关的功能函数,支持基于内存数据创建和销毁内存流对象。
|
||||
* 内存流支持数据拷贝或直接引用两种访问方式。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -44,13 +46,18 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief 创建一个内存流对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* data为NULL或者length等于0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 创建一个内存流对象,用于将内存中的数据封装为流,可作为数据源供图形处理接口(如图像解码)等后续绘制接口使用。
|
||||
* 创建的内存流对象使用完毕后,需要调用
|
||||
* {@link OH_Drawing_MemoryStreamDestroy()}销毁并回收内存。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>data为NULL或者length等于0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @return 函数会返回一个指针,指针指向创建的内存流对象{@link OH_Drawing_MemoryStream}。
|
||||
* @param data 数据段。
|
||||
* @param length 数据段长度。
|
||||
* @return 指向创建的内存流对象{@link OH_Drawing_MemoryStream}的指针,
|
||||
* 可作为数据源传递给后续图形处理接口(如图像解码)使用。
|
||||
* @param data 要创建内存流的数据缓冲区,数据为二进制字节流,长度由length参数指定,单位为字节。data不能为NULL,
|
||||
* 为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* 当copyData为false时,调用者还需确保data指向的数据在内存流对象生命周期内保持有效。
|
||||
* @param length 数据段长度,单位为字节,取值必须大于0。为0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @param copyData 是否拷贝数据。true表示内存流对象会拷贝一份数据段数据,false表示内存流对象直接使用数据段数据,不拷贝。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
@@ -58,7 +65,8 @@ extern "C" {
|
||||
OH_Drawing_MemoryStream* OH_Drawing_MemoryStreamCreate(const void* data, size_t length, bool copyData);
|
||||
|
||||
/**
|
||||
* @brief 销毁内存流对象并回收该对象占用的内存。
|
||||
* @brief 销毁由{@link OH_Drawing_MemoryStreamCreate()}创建的内存流对象并回收该对象占用的内存。
|
||||
* 销毁后不应再访问内存流对象。
|
||||
*
|
||||
* @param memoryStream 指向内存流对象{@link OH_Drawing_MemoryStream}的指针。
|
||||
* @since 12
|
||||
|
||||
@@ -25,7 +25,12 @@
|
||||
/**
|
||||
* @file drawing_path_effect.h
|
||||
*
|
||||
* @brief This file declares the functions related to the path effect in the drawing module.
|
||||
* @brief 文件中定义了与路径效果相关的功能函数。路径效果是对绘制路径进行几何变换的效果处理机制,
|
||||
* 在路径绘制到画布之前对路径的几何形状进行修改,例如将尖角变为圆角、将连续路径变为虚线等。
|
||||
* 多个路径效果可以通过组合(按顺序依次应用)
|
||||
* 或叠加(各自独立应用后合并结果)的方式一起使用。支持创建组合路径效果、圆角路径效果、虚线路径效果、打散路径效果、
|
||||
* 叠加路径效果等。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -51,37 +56,40 @@ extern "C" {
|
||||
*/
|
||||
typedef enum {
|
||||
/**
|
||||
* 表示路径效果是平移效果。
|
||||
* 表示虚线段沿路径平移绘制,不发生旋转或变形。
|
||||
*/
|
||||
DRAWING_PATH_DASH_STYLE_TRANSLATE,
|
||||
/**
|
||||
* 表示路径效果是旋转效果。
|
||||
* 表示虚线段沿路径旋转,使其方向跟随路径切线方向。
|
||||
*/
|
||||
DRAWING_PATH_DASH_STYLE_ROTATE,
|
||||
/**
|
||||
* 表示路径效果是变形效果。
|
||||
* 表示虚线段沿路径发生变形,以适应路径走向。
|
||||
*/
|
||||
DRAWING_PATH_DASH_STYLE_MORPH,
|
||||
} OH_Drawing_PathDashStyle;
|
||||
|
||||
/**
|
||||
* @brief 创建路径组合的路径效果对象。首先应用内部路径效果,然后应用外部路径效果。
|
||||
* 使用完毕后必须调用{@link OH_Drawing_PathEffectDestroy}销毁该路径效果对象,否则会导致内存泄漏。
|
||||
*
|
||||
* @param outer 表示组合路径效果中外部路径效果{@link OH_Drawing_PathEffect}的指针。
|
||||
* @param inner 表示组合路径效果中内部路径效果{@link OH_Drawing_PathEffect}的指针。
|
||||
* @return 函数返回一个指针,指针指向创建的路径效果对象{@link OH_Drawing_PathEffect}。
|
||||
* 如果返回nullptr,则创建失败,失败的原因可能是outer或者inner为nullptr。
|
||||
* @return 返回指向创建的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* <br>如果返回nullptr,则创建失败,原因是outer或者inner为nullptr。
|
||||
* @since 18
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_PathEffect* OH_Drawing_CreateComposePathEffect(OH_Drawing_PathEffect* outer, OH_Drawing_PathEffect* inner);
|
||||
|
||||
/**
|
||||
* @brief 创建一个将路径的夹角变成指定半径的圆角的路径效果对象。
|
||||
* @brief 创建一个将路径的夹角变成指定半径的圆角的路径效果对象。该路径效果会检测路径中的夹角(拐点),
|
||||
* 并将尖角替换为指定半径的圆弧,使路径在拐点处平滑过渡。使用完毕后必须调用
|
||||
* {@link OH_Drawing_PathEffectDestroy}销毁该路径效果对象,否则会导致内存泄漏。
|
||||
*
|
||||
* @param radius 表示圆角的半径,该值必须大于0时才生效。
|
||||
* @return 函数返回一个指针,指针指向创建的路径效果对象{@link OH_Drawing_PathEffect}。
|
||||
* 如果返回nullptr,则创建失败,失败的可能原因是radius小于等于0。
|
||||
* @param radius 表示圆角的半径,取值范围>0,单位为物理像素px。
|
||||
* @return 返回指向创建的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* <br>如果返回nullptr,则创建失败,原因是radius小于等于0。
|
||||
* @since 18
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -89,38 +97,45 @@ OH_Drawing_PathEffect* OH_Drawing_CreateCornerPathEffect(float radius);
|
||||
|
||||
/**
|
||||
* @brief 创建一个虚线效果的路径效果对象。虚线效果由一组虚线开的间隔、虚线关的间隔数据决定。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* intervals为NULL或者count小于等于0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* 使用完毕后必须调用{@link OH_Drawing_PathEffectDestroy}销毁该路径效果对象,否则会导致内存泄漏。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>intervals为nullptr或count小于等于0时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param intervals 虚线间隔数组首地址,偶数项的值表示虚线开的间隔长度,奇数项的值表示虚线关的间隔长度,单位为像素。
|
||||
* @param count 虚线间隔数组元素的个数,必须为大于0的偶数。
|
||||
* @param phase 虚线间隔数组中偏移量。
|
||||
* @return 函数返回一个指针,指针指向创建的路径效果对象{@link OH_Drawing_PathEffect}。
|
||||
* @param intervals 虚线间隔数组首地址,偶数项的值表示虚线可见段(开)的间隔长度,
|
||||
* 奇数项的值表示虚线间隙段(关)的间隔长度,单位为物理像素px。
|
||||
* @param count 虚线间隔数组元素的个数,取值范围>0,且为偶数。
|
||||
* @param phase 虚线间隔数组中的偏移量,用于控制虚线绘制的起始位置,单位为物理像素px。
|
||||
* @return 返回指向创建的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_PathEffect* OH_Drawing_CreateDashPathEffect(float* intervals, int count, float phase);
|
||||
|
||||
/**
|
||||
* @brief 创建一种将路径打散并且在路径上产生不规则分布的路径效果对象。
|
||||
* @brief 创建一种将路径打散并且在路径上产生不规则分布的路径效果对象。该路径效果按照segLength将路径分割为多个线段,
|
||||
* 并对每个线段的末端点在deviation范围内进行随机偏移,从而产生不规则分布的视觉效果。
|
||||
* 使用完毕后必须调用{@link OH_Drawing_PathEffectDestroy}销毁该路径效果对象,否则会导致内存泄漏。
|
||||
*
|
||||
* @param segLength 表示路径中每进行一次打散操作的长度,该值大于0时有效果。
|
||||
* @param deviation 表示绘制时的末端点的最大移动偏离量。
|
||||
* @return 函数返回一个指针,指针指向创建的路径效果对象{@link OH_Drawing_PathEffect}。
|
||||
* @param segLength 表示路径中每进行一次打散操作的长度,取值范围>0,单位为物理像素px。
|
||||
* @param deviation 表示绘制时的末端点的最大移动偏离量,单位为物理像素px。
|
||||
* @return 返回指向创建的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @since 18
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_PathEffect* OH_Drawing_CreateDiscretePathEffect(float segLength, float deviation);
|
||||
|
||||
/**
|
||||
* @brief 创建一个虚线效果的路径效果对象。
|
||||
* @brief 创建一个虚线效果的路径效果对象,使用指定路径作为虚线段样式,按照advance指定的步长沿目标路径重复排列。
|
||||
* 与{@link OH_Drawing_CreateDashPathEffect}使用虚线间隔数组控制开关不同,
|
||||
* 本接口使用指定路径作为虚线段形状。使用完毕后必须调用{@link OH_Drawing_PathEffectDestroy}销毁该路径效果对象,
|
||||
* 否则会导致内存泄漏。
|
||||
*
|
||||
* @param path 表示虚线样式的路径对象{@link OH_Drawing_Path}的指针。
|
||||
* @param advance 表示虚线段的步长。
|
||||
* @param phase 表示虚线段内图形在虚线步长范围内的偏移量。
|
||||
* @param type 表示虚线路径效果样式。
|
||||
* @return 函数返回一个指针,指针指向创建的路径效果对象{@link OH_Drawing_PathEffect}。
|
||||
* 如果返回nullptr,则创建失败,失败的可能原因是path为nullptr或者advance小于等于0。
|
||||
* @param advance 表示虚线段的步长,取值范围>0,单位为物理像素px。
|
||||
* @param phase 表示虚线样式的起始偏移量,用于控制虚线段绘制的起始位置,单位为物理像素px。
|
||||
* @param type 表示虚线路径效果样式,取值见{@link OH_Drawing_PathDashStyle}枚举。
|
||||
* @return 返回指向创建的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* <br>如果返回nullptr,则创建失败,原因是path为nullptr或者advance小于等于0。
|
||||
* @since 18
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -128,12 +143,14 @@ OH_Drawing_PathEffect* OH_Drawing_CreatePathDashEffect(const OH_Drawing_Path* pa
|
||||
OH_Drawing_PathDashStyle type);
|
||||
|
||||
/**
|
||||
* @brief 创建一个使用两种路径效果分别生效后叠加的路径效果对象。
|
||||
* @brief 创建一个使用两种路径效果叠加的路径效果对象。与{@link OH_Drawing_CreateComposePathEffect}的先后顺序应用不同,
|
||||
* 本接口将两种路径效果各自独立应用后将结果叠加。使用完毕后必须调用
|
||||
* {@link OH_Drawing_PathEffectDestroy}销毁该路径效果对象,否则会导致内存泄漏。
|
||||
*
|
||||
* @param firstPathEffect 指向路径对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @param secondPathEffect 指向路径对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @return 函数返回一个指针,指针指向创建的路径效果对象{@link OH_Drawing_PathEffect}。
|
||||
* 如果返回nullptr,则创建失败,失败的可能原因是firstPathEffect或者secondPathEffect为nullptr。
|
||||
* @param firstPathEffect 表示参与叠加的第一个路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @param secondPathEffect 表示参与叠加的第二个路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @return 返回指向创建的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* <br>如果返回nullptr,则创建失败,原因是firstPathEffect或者secondPathEffect为nullptr。
|
||||
* @since 18
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -141,9 +158,9 @@ OH_Drawing_PathEffect* OH_Drawing_CreateSumPathEffect(OH_Drawing_PathEffect* fir
|
||||
OH_Drawing_PathEffect* secondPathEffect);
|
||||
|
||||
/**
|
||||
* @brief 销毁路径效果对象并回收该对象占有内存。
|
||||
* @brief 销毁路径效果对象,并回收该对象占用的内存。路径效果对象使用完毕后必须调用此方法,否则会导致内存泄漏。
|
||||
*
|
||||
* @param pathEffect 指向路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @param pathEffect 指向需要销毁的路径效果对象{@link OH_Drawing_PathEffect}的指针。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
@@ -25,7 +25,9 @@
|
||||
/**
|
||||
* @file drawing_point.h
|
||||
*
|
||||
* @brief This file declares the functions related to the coordinate point in the drawing module.
|
||||
* @brief 文件中定义了与坐标点相关的功能函数,支持创建、获取、设置、取反、偏移及销毁坐标点对象等操作,
|
||||
* 便于在2D图形绘制中对坐标点进行管理与变换。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -45,82 +47,82 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief 用于创建一个坐标点对象。
|
||||
* @brief 创建一个坐标点对象。当此坐标点对象不再需要时,必须调用{@link OH_Drawing_PointDestroy}销毁并回收内存。
|
||||
*
|
||||
* @param x X轴坐标。
|
||||
* @param y Y轴坐标。
|
||||
* @return 函数会返回一个指针,指针指向创建的坐标点对象。
|
||||
* @param x 表示坐标点的x轴坐标,单位为物理像素px。
|
||||
* @param y 表示坐标点的y轴坐标,单位为物理像素px。
|
||||
* @return 函数返回指向创建的坐标点对象的指针。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_Point* OH_Drawing_PointCreate(float x, float y);
|
||||
|
||||
/**
|
||||
* @brief 用于获取点的x轴坐标。
|
||||
* @brief 获取坐标点的x轴坐标值。
|
||||
*
|
||||
* @param point 指向坐标点对象{@link OH_Drawing_Point}的指针。
|
||||
* @param x 表示点的x轴坐标。
|
||||
* @param x 输出参数,用于接收坐标点的x轴坐标值,单位为物理像素px。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数point或者x为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数point或者x为空。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_PointGetX(const OH_Drawing_Point* point, float* x);
|
||||
|
||||
/**
|
||||
* @brief 用于获取点的y轴坐标。
|
||||
* @brief 获取坐标点的y轴坐标值。
|
||||
*
|
||||
* @param point 指向坐标点对象{@link OH_Drawing_Point}的指针。
|
||||
* @param y 表示点的y轴坐标。
|
||||
* @param y 输出参数,用于接收坐标点的y轴坐标值,单位为物理像素px。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数point或者y为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数point或者y为空。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_PointGetY(const OH_Drawing_Point* point, float* y);
|
||||
|
||||
/**
|
||||
* @brief 用于设置点的x轴和y轴坐标。
|
||||
* @brief 设置坐标点的x轴和y轴坐标。
|
||||
*
|
||||
* @param point 指向坐标点对象{@link OH_Drawing_Point}的指针。
|
||||
* @param x 表示点的x轴坐标。
|
||||
* @param y 表示点的y轴坐标。
|
||||
* @param x 表示坐标点的x轴坐标,单位为物理像素px。
|
||||
* @param y 表示坐标点的y轴坐标,单位为物理像素px。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数point为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数point为空。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_PointSet(OH_Drawing_Point* point, float x, float y);
|
||||
|
||||
/**
|
||||
* @brief 对point对象的坐标取反。
|
||||
* @brief 对坐标点的x轴和y轴坐标取反。
|
||||
*
|
||||
* @param point 需要被操作的point对象指针。
|
||||
* @return 返回错误码。
|
||||
* 操作成功时,返回 {@link OH_DRAWING_SUCCESS}.
|
||||
* Point对象指针为空时,返回 {@link OH_DRAWING_ERROR_INCORRECT_PARAMETER}
|
||||
* @param point 指向坐标点对象{@link OH_Drawing_Point}的指针。
|
||||
* @return 函数返回执行错误码。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示参数point为空。
|
||||
* @since 26.0.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_PointNegate(OH_Drawing_Point* point);
|
||||
|
||||
/**
|
||||
* @brief 对point对象的坐标分别偏移dx、dy。
|
||||
* @brief 将坐标点沿x轴和y轴方向偏移指定距离。
|
||||
*
|
||||
* @param point 表示被操作的point对象指针。
|
||||
* @param dx 表示x轴方向的偏移量,单位为像素。
|
||||
* @param dy 表示y轴方向的偏移量,单位为像素。
|
||||
* @return 返回错误码。
|
||||
* 操作成功时,返回{@link OH_DRAWING_SUCCESS}.
|
||||
* Point对象指针为空时,返回 {@link OH_DRAWING_ERROR_INCORRECT_PARAMETER}
|
||||
* @param point 指向坐标点对象{@link OH_Drawing_Point}的指针。
|
||||
* @param dx 表示在x轴上的偏移量,单位为物理像素px。正数表示往x轴正方向平移,负数表示往x轴负方向平移。
|
||||
* @param dy 表示在y轴上的偏移量,单位为物理像素px。正数表示往y轴正方向平移,负数表示往y轴负方向平移。
|
||||
* @return 函数返回执行错误码。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INCORRECT_PARAMETER,表示参数point为空。
|
||||
* @since 26.0.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_PointOffset(OH_Drawing_Point* point, float dx, float dy);
|
||||
|
||||
/**
|
||||
* @brief 用于销毁坐标点对象并回收该对象占有的内存。
|
||||
* @brief 销毁坐标点对象并回收该对象占用的内存。需在{@link OH_Drawing_PointCreate}创建对象后且该对象不再使用时调用。
|
||||
*
|
||||
* @param point 指向坐标点对象的指针。
|
||||
* @since 11
|
||||
|
||||
@@ -25,7 +25,9 @@
|
||||
/**
|
||||
* @file drawing_record_cmd.h
|
||||
*
|
||||
* @brief This file declares the functions related to a recording command object.
|
||||
* @brief 文件中定义了与录制指令对象相关的功能函数。用于录制和回放绘制指令序列,支持创建录制画布、记录绘制操作、
|
||||
* 生成可回放的指令对象。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -45,7 +47,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief 创建一个录制指令工具对象。
|
||||
* @brief 创建一个指令录制工具对象。
|
||||
*
|
||||
* @return 返回用于录制指令的工具对象。
|
||||
* @since 13
|
||||
@@ -54,12 +56,12 @@ extern "C" {
|
||||
OH_Drawing_RecordCmdUtils* OH_Drawing_RecordCmdUtilsCreate(void);
|
||||
|
||||
/**
|
||||
* @brief 销毁一个录制指令工具对象,并回收该对象占用的内存。
|
||||
* @brief 销毁一个指令录制工具对象,并回收该对象占用的内存。
|
||||
*
|
||||
* @param recordCmdUtils 指向录制指令工具对象{@link OH_Drawing_RecordCmdUtils}的指针。
|
||||
* @param recordCmdUtils 指向指令录制工具对象{@link OH_Drawing_RecordCmdUtils}的指针。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmdUtils为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmdUtils为空。
|
||||
* @since 13
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -67,18 +69,18 @@ OH_Drawing_ErrorCode OH_Drawing_RecordCmdUtilsDestroy(OH_Drawing_RecordCmdUtils*
|
||||
|
||||
/**
|
||||
* @brief 开始录制。此接口需要与{@link OH_Drawing_RecordCmdUtilsFinishRecording}接口成对使用。
|
||||
* 指令录制工具生成录制类型的画布对象,可调用drawing的绘制接口,记录接下来所有的绘制指令。
|
||||
* <br>指令录制工具生成录制类型的画布对象,可调用drawing的绘制接口,记录接下来所有的绘制指令。
|
||||
*
|
||||
* @param recordCmdUtils 指向录制工具对象{@link OH_Drawing_RecordCmdUtils}的指针。
|
||||
* @param width 画布的宽度。
|
||||
* @param height 画布的高度。
|
||||
* @param recordCmdUtils 指向指令录制工具对象{@link OH_Drawing_RecordCmdUtils}的指针。
|
||||
* @param width 画布的宽度,必须大于0。
|
||||
* @param height 画布的高度,必须大于0。
|
||||
* @param canvas 指向画布对象{@link OH_Drawing_Canvas}的二级指针,作为出参,开发者无需释放。
|
||||
* 该画布对象不支持嵌套调用{@link OH_Drawing_CanvasDrawRecordCmd}接口。
|
||||
* <br>该画布对象不支持嵌套调用{@link OH_Drawing_CanvasDrawRecordCmd}接口。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS, 表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER, 表示参数recordCmdUtils或者canvas为空。
|
||||
* 当width和height小于等于0的时,也会返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* 返回OH_DRAWING_ERROR_ALLOCATION_FAILED,表示系统内存不足。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmdUtils或者canvas为空。
|
||||
* <br>当width和height小于等于0时,也会返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>返回OH_DRAWING_ERROR_ALLOCATION_FAILED,表示系统内存不足。
|
||||
* @since 13
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -87,16 +89,16 @@ OH_Drawing_ErrorCode OH_Drawing_RecordCmdUtilsBeginRecording(OH_Drawing_RecordCm
|
||||
|
||||
/**
|
||||
* @brief 结束录制。在调用此接口前,需要先调用{@link OH_Drawing_RecordCmdUtilsBeginRecording}接口。
|
||||
* 指令录制工具结束录制指令,将录制类型画布对象记录的绘制指令存入生成的录制指令对象。
|
||||
* <br>指令录制工具结束录制指令,将录制类型画布对象记录的绘制指令存入生成的录制指令对象。
|
||||
*
|
||||
* @param recordCmdUtils 指向录制指令工具对象{@link OH_Drawing_RecordCmdUtils}的指针。
|
||||
* @param recordCmd 指向录制指令对象 {@link OH_Drawing_RecordCmd} 的二级指针,作为出参,开发者调用 {@link OH_Drawing_CanvasDrawRecordCmd}
|
||||
* 接口绘制该对象。需要调用 {@link OH_Drawing_RecordCmdDestroy}
|
||||
* 接口释放。
|
||||
* @param recordCmdUtils 指向指令录制工具对象{@link OH_Drawing_RecordCmdUtils}的指针,不能为空。
|
||||
* @param recordCmd 指向录制指令对象{@link OH_Drawing_RecordCmd}的二级指针,作为出参,
|
||||
* 开发者调用{@link OH_Drawing_CanvasDrawRecordCmd}接口绘制该对象。
|
||||
* 需要调用{@link OH_Drawing_RecordCmdDestroy}接口释放。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmdUtils或者recordCmd为空。
|
||||
* 返回OH_DRAWING_ERROR_ALLOCATION_FAILED,表示系统内存不足。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmdUtils或者recordCmd为空。
|
||||
* <br>返回OH_DRAWING_ERROR_ALLOCATION_FAILED,表示系统内存不足。
|
||||
* @since 13
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -106,10 +108,10 @@ OH_Drawing_ErrorCode OH_Drawing_RecordCmdUtilsFinishRecording(OH_Drawing_RecordC
|
||||
/**
|
||||
* @brief 销毁录制指令对象,并回收该对象占用的内存。
|
||||
*
|
||||
* @param recordCmd 指向对象{@link OH_Drawing_RecordCmd}的指针。
|
||||
* @param recordCmd 指向录制指令对象{@link OH_Drawing_RecordCmd}的指针。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmd为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数recordCmd为空。
|
||||
* @since 13
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
/**
|
||||
* @file drawing_round_rect.h
|
||||
*
|
||||
* @brief This file declares the functions related to the rounded rectangle in the drawing module.
|
||||
* @brief 文件中定义了与圆角矩形相关的功能函数。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -71,11 +72,11 @@ typedef enum {
|
||||
|
||||
/**
|
||||
* @brief 用于创建一个圆角矩形对象。本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* rect为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>rect为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param rect 指向矩形对象的指针。
|
||||
* @param xRad X轴上的圆角半径,小于或等于0时无效。
|
||||
* @param yRad Y轴上的圆角半径,小于或等于0时无效。
|
||||
* @param xRad X轴上的圆角半径,小于或等于0时无效。单位为物理像素px。
|
||||
* @param yRad Y轴上的圆角半径,小于或等于0时无效。单位为物理像素px。
|
||||
* @return 函数会返回一个指针,指针指向创建的圆角矩形对象。
|
||||
* @since 11
|
||||
* @version 1.0
|
||||
@@ -85,7 +86,7 @@ OH_Drawing_RoundRect* OH_Drawing_RoundRectCreate(const OH_Drawing_Rect* rect, fl
|
||||
/**
|
||||
* @brief 用于创建圆角矩形的拷贝。
|
||||
*
|
||||
* @param roundRect 指向用于拷贝的圆角矩形对象{@link OH_Drawing_RoundRect}的指针。
|
||||
* @param roundRect 指向圆角矩形对象OH_Drawing_RoundRect的指针
|
||||
* @return 函数会返回一个指针,指针指向创建的新圆角矩形对象。
|
||||
* @since 20
|
||||
* @version 1.0
|
||||
@@ -94,12 +95,13 @@ OH_Drawing_RoundRect* OH_Drawing_RoundRectCopy(const OH_Drawing_RoundRect* round
|
||||
|
||||
/**
|
||||
* @brief 用于设置圆角矩形中指定圆角位置的圆角半径。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* roundRect为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>roundRect为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param roundRect 指向圆角矩形对象的指针。
|
||||
* @param roundRect 指向圆角矩形对象的指针
|
||||
* @param pos 圆角位置的枚举,支持类型可见{@link OH_Drawing_CornerPos}。
|
||||
* @param radii 圆角半径结构体OH_Drawing_Corner_Radii,其中包含x轴方向和y轴方向上的半径,半径小于等于0时无效。
|
||||
* @param radii 圆角半径结构体OH_Drawing_Corner_Radii,其中包含x轴方向和y轴方向上的半径,单位为物理像素px,
|
||||
* 半径小于等于0时无效。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -108,10 +110,10 @@ void OH_Drawing_RoundRectSetCorner(OH_Drawing_RoundRect* roundRect,
|
||||
|
||||
/**
|
||||
* @brief 用于获取圆角矩形中指定圆角位置的圆角半径。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* roundRect为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>roundRect为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param roundRect 指向圆角矩形对象的指针。
|
||||
* @param roundRect 指向圆角矩形对象的指针
|
||||
* @param pos 圆角位置的枚举,支持类型可见{@link OH_Drawing_CornerPos}。
|
||||
* @return 返回指定圆角位置的圆角半径结构体OH_Drawing_Corner_Radii,其中包含x轴方向和y轴方向上的半径。
|
||||
* @since 12
|
||||
@@ -131,12 +133,12 @@ void OH_Drawing_RoundRectDestroy(OH_Drawing_RoundRect* roundRect);
|
||||
/**
|
||||
* @brief 用于将圆角矩形沿x轴方向和y轴方向平移指定距离。
|
||||
*
|
||||
* @param roundRect 指向圆角矩形对象{@link OH_Drawing_Point2D}的指针。
|
||||
* @param dx x轴方向偏移量。
|
||||
* @param dy y轴方向偏移量。
|
||||
* @param roundRect 指向圆角矩形对象的指针。
|
||||
* @param dx x轴方向偏移量,单位为物理像素px。正值表示向x轴正方向偏移,负值表示向x轴负方向偏移,0表示不偏移。
|
||||
* @param dy y轴方向偏移量,单位为物理像素px。正值表示向y轴正方向偏移,负值表示向y轴负方向偏移,0表示不偏移。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数roundRect为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数roundRect为NULL。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
@@ -25,8 +25,9 @@
|
||||
/**
|
||||
* @file drawing_surface.h
|
||||
*
|
||||
* @brief This file declares the functions related to the surface in the drawing module, including creating, destroying,
|
||||
* and using the surface.
|
||||
* @brief 本文件定义了与surface相关的功能函数,包括surface的创建、销毁和使用等。surface对象用于管理画布绘制的内容,
|
||||
* 支持通过图形处理器上下文创建离屏surface和与屏幕窗口绑定的surface。
|
||||
* <br>本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
|
||||
*
|
||||
* @kit ArkGraphics2D
|
||||
* @library libnative_drawing.so
|
||||
@@ -46,14 +47,20 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief 使用图形处理器上下文创建一个surface对象,用于管理画布绘制的内容。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* gpuContext为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* @brief 使用图形处理器上下文创建离屏surface对象,用于管理画布绘制的内容。
|
||||
* 若需将绘制内容上屏显示(配合{@link OH_Drawing_SurfaceFlush}使用),请改用
|
||||
* {@link OH_Drawing_SurfaceCreateOnScreen}创建与屏幕窗口绑定的surface对象。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>gpuContext为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param gpuContext 指向图形处理器上下文对象的指针{@link OH_Drawing_GpuContext}。
|
||||
* @param flag 用于控制内存分配是否计入缓存预算。true则计入高速缓存预算,false则不计入高速缓存预算。
|
||||
* @param imageInfo 图片信息{@link OH_Drawing_Image_Info}结构体。
|
||||
* @return 返回一个指针,指针指向创建的surface对象{@link OH_Drawing_Surface}。
|
||||
* @param gpuContext 指向图形处理器上下文对象{@link OH_Drawing_GpuContext}的指针。
|
||||
* @param flag 用于控制内存分配是否计入缓存预算。true则计入缓存预算,false则不计入缓存预算。
|
||||
* 缓存预算为图形处理器缓存可使用的内存上限,计入预算的内存分配会占用缓存额度。
|
||||
* 当需要将绘制内容纳入缓存管理以提升性能时,
|
||||
* flag设置为true;当绘制内容为临时数据、不需要长期缓存时,flag设置为false。
|
||||
* @param imageInfo 图像信息{@link OH_Drawing_Image_Info}结构体,用于指定所创建surface的图像宽度、高度、
|
||||
* 颜色类型和透明度类型等属性。
|
||||
* @return 返回指向创建的surface对象{@link OH_Drawing_Surface}的指针。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -61,16 +68,18 @@ OH_Drawing_Surface* OH_Drawing_SurfaceCreateFromGpuContext(
|
||||
OH_Drawing_GpuContext* gpuContext, bool flag, OH_Drawing_Image_Info imageInfo);
|
||||
|
||||
/**
|
||||
* @brief 使用图形处理器上下文创建一个与屏幕窗口绑定的surface对象,用于管理画布绘制的内容。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* gpuContext或window为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* imageInfo的宽高和window的宽高需保持一致。
|
||||
* @brief 使用图形处理器上下文创建一个与屏幕窗口绑定的surface对象,用于管理画布绘制的内容。若不需要上屏显示,
|
||||
* 请改用{@link OH_Drawing_SurfaceCreateFromGpuContext}
|
||||
* 创建离屏surface对象。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>gpuContext或window为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>imageInfo的宽高和window的宽高需保持一致,否则对象创建失败。
|
||||
*
|
||||
* @param gpuContext 指向图形处理器上下文对象的指针{@link OH_Drawing_GpuContext}。
|
||||
* 该图形处理器上下文对象必须由{@link OH_Drawing_GpuContextCreate}创建,否则surface对象会创建失败。
|
||||
* @param imageInfo 图片信息{@link OH_Drawing_Image_Info}结构体。
|
||||
* @param window 指向屏幕窗口对象的指针。
|
||||
* @return 返回一个指针,指针指向创建的surface对象{@link OH_Drawing_Surface}。
|
||||
* @param gpuContext 指向图形处理器上下文对象{@link OH_Drawing_GpuContext}的指针。
|
||||
* @param imageInfo 图像信息{@link OH_Drawing_Image_Info}结构体,用于指定所创建surface的图像宽度、高度、
|
||||
* 颜色类型和透明度类型等属性。
|
||||
* @param window 指向屏幕窗口对象(OHNativeWindow)的指针,实际应传入OHNativeWindow*类型。
|
||||
* @return 返回指向创建的surface对象{@link OH_Drawing_Surface}的指针。
|
||||
* @since 16
|
||||
* @version 1.0
|
||||
*/
|
||||
@@ -79,33 +88,39 @@ OH_Drawing_Surface* OH_Drawing_SurfaceCreateOnScreen(
|
||||
|
||||
/**
|
||||
* @brief 通过surface对象获取画布对象。
|
||||
* 本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* surface为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
* <br>本接口会产生错误码,可以通过{@link OH_Drawing_ErrorCodeGet}查看错误码的取值。
|
||||
* <br>surface为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。
|
||||
*
|
||||
* @param surface 指向创建的surface对象的指针。
|
||||
* @return 返回一个指针,指针指向创建的画布对象{@link OH_Drawing_Canvas}。返回的指针不需要由调用者管理。
|
||||
* @param surface 指向已创建的surface对象的指针{@link OH_Drawing_Surface},用于从中获取画布对象。该surface对象可由
|
||||
* {@link OH_Drawing_SurfaceCreateFromGpuContext}或{@link OH_Drawing_SurfaceCreateOnScreen}创建。
|
||||
* @return 返回指向获取的画布对象{@link OH_Drawing_Canvas}的指针。返回的指针不需要由调用者管理,
|
||||
* 其生命周期由对应的surface对象管理。调用
|
||||
* {@link OH_Drawing_SurfaceDestroy}销毁surface对象后,不应再使用该画布对象。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_Canvas* OH_Drawing_SurfaceGetCanvas(OH_Drawing_Surface* surface);
|
||||
|
||||
/**
|
||||
* @brief 将surface对象上的画布绘制内容提交给GPU处理,完成绘制内容上屏显示。
|
||||
* @brief 将surface对象上的画布绘制内容提交给图形处理器处理,完成绘制内容上屏显示。
|
||||
*
|
||||
* @param surface 指向创建的surface对象的指针{@link OH_Drawing_Surface}。该surface对象必须由{@link OH_Drawing_SurfaceCreateOnScreen}创建,
|
||||
* 否则该接口调用将没有任何效果。
|
||||
* 否则该接口调用不会将绘制内容上屏显示。
|
||||
* @return 函数返回执行错误码。
|
||||
* 返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* 返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数surface为空。
|
||||
* <br>返回OH_DRAWING_SUCCESS,表示执行成功。
|
||||
* <br>返回OH_DRAWING_ERROR_INVALID_PARAMETER,表示参数surface为NULL。
|
||||
* @since 16
|
||||
* @version 1.0
|
||||
*/
|
||||
OH_Drawing_ErrorCode OH_Drawing_SurfaceFlush(OH_Drawing_Surface* surface);
|
||||
|
||||
/**
|
||||
* @brief 销毁surface对象并回收该对象占用的内存。
|
||||
* @brief 销毁surface对象并回收该对象占用的内存。调用本接口销毁surface对象后,
|
||||
* 通过{@link OH_Drawing_SurfaceGetCanvas}获取的画布对象不应再使用,其生命周期由surface对象管理。
|
||||
*
|
||||
* @param surface 指向创建的surface对象的指针。
|
||||
* @param surface 指向待销毁的surface对象的指针{@link OH_Drawing_Surface}。该surface对象可由
|
||||
* {@link OH_Drawing_SurfaceCreateFromGpuContext}或{@link OH_Drawing_SurfaceCreateOnScreen}创建,
|
||||
* 销毁后该指针不应再被使用。
|
||||
* @since 12
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user