function BallAndSocket(a, b, options) {
    this.a = a;
    this.b = b;

    Constraint.call(this, options);

    this.impulse = new Vec3();
    this.angImpulseA = new Vec3();
    this.angImpulseB = new Vec3();
    this.error = new Vec3();
    this.effMassMatrix = new Mat33();
}
A constraint that maintains positions and orientations with respect to a specific anchor point.

@class BallAndSocket
@extends Constraint
@param {Particle} a One of the bodies.
@param {Particle} b The other body.
@param {Options} options An object of configurable options.