function Spring(bodyA,bodyB,options){
    options = options || {};

    /**
     * Rest length of the spring.
     * @property restLength
     * @type {number}
     */
    this.restLength = typeof(options.restLength) === "number" ? options.restLength : 1;

    /**
     * Stiffness of the spring.
     * @property stiffness
     * @type {number}
     */
    this.stiffness = options.stiffness || 100;

    /**
     * Damping of the spring.
     * @property damping
     * @type {number}
     */
    this.damping = options.damping || 1;

    /**
     * First connected body.
     * @property bodyA
     * @type {Body}
     */
    this.bodyA = bodyA;

    /**
     * Second connected body.
     * @property bodyB
     * @type {Body}
     */
    this.bodyB = bodyB;

    /**
     * Anchor for bodyA in local bodyA coordinates.
     * @property localAnchorA
     * @type {Vec3}
     */
    this.localAnchorA = new Vec3();

    /**
     * Anchor for bodyB in local bodyB coordinates.
     * @property localAnchorB
     * @type {Vec3}
     */
    this.localAnchorB = new Vec3();

    if(options.localAnchorA){
        this.localAnchorA.copy(options.localAnchorA);
    }
    if(options.localAnchorB){
        this.localAnchorB.copy(options.localAnchorB);
    }
    if(options.worldAnchorA){
        this.setWorldAnchorA(options.worldAnchorA);
    }
    if(options.worldAnchorB){
        this.setWorldAnchorB(options.worldAnchorB);
    }
}
A spring, connecting two bodies.

@class Spring
@constructor
@param {Body} bodyA
@param {Body} bodyB
@param {Object} [options]
@param {number} [options.restLength]   A number > 0. Default: 1
@param {number} [options.stiffness]    A number >= 0. Default: 100
@param {number} [options.damping]      A number >= 0. Default: 1
@param {Vec3}  [options.worldAnchorA] Where to hook the spring to body A, in world coordinates.
@param {Vec3}  [options.worldAnchorB]
@param {Vec3}  [options.localAnchorA] Where to hook the spring to body A, in local body coordinates.
@param {Vec3}  [options.localAnchorB]