Exemple #1
0
        internal PulleyJoint(PulleyJointDef def)
            : base(def)
        {
            _groundAnchor1 = def.groundAnchor1;
            _groundAnchor2 = def.groundAnchor2;
            _localAnchor1 = def.localAnchor1;
            _localAnchor2 = def.localAnchor2;

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

            _ant = def.length1 + _ratio * def.length2;

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

            _impulse = 0.0f;
            _limitImpulse1 = 0.0f;
            _limitImpulse2 = 0.0f;
        }
Exemple #2
0
        internal PulleyJoint(PulleyJointDef def)
            : base(def)
        {
            _groundAnchor1 = def.groundAnchor1;
            _groundAnchor2 = def.groundAnchor2;
            _localAnchor1  = def.localAnchor1;
            _localAnchor2  = def.localAnchor2;

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

            _ant = def.length1 + _ratio * def.length2;

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

            _impulse       = 0.0f;
            _limitImpulse1 = 0.0f;
            _limitImpulse2 = 0.0f;
        }