Kiwano Engine v1.3.x
|
形状生成器 更多...
#include <ShapeMaker.h>
Public 成员函数 | |
RefPtr< Shape > | GetShape () |
获取生成的形状 | |
void | Clear () |
清空图形 | |
void | BeginPath (const Point &begin_pos=Point()) |
开始添加路径并打开输入流 更多... | |
void | EndPath (bool closed=false) |
结束路径并关闭输入流 更多... | |
void | AddLine (const Point &point) |
添加一条线段 更多... | |
void | AddLines (const Vector< Point > &points) |
添加多条线段 更多... | |
void | AddLines (const Point *points, size_t count) |
添加多条线段 更多... | |
void | AddBezier (const Point &point1, const Point &point2, const Point &point3) |
添加一条三次方贝塞尔曲线 更多... | |
void | AddArc (const Point &point, const Size &radius, float rotation, bool clockwise=true, bool is_small=true) |
添加弧线 更多... | |
void | SetShape (RefPtr< Shape > shape) |
设置生成的形状 更多... | |
Public 成员函数 继承自 kiwano::NativeObject | |
const Any & | GetNative () const |
template<class _Ty > | |
_Ty | GetNative () const |
void | SetNative (const Any &native) |
void | ResetNative () |
bool | IsValid () const override |
判断对象是否有效 更多... | |
Public 成员函数 继承自 kiwano::ObjectBase | |
ObjectBase () | |
构造基础对象 | |
void | SetName (StringView name) |
设置对象名 | |
StringView | GetName () const |
获取对象名 | |
bool | IsName (StringView name) const |
判断对象的名称是否相同 更多... | |
void * | GetUserData () const |
获取用户数据 | |
void | SetUserData (void *data) |
设置用户数据 更多... | |
void | Hold (RefPtr< ObjectBase > other) |
持有一个对象并管理其生命周期 更多... | |
void | Unhold (RefPtr< ObjectBase > other) |
放弃持有的对象 更多... | |
uint64_t | GetObjectID () const |
获取对象ID | |
void | DoSerialize (Serializer *serializer) const override |
序列化 更多... | |
void | DoDeserialize (Deserializer *deserializer) override |
反序列化 更多... | |
virtual bool | IsValid () const |
判断对象是否有效 更多... | |
ObjectStatus * | GetStatus () const |
获取对象状态 | |
void | SetStatus (const ObjectStatus &status) |
设置对象状态 | |
void | Fail (StringView 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) |
从字节串反序列化 | |
virtual void | DoSerialize (Serializer *serializer) const =0 |
执行序列化 更多... | |
virtual void | DoDeserialize (Deserializer *deserializer)=0 |
执行反序列化 更多... | |
静态 Public 成员函数 | |
static RefPtr< Shape > | Combine (RefPtr< Shape > shape_a, RefPtr< Shape > shape_b, CombineMode mode, const Matrix3x2 *matrix=nullptr) |
合并形状 更多... | |
静态 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 |
额外继承的成员函数 | |
Protected 属性 继承自 kiwano::NativeObject | |
Any | native_ |
形状生成器
void kiwano::ShapeMaker::AddArc | ( | const Point & | point, |
const Size & | radius, | ||
float | rotation, | ||
bool | clockwise = true , |
||
bool | is_small = true |
||
) |
添加弧线
point | 终点 |
radius | 椭圆半径 |
rotation | 椭圆旋转角度 |
clockwise | 顺时针 or 逆时针 |
is_small | 是否取小于 180° 的弧 |
void kiwano::ShapeMaker::AddBezier | ( | const Point & | point1, |
const Point & | point2, | ||
const Point & | point3 | ||
) |
添加一条三次方贝塞尔曲线
point1 | 贝塞尔曲线的第一个控制点 |
point2 | 贝塞尔曲线的第二个控制点 |
point3 | 贝塞尔曲线的终点 |
void kiwano::ShapeMaker::AddLine | ( | const Point & | point | ) |
添加一条线段
point | 端点 |
void kiwano::ShapeMaker::AddLines | ( | const Point * | points, |
size_t | count | ||
) |
添加多条线段
points | 端点数组 |
count | 端点数量 |
void kiwano::ShapeMaker::AddLines | ( | const Vector< Point > & | points | ) |
添加多条线段
points | 端点集合 |
开始添加路径并打开输入流
begin_pos | 路径起始点 |
|
static |
合并形状
shape_a | 输入的形状A |
shape_b | 输入的形状B |
mode | 合并方式 |
matrix | 应用到输入形状B上的二维变换 |
void kiwano::ShapeMaker::EndPath | ( | bool | closed = false | ) |
结束路径并关闭输入流
closed | 路径是否闭合 |