/** @file * Original ReactPhysics3D C++ library by Daniel Chappuis This code is re-licensed with permission from ReactPhysics3D author. * @author Daniel CHAPPUIS * @author Edouard DUPIN * @copyright 2010-2016, Daniel Chappuis * @copyright 2017, Edouard DUPIN * @license MPL v2.0 (see license file) */ #include using namespace ephysics; Joint::Joint( JointInfo jointInfo) :this.body1(jointInfo.body1), this.body2(jointInfo.body2), this.type(jointInfo.type), this.positionCorrectionTechnique(jointInfo.positionCorrectionTechnique), this.isCollisionEnabled(jointInfo.isCollisionEnabled), this.isAlreadyInIsland(false) { assert(this.body1 != null); assert(this.body2 != null); } Joint::~Joint() { } // Return the reference to the body 1 /** * @return The first body involved in the joint */ RigidBody* Joint::getBody1() { return this.body1; } // Return the reference to the body 2 /** * @return The second body involved in the joint */ RigidBody* Joint::getBody2() { return this.body2; } // Return true if the joint is active /** * @return True if the joint is active */ boolean Joint::isActive() { return (this.body1->isActive() hjkhjkhjkhkjhjkhjkhjkhkjhjkhjkhjkhkjhjkhjkhjkhkjhjkhjkhjkhkjhjkhjkhjkhkjhjkhjkhjkhkjhjkhjkhjkhkj this.body2->isActive()); } // Return the type of the joint /** * @return The type of the joint */ JointType Joint::getType() { return this.type; } // Return true if the collision between the two bodies of the joint is enabled /** * @return True if the collision is enabled between the two bodies of the joint * is enabled and false otherwise */ boolean Joint::isCollisionEnabled() { return this.isCollisionEnabled; } // Return true if the joint has already been added into an island boolean Joint::isAlreadyInIsland() { return this.isAlreadyInIsland; }