![]() |
Kiwano Engine
v1.2.x
|
物理夹具 更多...
#include <Fixture.h>
类 | |
struct | Param |
夹具参数 更多... | |
Public 成员函数 | |
bool | Init (PhysicBodyPtr body) |
初始化夹具 | |
bool | Init (PhysicBody *body) |
初始化夹具 | |
PhysicBody * | GetBody () const |
获取夹具所在的物体 | |
bool | IsSensor () const |
是否是接触传感器 | |
void | SetSensor (bool sensor) |
设置夹具是否是接触传感器 更多... | |
void | GetMassData (float *mass, Point *center, float *inertia) const |
获取夹具的质量数据 | |
float | GetDensity () const |
获取密度 | |
void | SetDensity (float density) |
设置密度 | |
float | GetFriction () const |
获取摩擦力 [N] | |
void | SetFriction (float friction) |
设置摩擦力 [N] | |
float | GetRestitution () const |
获取弹性恢复 | |
void | SetRestitution (float restitution) |
设置弹性恢复 | |
bool | TestPoint (const Point &p) const |
点测试 | |
void | Destroy () |
销毁夹具 | |
b2Fixture * | GetB2Fixture () const |
获取b2Fixture | |
void | SetB2Fixture (b2Fixture *fixture) |
设置b2Fixture | |
bool | operator== (const Fixture &rhs) const |
bool | operator!= (const Fixture &rhs) const |
![]() | |
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 |
判断对象是否有效 | |
ObjectStatus * | GetStatus () const |
获取对象状态 | |
void | SetStatus (const ObjectStatus &status) |
设置对象状态 | |
void | Fail (const String &msg, int code=ObjectStatus::fail) |
将对象标记为失败状态 | |
void | ClearStatus () |
清除对象状态 | |
![]() | |
void | Retain () |
增加引用计数 | |
void | Release () |
减少引用计数 | |
uint32_t | GetRefCount () const |
获取引用计数 | |
![]() | |
Vector< uint8_t > | Serialize () const |
序列化为字节串 | |
void | Deserialize (const Vector< uint8_t > &data) |
从字节串反序列化 | |
静态 Public 成员函数 | |
static FixturePtr | CreateCircle (const Param ¶m, float radius, const Point &offset=Point()) |
创建圆形夹具 更多... | |
static FixturePtr | CreateRect (const Param ¶m, const Size &size, const Point &offset=Point(), float rotation=0.f) |
创建矩形夹具 更多... | |
static FixturePtr | CreatePolygon (const Param ¶m, const Vector< Point > &vertexs) |
创建多边形夹具 更多... | |
static FixturePtr | CreateEdge (const Param ¶m, const Point &p1, const Point &p2) |
创建边夹具 更多... | |
static FixturePtr | CreateChain (const Param ¶m, const Vector< Point > &vertices, bool loop=false) |
创建链条夹具 更多... | |
![]() | |
static void | SetObjectPolicy (const ObjectPolicyFunc &policy) |
设置对象处理策略 | |
static bool | IsTracingLeaks () |
是否启用了内存泄漏追踪 | |
static void | StartTracingLeaks () |
开始追踪内存泄漏 | |
static void | StopTracingLeaks () |
停止追踪内存泄漏 | |
static void | DumpTracingObjects () |
打印所有追踪中的对象信息 | |
static Vector< ObjectBase * > & | GetTracingObjects () |
获取所有追踪中的对象 | |
![]() | |
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 |
物理夹具
|
static |
创建链条夹具
param | 夹具参数 |
vertexs | 链条顶点 |
loop | 是否连接链条的起点和终点 |
|
static |
创建圆形夹具
param | 夹具参数 |
radius | 圆形半径 |
offset | 偏移量 |
|
static |
创建边夹具
param | 夹具参数 |
p1 | 边的起点 |
p2 | 边的终点 |
|
static |
创建多边形夹具
param | 夹具参数 |
vertexs | 多边形顶点 |
|
static |
创建矩形夹具
param | 夹具参数 |
size | 矩形大小 |
offset | 偏移量 |
rotation | 旋转角度 |
|
inline |
设置夹具是否是接触传感器
接触传感器只会产生物理接触,而不会影响物体运动