Box2D
2.3.0
A 2D Physics Engine for Games
Main Page
Classes
Files
File List
File Members
Box2D
Common
b2Draw.h
1
/*
2
* Copyright (c) 2011 Erin Catto http://box2d.org
3
*
4
* This software is provided 'as-is', without any express or implied
5
* warranty. In no event will the authors be held liable for any damages
6
* arising from the use of this software.
7
* Permission is granted to anyone to use this software for any purpose,
8
* including commercial applications, and to alter it and redistribute it
9
* freely, subject to the following restrictions:
10
* 1. The origin of this software must not be misrepresented; you must not
11
* claim that you wrote the original software. If you use this software
12
* in a product, an acknowledgment in the product documentation would be
13
* appreciated but is not required.
14
* 2. Altered source versions must be plainly marked as such, and must not be
15
* misrepresented as being the original software.
16
* 3. This notice may not be removed or altered from any source distribution.
17
*/
18
19
#ifndef B2_DRAW_H
20
#define B2_DRAW_H
21
22
#include <Box2D/Common/b2Math.h>
23
25
struct
b2Color
26
{
27
b2Color
() {}
28
b2Color
(float32 r, float32 g, float32 b) : r(r), g(g), b(b) {}
29
void
Set(float32 ri, float32 gi, float32 bi) { r = ri; g = gi; b = bi; }
30
float32 r, g, b;
31
};
32
35
class
b2Draw
36
{
37
public
:
38
b2Draw
();
39
40
virtual
~
b2Draw
() {}
41
42
enum
43
{
44
e_shapeBit
= 0x0001,
45
e_jointBit
= 0x0002,
46
e_aabbBit
= 0x0004,
47
e_pairBit
= 0x0008,
48
e_centerOfMassBit
= 0x0010
49
};
50
52
void
SetFlags
(uint32 flags);
53
55
uint32
GetFlags
()
const
;
56
58
void
AppendFlags
(uint32 flags);
59
61
void
ClearFlags
(uint32 flags);
62
64
virtual
void
DrawPolygon
(
const
b2Vec2
* vertices, int32 vertexCount,
const
b2Color
& color) = 0;
65
67
virtual
void
DrawSolidPolygon
(
const
b2Vec2
* vertices, int32 vertexCount,
const
b2Color
& color) = 0;
68
70
virtual
void
DrawCircle
(
const
b2Vec2
& center, float32 radius,
const
b2Color
& color) = 0;
71
73
virtual
void
DrawSolidCircle
(
const
b2Vec2
& center, float32 radius,
const
b2Vec2
& axis,
const
b2Color
& color) = 0;
74
76
virtual
void
DrawSegment
(
const
b2Vec2
& p1,
const
b2Vec2
& p2,
const
b2Color
& color) = 0;
77
80
virtual
void
DrawTransform
(
const
b2Transform
& xf) = 0;
81
82
protected
:
83
uint32 m_drawFlags;
84
};
85
86
#endif
Generated on Mon Apr 20 2015 17:57:20 for Box2D by
1.8.8