Kiwano Engine  v1.2.x
kiwano::CanvasRenderContext类 参考

画布渲染上下文 更多...

#include <Canvas.h>

类 kiwano::CanvasRenderContext 继承关系图:
kiwano::CanvasRenderContext 的协作图:

Public 成员函数

void BeginDraw ()
 开始渲染
 
void EndDraw ()
 结束渲染
 
void DrawShape (ShapePtr shape)
 画形状轮廓 更多...
 
void DrawLine (const Point &begin, const Point &end)
 画线段 更多...
 
void DrawCircle (const Point &center, float radius)
 画圆形边框 更多...
 
void DrawEllipse (const Point &center, const Vec2 &radius)
 画椭圆形边框 更多...
 
void DrawRect (const Rect &rect)
 画矩形边框 更多...
 
void DrawRoundedRect (const Rect &rect, const Vec2 &radius)
 画圆角矩形边框 更多...
 
void FillShape (ShapePtr shape)
 填充形状 更多...
 
void FillCircle (const Point &center, float radius)
 填充圆形 更多...
 
void FillEllipse (const Point &center, const Vec2 &radius)
 填充椭圆形 更多...
 
void FillRect (const Rect &rect)
 填充矩形 更多...
 
void FillRoundedRect (const Rect &rect, const Vec2 &radius)
 填充圆角矩形 更多...
 
void DrawTexture (TexturePtr texture, const Point &pos, const Rect *crop_rect=nullptr)
 绘制纹理 更多...
 
void DrawTexture (TexturePtr texture, const Point &pos, const Size &size, const Rect *crop_rect=nullptr)
 绘制纹理 更多...
 
void DrawSpriteFrame (const SpriteFrame &frame, const Point &pos)
 绘制精灵帧 更多...
 
void DrawSpriteFrame (const SpriteFrame &frame, const Point &pos, const Size &size)
 绘制精灵帧 更多...
 
void DrawTextLayout (const String &text, const TextStyle &style, const Point &point)
 绘制文字布局 更多...
 
void DrawTextLayout (TextLayoutPtr layout, const Point &point)
 绘制文字布局 更多...
 
void Clear ()
 清空画布
 
void Clear (const Color &clear_color)
 清空画布 更多...
 
void SetFillColor (const Color &color)
 设置填充颜色 更多...
 
void SetFillBrush (BrushPtr brush)
 设置填充画刷 更多...
 
BrushPtr GetFillBrush () const
 获取填充画刷
 
void SetStrokeColor (const Color &color)
 设置轮廓颜色 更多...
 
void SetStrokeBrush (BrushPtr brush)
 设置轮廓画刷 更多...
 
BrushPtr GetStrokeBrush () const
 获取轮廓画刷
 
void SetStrokeStyle (StrokeStylePtr stroke_style)
 设置轮廓样式 更多...
 
StrokeStylePtr GetStrokeStyle () const
 获取轮廓样式
 
void PushClipRect (const Rect &clip_rect)
 添加一个裁剪区域 更多...
 
void PopClipRect ()
 删除最近添加的裁剪区域
 
void PushLayer (LayerPtr layer)
 添加一个图层 更多...
 
void PopLayer ()
 删除最近添加的图层
 
Size GetSize () const
 获取画布大小
 
void SetTransform (const Matrix3x2 &matrix)
 设置渲染上下文的二维变换矩阵
 
void SetAntialiasMode (bool enabled)
 设置抗锯齿模式
 
void SetTextAntialiasMode (TextAntialiasMode mode)
 设置文字抗锯齿模式
 
- Public 成员函数 继承自 kiwano::ObjectBase
 ObjectBase ()
 构造基础对象
 
void SetName (const String &name)
 设置对象名
 
String GetName () const
 获取对象名
 
bool IsName (const String &name) const
 判断对象的名称是否相同 更多...
 
void * GetUserData () const
 获取用户数据
 
void SetUserData (void *data)
 设置用户数据
 
uint64_t GetObjectID () const
 获取对象ID
 
void DoSerialize (Serializer *serializer) const override
 序列化
 
void DoDeserialize (Deserializer *deserializer) override
 反序列化
 
virtual bool IsValid () const
 判断对象是否有效
 
ObjectStatusGetStatus () const
 获取对象状态
 
void SetStatus (const ObjectStatus &status)
 设置对象状态
 
void Fail (const String &msg, int code=ObjectStatus::fail)
 将对象标记为失败状态
 
void ClearStatus ()
 清除对象状态
 
- Public 成员函数 继承自 kiwano::RefObject
void Retain ()
 增加引用计数
 
void Release ()
 减少引用计数
 
uint32_t GetRefCount () const
 获取引用计数
 
- Public 成员函数 继承自 kiwano::Serializable
Vector< uint8_t > Serialize () const
 序列化为字节串
 
void Deserialize (const Vector< uint8_t > &data)
 从字节串反序列化
 

友元

class Canvas
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 kiwano::ObjectBase
static void SetObjectPolicy (const ObjectPolicyFunc &policy)
 设置对象处理策略
 
static bool IsTracingLeaks ()
 是否启用了内存泄漏追踪
 
