cocos2d-x节点(b2Draw.h)API
本文来自http://blog.csdn.net/runaying ,引用必须注明出处!cocos2d-x节点(b2Draw.h)API温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记// 调试辅助类主要辅助box2d中物体的调试,通过绘制不同的调试辅助的形状,来监控并改正物体行为的正确性///cocos2d-
·
本文来自http://blog.csdn.net/runaying ,引用必须注明出处!
cocos2d-x节点(b2Draw.h)API
温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记
// 调试辅助类主要辅助box2d中物体的调试,通过绘制不同的调试辅助的形状,来监控并改正物体行为的正确性
///cocos2d-x-3.0alpha0/external/Box2D/Common
// 调试辅助类主要辅助box2d中物体的调试,通过绘制不同的调试辅助的形状,来监控并改正物体行为的正确性
#include <Box2D/Common/b2Math.h>
/// 调试绘制的颜色,每个值都在[0,1]之间
struct b2Color
{
b2Color() {} //默认构造函数
b2Color(float32 r, float32 g, float32 b) : r(r), g(g), b(b) {} // 构造函数 参数说明: r : 红色值部分 g :绿色值部分 b :蓝色值部分
void Set(float32 ri, float32 gi, float32 bi) { r = ri; g = gi; b = bi; } //:设置颜色函数 参数说明: r : 红色值部分 g :绿色值部分 b :蓝色值部分
float32 r, g, b; //代表红、绿、蓝的变量
};
/// //在b2World中实现并注册这个类,以便提供调试绘制不同的物理实体在你的游戏中
class b2Draw
{
public:
b2Draw(); //构造函数
virtual ~b2Draw() {} //析构函数
enum
{
e_shapeBit = 0x0001, ///< 绘制形状
e_jointBit = 0x0002, ///<绘制关节联系
e_aabbBit = 0x0004, ///< 绘制轴对齐边框
e_pairBit = 0x0008, ///< 绘制broad-phase pairs
e_centerOfMassBit = 0x0010 ///< 绘制质心框架
};
/// 设置绘制标志位
void SetFlags(uint32 flags);
/// 获得绘制标志位
uint32 GetFlags() const;
/// 追加绘制标志位
void AppendFlags(uint32 flags);
/// 从当前标志中清除标志
void ClearFlags(uint32 flags);
/// 按照提供的顶点绘制逆时针方式闭合的多边形 参数说明: vertices :顶点 vertextexCount: 顶点数量 color : 颜色
virtual void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) = 0;
///按照提供的顶点绘制逆时针方式闭合的并填充颜色的多边形 参数说明: vertices :顶点 vertextexCount: 顶点数量 color : 颜色
virtual void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) = 0;
///绘制一个圆 参数说明: center :向量 radius : 半径 color : 颜色
virtual void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color) = 0;
///:绘制一个填充颜色的圆 参数说明: center :向量 radius : 半径 color : 颜色
virtual void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) = 0;
///绘制一段线段 参数说明: p1 :开始点 p2 : 结束点 color : 颜色
virtual void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) = 0;
/// :绘制一个变换,选择你的长度比例。
/// @param xf 变换
virtual void DrawTransform(const b2Transform& xf) = 0;
protected:
uint32 m_drawFlags;
};
更多推荐
已为社区贡献113条内容
所有评论(0)