1

だから私はProcessingIDEを使用していて、この奇妙なnullポインター例外を受け取り続けています。

スレッド「main」の例外java.lang.NullPointerExceptionatprocessing.core.PApplet.displayable
(PApplet.java:9944)
atprocessing.core.PApplet.main(PApplet.java:7425)

それが私が得るすべての情報なので、それがどこで起こっているのかを追跡することさえできません。これが私のコードです

import TUIO.*;

TuioProcessing tuioClient;
Vector tuioCursorList;
Point cols[][];


void setup(){
  size(1440,900);
  tuioClient = new TuioProcessing(this);
  tuioCursorList = tuioClient.getTuioCursors();
  init();
}

void draw(){
  background(0);


}

void init(){
  cols = new Point[width][height];
  for(int i = 0; i<width;i++){
    for(int x = 0; x<height;x++){
      cols[i][x] = new Point(i,x);
    }
  }
}

class Point{

  int x, y;
  boolean alive;
  int life;
  int pointColor;

  Point(int _x, int _y){
    x = _x;
    y = _y;
    pointColor = 0;
    alive = false;
    fill(pointColor);
    point(x, y);

  }

  void checkStatus(){
    if(alive = true){
      isAlive();
    } 
    else{
      isDead();
    }
  }

  void isDead(){
    pointColor = 0;
    life = 0;
  }

  void isAlive(){
    pointColor = 255;
    life = 100;
  }

  void kill(){
    life--; 
  }

}

// called when an object is added to the scene
void addTuioObject(TuioObject tobj) {
  println("add object "+tobj.getSymbolID()+" ("+tobj.getSessionID()+") "+tobj.getX()+"     "+tobj.getY()+" "+tobj.getAngle());
}

// called when an object is removed from the scene
void removeTuioObject(TuioObject tobj) {
  println("remove object "+tobj.getSymbolID()+" ("+tobj.getSessionID()+")");
}

// called when an object is moved
void updateTuioObject (TuioObject tobj) {
  println("update object "+tobj.getSymbolID()+" ("+tobj.getSessionID()+")     "+tobj.getX()+" "+tobj.getY()+" "+tobj.getAngle()
    +" "+tobj.getMotionSpeed()+" "+tobj.getRotationSpeed()+" "+tobj.getMotionAccel()+"     "+tobj.getRotationAccel());
}


// called when a cursor is added to the scene
void addTuioCursor(TuioCursor tcur) {
  println(tcur.getX()+", "+tcur.getY());
}

// called when a cursor is moved
void updateTuioCursor (TuioCursor tcur) {
  println(tcur.getSessionID() + " - " + tcur.getX()+", "+tcur.getY());
}

// called when a cursor is removed from the scene
void removeTuioCursor(TuioCursor tcur) {
}

// called after each message bundle
// representing the end of an image frame
void refresh(TuioTime bundleTime) { 
  redraw();
}

誰かが私がこの奇妙なエラーを理解するのを手伝ってくれる?どんな助けでも大歓迎です

4

1 に答える 1

3

関数の名前を別の名前に変更init()します。init()Processingの組み込みクラスの機能を効果的にオーバーライドしています。

于 2010-12-21T21:28:45.117 に答える