display_vgu.h

概述

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

Since:

3.0

相关模块:

Display

汇总

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

宏定义

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

类型定义

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

枚举

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