Criar classe q Extends Behavior

0 respostas
edertp
Olá, tenho uma aplicacao usando Java3D e em um determinado momento utilizo Thread.sleep() para esperar alguns segundos, porem qd faco isso esse metodo bloqueia a Thread de renderizacao, dessa forma as modificacoes no ambiente 3D so ocorrem apos Thread.sleep terminar. Uma solucao seria criar uma classe particularizada q extenda Behavior, de forma q so fosse disparada qd Thread.sleep tb fosse. A minha pergunta é: como referenciar nessa classe behavior q Thread.sleep foi disparada? Ate agora a classe ta assim:
public class MyBehaviorTranslation extends Behavior{
 
      MyBehaviorTranslation(Group root, Bounds bounds) {
        this.setSchedulingBounds(bounds);
        BranchGroup branchGroup = new BranchGroup();
        branchGroup.addChild(this);
        root.addChild(branchGroup);
      }
 
      public void initialize(){
          // set initial wakeup condition
          this.wakeupOn(new WakeupOnBehaviorPost(???, 0));
          // set someIntegerValue to your specific value
          // null can be replaced by an specific Behavior Object to send this value
      }
 
      // called by Java 3D when appropriate stimulus occures
      public void processStimulus(Enumeration criteria){
        // do what is necessary
 
        // resetup Behavior
         this.wakeupOn(new WakeupOnBehaviorPost(????, 0));
      }
  }

Agora falta passar pra WakeupOnBehaviorPost a referencia de qd Thread.sleep for ativada.
Desde ja agradeco.

Criado 9 de outubro de 2006
Respostas 0
Participantes 1