alignrule.java

来自「自己做的几个j2me程序例子。。只要在Jbuilder里open project」· Java 代码 · 共 40 行

JAVA
40
字号
package example.boids;

class AlignRule implements BoidRule, BoidsConstants {
  private int totalVx;
  private int totalVy;
  private int count;
  private Boid currentBoid;
  private static final int ALIGN_FACTOR = (1 << FIXED_POINT_SHIFT) / 8;

  AlignRule() {  }

  public void reset(Boid boid) {
    totalVx = 0;
    totalVy = 0;
    count = 0;
    currentBoid = boid;
  }

  public void applyTo(Boid boid) {
    totalVx += boid.getVx();
    totalVy += boid.getVy();
    count++;
  }

  public int getVx() {
    int vx = 0;
    if (count > 0) {
      vx = ( (totalVx / count) * ALIGN_FACTOR) >> FIXED_POINT_SHIFT;
    }
    return vx;
  }

  public int getVy() {
    int vy = 0;
    if (count > 0) {
      vy = ( (totalVy / count) * ALIGN_FACTOR) >> FIXED_POINT_SHIFT;
    }
    return vy;
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?