22#include <kiwano/platform/NativeObject.hpp>
28KGE_DECLARE_SMART_PTR(Shape);
48 static ShapePtr CreateLine(
const Point& begin,
const Point& end);
53 static ShapePtr CreateRect(
const Rect& rect);
59 static ShapePtr CreateRoundedRect(
const Rect& rect,
const Vec2& radius);
65 static ShapePtr CreateCircle(
const Point& center,
float radius);
71 static ShapePtr CreateEllipse(
const Point& center,
const Vec2& radius);
76 static ShapePtr CreatePolygon(
const Vector<Point>& vertices);
82 Rect GetBoundingBox()
const;
93 bool ContainsPoint(
const Point& point,
const Matrix3x2* transform =
nullptr)
const;
97 float GetLength()
const;
101 float ComputeArea()
const;
108 bool ComputePointAtLength(
float length,
Point& point,
Vec2& tangent)
const;
含有本地指针的对象
Definition: NativeObject.hpp:34
形状生成器
Definition: ShapeMaker.h:47