Exemple #1
0
        internal PulleyJoint(PulleyJointDef def) : base(def)
        {
            m_groundAnchorA = def.groundAnchorA;
            m_groundAnchorB = def.groundAnchorB;
            m_localAnchorA  = def.localAnchorA;
            m_localAnchorB  = def.localAnchorB;

            m_lengthA = def.lengthA;
            m_lengthB = def.lengthB;

            Utilities.Assert(def.ratio != 0.0f);
            m_ratio = def.ratio;

            m_constant = def.lengthA + m_ratio * def.lengthB;

            m_impulse = 0.0f;
        }
Exemple #2
0
        internal PulleyJoint(PulleyJointDef def)
            : base(def)
        {
            _groundAnchor1 = def.groundAnchorA;
            _groundAnchor2 = def.groundAnchorB;
            _localAnchor1  = def.localAnchorA;
            _localAnchor2  = def.localAnchorB;

            //Debug.Assert(def.ratio != 0.0f);
            _ratio = def.ratio;

            _ant = def.lengthA + _ratio * def.lengthB;

            _maxLength1 = Math.Min(def.maxLengthA, _ant - _ratio * PulleyJointDef.b2_minPulleyLength);
            _maxLength2 = Math.Min(def.maxLengthB, (_ant - PulleyJointDef.b2_minPulleyLength) / _ratio);

            _impulse       = 0.0f;
            _limitImpulse1 = 0.0f;
            _limitImpulse2 = 0.0f;
        }
Exemple #3
0
		internal PulleyJoint(PulleyJointDef def): base(def)
		{
			m_groundAnchorA = def.groundAnchorA;
			m_groundAnchorB = def.groundAnchorB;
			m_localAnchorA = def.localAnchorA;
			m_localAnchorB = def.localAnchorB;

			m_lengthA = def.lengthA;
			m_lengthB = def.lengthB;

			Utilities.Assert(def.ratio != 0.0f);
			m_ratio = def.ratio;

			m_constant = def.lengthA + m_ratio * def.lengthB;

			m_impulse = 0.0f;
		}