static void StartTracingLeaks ()
 开始追踪内存泄漏
 
static void StopTracingLeaks ()
 停止追踪内存泄漏
 
static void DumpTracingObjects ()
 打印所有追踪中的对象信息
 
static Vector< ObjectBase * > & GetTracingObjects ()
 获取所有追踪中的对象
 
- 静态 Public 成员函数 继承自 kiwano::RefObject
static void * operator new (size_t size)
 
static void operator delete (void *ptr)
 
static void * operator new (size_t size, std::nothrow_t const &) noexcept
 
static void operator delete (void *ptr, std::nothrow_t const &) noexcept
 
static void * operator new (size_t size, void *ptr) noexcept
 
static void operator delete (void *ptr, void *place) noexcept
 

详细描述

画布渲染上下文

成员函数说明

void kiwano::CanvasRenderContext::Clear ( const Color clear_color)
inline

清空画布

参数
clear_color清空颜色
void kiwano::CanvasRenderContext::DrawCircle ( const Point center,
float  radius 
)
inline

画圆形边框

参数
center圆形原点
radius圆形半径
void kiwano::CanvasRenderContext::DrawEllipse ( const Point center,
const Vec2 radius 
)
inline

画椭圆形边框

参数
center椭圆原点
radius椭圆半径
void kiwano::CanvasRenderContext::DrawLine ( const Point begin,
const Point end 
)
inline

画线段

参数
begin线段起点
end线段终点
void kiwano::CanvasRenderContext::DrawRect ( const Rect rect)
inline

画矩形边框

参数
rect矩形
void kiwano::CanvasRenderContext::DrawRoundedRect ( const Rect rect,
const Vec2 radius 
)
inline

画圆角矩形边框

参数
rect矩形
radius矩形圆角半径
void kiwano::CanvasRenderContext::DrawShape ( ShapePtr  shape)
inline

画形状轮廓

参数
shape形状
void kiwano::CanvasRenderContext::DrawSpriteFrame ( const SpriteFrame frame,
const Point pos 
)
inline

绘制精灵帧

参数
frame精灵帧
pos绘制的目标位置
void kiwano::CanvasRenderContext::DrawSpriteFrame ( const SpriteFrame frame,
const Point pos,
const Size size 
)
inline

绘制精灵帧

参数
frame精灵帧
pos绘制的目标位置
size绘制的目标大小
void kiwano::CanvasRenderContext::DrawTextLayout ( const String &  text,
const TextStyle style,
const Point point 
)
inline

绘制文字布局

参数
text文字
style文字样式
point绘制文字的位置
void kiwano::CanvasRenderContext::DrawTextLayout ( TextLayoutPtr  layout,
const Point point 
)
inline

绘制文字布局

参数
layout文字布局
point绘制布局的位置
void kiwano::CanvasRenderContext::DrawTexture ( TexturePtr  texture,
const Point pos,
const Rect crop_rect = nullptr 
)
inline

绘制纹理

参数
texture纹理
pos绘制的目标位置
crop_rect纹理裁剪矩形
void kiwano::CanvasRenderContext::DrawTexture ( TexturePtr  texture,
const Point pos,
const Size size,
const Rect crop_rect = nullptr 
)
inline

绘制纹理

参数
texture纹理
pos绘制的目标位置
size绘制的目标大小
crop_rect纹理裁剪矩形
void kiwano::CanvasRenderContext::FillCircle ( const Point center,
float  radius 
)
inline

填充圆形

参数
center圆形原点
radius圆形半径
void kiwano::CanvasRenderContext::FillEllipse ( const Point center,
const Vec2 radius 
)
inline

填充椭圆形

参数
center椭圆原点
radius椭圆半径
void kiwano::CanvasRenderContext::FillRect ( const Rect rect)
inline

填充矩形

参数
rect矩形
void kiwano::CanvasRenderContext::FillRoundedRect ( const Rect rect,
const Vec2 radius 
)
inline

填充圆角矩形

参数
rect矩形
radius矩形圆角半径
void kiwano::CanvasRenderContext::FillShape ( ShapePtr  shape)
inline

填充形状

参数
shape形状
void kiwano::CanvasRenderContext::PushClipRect ( const Rect clip_rect)
inline

添加一个裁剪区域

参数
clip_rect裁剪矩形
void kiwano::CanvasRenderContext::PushLayer ( LayerPtr  layer)
inline

添加一个图层

参数
layer图层
void kiwano::CanvasRenderContext::SetFillBrush ( BrushPtr  brush)
inline

设置填充画刷

参数
[in]brush填充画刷
void kiwano::CanvasRenderContext::SetFillColor ( const Color color)
inline

设置填充颜色

参数
color填充颜色
void kiwano::CanvasRenderContext::SetStrokeBrush ( BrushPtr  brush)
inline

设置轮廓画刷

参数
[in]brush轮廓画刷
void kiwano::CanvasRenderContext::SetStrokeColor ( const Color color)
inline

设置轮廓颜色

参数
color轮廓颜色
void kiwano::CanvasRenderContext::SetStrokeStyle ( StrokeStylePtr  stroke_style)
inline

设置轮廓样式

参数
stroke_style轮廓样式