Panda3D
panda
src
ode
odeBody.cxx
Go to the documentation of this file.
1
/**
2
* PANDA 3D SOFTWARE
3
* Copyright (c) Carnegie Mellon University. All rights reserved.
4
*
5
* All use of this software is subject to the terms of the revised BSD
6
* license. You should have received a copy of this license along
7
* with this source code in a file named "LICENSE."
8
*
9
* @file odeBody.cxx
10
* @author joswilso
11
* @date 2006-12-27
12
*/
13
14
#include "
config_ode.h
"
15
#include "
odeBody.h
"
16
#include "
odeJoint.h
"
17
18
TypeHandle
OdeBody::_type_handle;
19
20
OdeBody::
21
OdeBody(dBodyID
id
) :
22
_id(id) {
23
}
24
25
OdeBody::
26
OdeBody(
OdeWorld
&world) :
27
_id(dBodyCreate(world.
get_id
())) {
28
world.add_body_dampening(*
this
, 0);
29
}
30
31
OdeBody::
32
~OdeBody() {
33
}
34
35
void
OdeBody::
36
destroy() {
37
if
(_destroy_callback !=
nullptr
) {
38
_destroy_callback(*
this
);
39
_destroy_callback =
nullptr
;
40
}
41
nassertv(_id);
42
dBodyDestroy(_id);
43
}
44
45
OdeJoint
OdeBody::
46
get_joint(
int
index)
const
{
47
nassertr(_id !=
nullptr
,
OdeJoint
(
nullptr
));
48
nassertr(index < get_num_joints(),
OdeJoint
(
nullptr
));
49
return
OdeJoint
(dBodyGetJoint(_id, index));
50
}
51
52
void
OdeBody::
53
write(std::ostream &out,
unsigned
int
indent
)
const
{
54
out.width(
indent
); out <<
""
<< get_type() \
55
<<
"(id = "
<< _id \
56
<<
")"
;
57
}
58
59
OdeBody::
60
operator bool ()
const
{
61
return
(_id !=
nullptr
);
62
}
odeBody.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
OdeWorld
Definition:
odeWorld.h:33
odeJoint.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
indent
std::ostream & indent(std::ostream &out, int indent_level)
A handy function for doing text formatting.
Definition:
indent.cxx:20
config_ode.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
OdeJoint::get_id
dJointID get_id() const
Returns the underlying dJointID.
Definition:
odeJoint.I:28
OdeJoint
Definition:
odeJoint.h:51
TypeHandle
TypeHandle is the identifier used to differentiate C++ class types.
Definition:
typeHandle.h:81
Generated on Wed Jan 23 2019 21:40:07 for Panda3D by
1.8.15