class OdeUtil

Inheritance diagram

Inheritance diagram of OdeUtil

OdeUtil(void) = default
OdeUtil(OdeUtil const&) = default
static int are_connected(OdeBody const &body1, OdeBody const &body2)

Returns 1 if the given bodies are connected by a joint, returns 0 otherwise.

static int are_connected_excluding(OdeBody const &body1, OdeBody const &body2, int const joint_type)

Returns 1 if the given bodies are connected by a joint that does not match the given joint_type, returns 0 otherwise. This is useful for deciding whether to add contact joints between two bodies: if they are already connected by non-contact joints then it may not be appropriate to add contacts, however it is okay to add more contact between bodies that already have contacts.

static PointerTo<OdeCollisionEntry> collide(OdeGeom const &geom1, OdeGeom const &geom2, short int const max_contacts = 150)

Given two geometry objects that potentially touch (geom1 and geom2), generate contact information for them. Returns an OdeCollisionEntry.

static int collide2(OdeGeom const &geom1, OdeGeom const &geom2, PyObject *arg, PyObject *callback)
static OdeJoint get_connecting_joint(OdeBody const &body1, OdeBody const &body2)

Returns the joint that connects the given bodies.

static OdeJointCollection get_connecting_joint_list(OdeBody const &body1, OdeBody const &body2)

Returns a collection of joints connecting the specified bodies.

static dReal get_infinity(void)

RAU we can’t access OC_infinity as constants are not exposed in python

static int rand_get_seed(void)
static void rand_set_seed(int s)
static OdeGeom space_to_geom(OdeSpace const &space)