Android Open Source - block-composer Float Value Vector3






From Project

Back to project page block-composer.

License

The source code is released under:

MIT License

If you think the Android project block-composer listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package bwr.blockcomposer.types;
//from  w w w. j  a  v a  2s  .  c  o m
import bwr.blockcomposer.AnimationFinishedListener;

public class FloatValueVector3 {
  private final FloatValue x = new FloatValue();
  private final FloatValue y = new FloatValue();
  private final FloatValue z = new FloatValue();

  private AnimationFinishedListener listener;
  private long time, duration;
  private boolean animating;
  
  public float getX() {
    return x.getValue();
  }

  public void setX(float x) {
    this.x.setValue(x);
  }

  public float getY() {
    return y.getValue();
  }

  public void setY(float y) {
    this.y.setValue(y);
  }

  public float getZ() {
    return z.getValue();
  }

  public void setZ(float z) {
    this.z.setValue(z);
  }
  
  public void animateToWithCallback(float newx, float newy, float newz, long duration, AnimationFinishedListener listener) {
    this.listener = listener;
    animateTo(newx, newy, newz, duration);
  }
  
  public void animateTo(float newx, float newy, float newz, long duration) {
    this.duration = duration;
    time = 0;

    x.initLinearAnimation(newx - x.getValue(), duration);
    y.initLinearAnimation(newy - y.getValue(), duration);
    z.initLinearAnimation(newz - z.getValue(), duration);
    
    animating = true;
  }

  public void update(long dt) {
    if(!animating) return;
    
    time += dt;
    
    x.update(dt);
    y.update(dt);
    z.update(dt);
    
    if(time >= duration) {
      animating = false;
      if(listener != null) {
        AnimationFinishedListener listener = this.listener;
        this.listener = null;
        listener.onAnimationFinished();
      }
    }
  }
  
  public FloatValueVector3() {}
  
  public FloatValueVector3(float x, float y, float z) {
    set(x,y,z);
  }
  
  public void copy(FloatValueVector3 other) {
    set(other.getX(), other.getY(), other.getZ());
  }
  
  public void copy(IntVector other) {
    set(other.x, other.y, other.z);
  }
  
  public void set(float x, float y, float z) {
    this.x.setValue(x);
    this.y.setValue(y);
    this.z.setValue(z);
  }
  
  public void add(FloatValueVector3 v) {
    this.x.setValue(x.getValue() + v.getX());
    this.y.setValue(y.getValue() + v.getY());
    this.z.setValue(z.getValue() + v.getZ());
  }
  
  public void sub(FloatValueVector3 v) {
    this.x.setValue(x.getValue() - v.getX());
    this.y.setValue(y.getValue() - v.getY());
    this.z.setValue(z.getValue() - v.getZ());
  }
  
  public FloatValueVector3 duplicate() {
    return new FloatValueVector3(x.getValue(),y.getValue(),z.getValue());
  }
  
}




Java Source Code List

bwr.blockcomposer.AnimationFinishedListener.java
bwr.blockcomposer.BlockComposerActivity.java
bwr.blockcomposer.BlockComposerRenderer.java
bwr.blockcomposer.BlockComposer.java
bwr.blockcomposer.Camera.java
bwr.blockcomposer.GameResources.java
bwr.blockcomposer.OnUpdateAction.java
bwr.blockcomposer.gamedata.Block.java
bwr.blockcomposer.gamedata.GameEntity.java
bwr.blockcomposer.gamedata.GameState.java
bwr.blockcomposer.gamedata.LevelDimensions.java
bwr.blockcomposer.gamedata.LevelMask.java
bwr.blockcomposer.gamedata.LevelMetadata.java
bwr.blockcomposer.gamedata.LevelStore.java
bwr.blockcomposer.gamedata.Level.java
bwr.blockcomposer.gamedata.Move.java
bwr.blockcomposer.gamedata.StaticLevelStore.java
bwr.blockcomposer.gamedata.UserLevelStore.java
bwr.blockcomposer.misc.GLUtility.java
bwr.blockcomposer.misc.Timer.java
bwr.blockcomposer.models.AxisRenderer.java
bwr.blockcomposer.models.Model.java
bwr.blockcomposer.models.SelectBoxRenderer.java
bwr.blockcomposer.modes.EditMode.java
bwr.blockcomposer.modes.GameDialogMode.java
bwr.blockcomposer.modes.GameMode.java
bwr.blockcomposer.modes.LevelImportMode.java
bwr.blockcomposer.modes.LevelSelectMode.java
bwr.blockcomposer.modes.LogoDisplayMode.java
bwr.blockcomposer.modes.ModeController.java
bwr.blockcomposer.modes.Mode.java
bwr.blockcomposer.modes.OverlayMode.java
bwr.blockcomposer.types.FlipRotateFloat.java
bwr.blockcomposer.types.FloatValueVector3.java
bwr.blockcomposer.types.FloatValue.java
bwr.blockcomposer.types.IntVector.java
bwr.blockcomposer.types.RotatingFloat.java
bwr.blockcomposer.ui.TextRenderer.java
bwr.blockcomposer.ui.UIElementPicture.java
bwr.blockcomposer.ui.UIElementText.java
bwr.blockcomposer.ui.UIElement.java