Package org.pollux3d.animation.cam

Source Code of org.pollux3d.animation.cam.CamRotationOffsetAnimation

package org.pollux3d.animation.cam;

import org.pollux3d.animation.AbstractAnimation;

import com.jme3.math.Vector2f;

public class CamRotationOffsetAnimation extends AbstractAnimation {
 
  private Vector2f start = Vector2f.ZERO;
  private Vector2f rotationOffset = Vector2f.ZERO;
  private Vector2f target = Vector2f.ZERO;

  public CamRotationOffsetAnimation(float defaultAnimationTime, float minAnimationTime) {
    super(defaultAnimationTime, minAnimationTime);
  }

  public void animate(float vertical, float horizontal) {
    this.animate(vertical, horizontal, 0); //default time
  }
 
  public void animate(float vertical, float horizontal, float time) {
    setAnimationTime(time);
    this.start = rotationOffset;
    this.target = new Vector2f(vertical, horizontal);
  }
 
  public void update(float tpf) {
    if (!isFinished()) {
      updateTimer(tpf);
      float p = getProgress();
      rotationOffset = start.add(target.subtract(start).mult(p));
    }
  }
 
  public Vector2f getRotationOffset() {
    return rotationOffset;
  }
}
TOP

Related Classes of org.pollux3d.animation.cam.CamRotationOffsetAnimation

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.