GGiteeupdate
56144b6d创建于 2024年5月21日历史提交

drawing_shader_effect.h

概述

声明与绘图模块中的着色器对象相关的函数。

引用文件:<native_drawing/drawing_shader_effect.h>

库: libnative_drawing.so

起始版本: 11

相关模块:Drawing

汇总

类型定义

名称 描述
typedef enum OH_Drawing_TileMode OH_Drawing_TileMode 着色器效果平铺模式的枚举。

枚举

名称 描述
OH_Drawing_TileMode { CLAMP, REPEAT, MIRROR, DECAL } 着色器效果平铺模式的枚举。

函数

名称 描述
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateColorShader (const uint32_t color) 创建具有单一颜色的着色器。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateLinearGradient (const OH_Drawing_Point *startPt, const OH_Drawing_Point *endPt, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode) 创建着色器,在两个指定点之间生成线性渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateLinearGradientWithLocalMatrix (const OH_Drawing_Point2D *startPt, const OH_Drawing_Point2D *endPt, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode, const OH_Drawing_Matrix *) 创建着色器,在两个指定点之间生成线性渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateRadialGradient (const OH_Drawing_Point *centerPt, float radius, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode) 创建着色器,在给定圆心和半径的情况下生成径向渐变。 从起点到终点颜色从内到外进行圆形渐变(从中间向外拉)被称为径向渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateRadialGradientWithLocalMatrix (const OH_Drawing_Point2D *centerPt, float radius, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode, const OH_Drawing_Matrix *) 创建着色器,在给定圆心和半径的情况下生成径向渐变。 从起点到终点颜色从内到外进行圆形渐变(从中间向外拉)被称为径向渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateSweepGradient (const OH_Drawing_Point *centerPt, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode) 创建着色器,在给定中心的情况下生成扇形渐变。颜色从0°到360°渐变被称为扇形渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateImageShader (OH_Drawing_Image *, OH_Drawing_TileMode tileX, OH_Drawing_TileMode tileY, const OH_Drawing_SamplingOptions *, const OH_Drawing_Matrix *) 创建图像着色器。此接口不建议用于录制类型的画布,会影响性能。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateTwoPointConicalGradient (const OH_Drawing_Point2D *startPt, float startRadius, const OH_Drawing_Point2D *endPt, float endRadius, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode, const OH_Drawing_Matrix *) 创建着色器,在给定两个圆之间生成渐变。
void OH_Drawing_ShaderEffectDestroy (OH_Drawing_ShaderEffect *) 销毁着色器对象,并收回该对象占用的内存。