Files
alternativaphysics-archive/0.0.7.0/src/alternativa/physics/.svn/text-base/ContactPoint.as.svn-base
2024-10-05 12:31:02 +01:00

55 lines
2.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package alternativa.physics {
import alternativa.physics.math.Vector3;
/**
*
*/
public class ContactPoint {
public var pos:Vector3 = new Vector3();
public var penetration:Number;
public var feature1:int;
public var feature2:int;
// Величины, расчитываемые перед началом фазы решения контактов
// Требуемая проекция конечной скорости на нормаль для упругого контакта
public var normalVel:Number;
// Минимальная скорость разделения неупругого контакта
public var minSepVel:Number;
// Изменение проекции скорости на единицу нормального импульса
public var velByUnitImpulseN:Number;
public var angularInertia1:Number;
public var angularInertia2:Number;
// Радиус-вектор точки контакта относительно центра первого тела
public var r1:Vector3 = new Vector3();
// Радиус-вектор точки контакта относительно центра второго тела
public var r2:Vector3 = new Vector3();
// Величины, накапливаемые во время фазы решения контактов
// Накопленный импульс, применяемый для получения требуемой относительной скорости в точке контакта
public var accumImpulseN:Number;
// Накопленный импульс, применяемый для разделения тел в точке контакта. Не создаёт момента.
// public var accumSepImpulse:Number;
public var satisfied:Boolean;
/**
*
* @param cp
*/
public function copyFrom(cp:ContactPoint):void {
pos.vCopy(cp.pos);
penetration = cp.penetration;
feature1 = cp.feature1;
feature2 = cp.feature2;
r1.vCopy(cp.r1);
r2.vCopy(cp.r2);
}
}
}