display_vgu.h

概述

定义2D矢量硬件加速模块相关驱动函数。

Since:

3.0

相关模块:

Display

汇总

名称 描述
VGUPoint 坐标点对象。
VGURect 矩形对象。
VGUPath 路径对象,存放路径命令和坐标数据。
VGUMatrix3 变换矩阵。
VGUBuffer 硬件加速渲染位图缓存。
VGUMaskLayer 定义蒙版图层。
VGUSurface 2D硬件加速绘制目标表面。
VGUColorStop 渐变颜色分布位置。
VGULinear 线性渐变。
VGURadial 辐射渐变。
VGUConic 圆锥渐变。
VGUImage 图像对象。
VGUPattern 图片模式对象。
VGUGradient 渐变对象。
VGUSolid 颜色对象。
VGUPaintStyle 填充或描边路径的渲染风格。
VGUFillAttr 填充路径的属性。
VGUStrokeAttr 描边路径的属性。
VGUFuncs 定义2D硬件加速驱动函数。

宏定义

名称 描述
HDI_VGU_SCALAR_IS_FLOAT   1 VGU标量是否为浮点型

类型定义

名称 描述
VGUScalar VGU标量
VGUPixelFormat 像素格式。
VGUBlendType 混合操作类型。

枚举

名称 描述
VGUPathDataType{ VGU_DATA_TYPE_S16 = 0, VGU_DATA_TYPE_S32, VGU_DATA_TYPE_F32 } 路径坐标数据类型。
VGUCapability{ VGU_CAP_BLIT = (1 << 0), VGU_CAP_BLIT_NUM = (1 << 1), VGU_CAP_PATH = (1 << 2), VGU_CAP_FILTER_BLUR = (1 << 3) } 硬件加速能力。
VGUResult{   VGU_SUCCESS = 0, VGU_NO_SUPPORT = -1, VGU_OPERATION_FAILED = -2, VGU_OUT_OF_MEMORY = -3,   VGU_TIMEOUT = -4, VGU_INVALID_PARAMETER = -5, VGU_BUSY = -6, VGU_NO_CONTEXT = -7 } 错误码定义。
VGULineCap{ VGU_LINECAP_BUTT = 0, VGU_LINECAP_ROUND, VGU_LINECAP_SQUARE } 线帽。
VGUJointType{ VGU_LINE_JOIN_MITER = 0, VGU_LINE_JOIN_ROUND, VGU_LINE_JOIN_BEVEL, VGU_LINE_JOIN_BUTT } 联接类型。
VGUFilter{ VGU_FILTER_BILINEAR = 0, VGU_FILTER_NEAREST, VGU_FILTER_LINEAR, VGU_FILTER_BUTT } 图像滤波类型。
VGUFillRule{ VGU_RULE_WINDING = 0, VGU_RULE_EVEN_ODD, VGU_RULE_BUTT } 填充规则定义。
VGUFillSpread{ VGU_SPREAD_PAD = 0, VGU_SPREAD_REFLECT, VGU_SPREAD_REPEAT, VGU_SPREAD_BUTT } 渐变填充区域外的延展类型。
VGUWrapType{ VGU_WRAP_REFLECT = 0, VGU_WRAP_REPEAT, VGU_WRAP_BUTT } 图像模式填充延展类型。
VGUPathCmd{   VGU_PATH_CMD_CLOSE = 0, VGU_PATH_CMD_MOVE, VGU_PATH_CMD_LINE, VGU_PATH_CMD_HLINE,   VGU_PATH_CMD_VLINE, VGU_PATH_CMD_QUAD, VGU_PATH_CMD_CUBIC, VGU_PATH_CMD_SQUAD,   VGU_PATH_CMD_SCUBIC, VGU_PATH_CMD_BUTT } 路径绘制指令类型。
VGUTransformType{ VGU_TRANSFORM_TRANSLATE = (1 << 0), VGU_TRANSFORM_SCALE = (1 << 1), VGU_TRANSFORM_ROTATE_90 = (1 << 2), VGU_TRANSFORM_ROTATE_180 = (1 << 3),   VGU_TRANSFORM_ROTATE_270 = (1 << 4), VGU_TRANSFORM_OTHER = (1 << 16) } 变换类型。
VGUClipType{ VGU_CLIP_RECT = 0, VGU_CLIP_PATH, VGU_CLIP_BUTT } 绘制表面剪切类型。
VGUGradientType{ VGU_GRADIENT_LINEAR = 0, VGU_GRADIENT_RADIAL, VGU_GRADIENT_CONIC, VGU_GRADIENT_BUTT } 渐变类型。
VGUPaintType{ VGU_PAINT_SOLID = 0, VGU_PAINT_GRADIENT, VGU_PAINT_PATTERN, VGU_PAINT_BUTT } 渲染对象。

函数

名称 描述
VGUPathInit(VGUPath *path, VGUPathDataType type, const uint8_t *segments, int numSegments, const uint8_t *data, bool enAlias, VGURect boundBox) 初始化路径对象。
VGUPathAppend(VGUPath *path, const VGUPath *subpath) 添加子路径到当前路径中。
VGUPathClear(VGUPath *path) 清除路径对象内存。
VGUMatrixIdentity(VGUMatrix3 *matrix) 初始化矩阵对象为单位矩阵。
VGUMatrixScale(VGUMatrix3 *matrix, float xScale, float yScale) 矩阵变换缩放。
VGUMatrixRotate(VGUMatrix3 *matrix, float degree) 矩阵变换旋转。
VGUMatrixTranslate(VGUMatrix3 *matrix, float x, float y) 矩阵变换平移。
VGUGradientColorStop(VGUGradient *gradient, const VGUColorStop *colorStop, uint32_t count) 对渐变添加ColorStop。
VGUGradientClearStop(VGUGradient *gradient) 清除ColorStop。
VGUGradientMatrix(VGUGradient *gradient, const VGUMatrix3 *matrix) 设置渐变对象的变换矩阵。
VGUGradientLinear(VGUGradient *gradient, const VGUPoint *p1, const VGUPoint *p2) 创建线性渐变对象。
VGUGradientRadial(VGUGradient *gradient, const VGUPoint *p1, VGUScalar r1, const VGUPoint *p2, VGUScalar r2) 创建辐射渐变对象
VGUGradientConic(VGUGradient *gradient, VGUScalar cx, VGUScalar cy) 创建圆锥渐变对象。
VGUInitialize(VGUFuncs **funcs) 获取硬件加速相关的操作接口指针。
VGUUninitialize(VGUFuncs *funcs) 去初始化硬件加速模块,同时释放硬件加速模块操作函数指针。