Mercurial > hg > jslab
annotate examples/java3d/FPS.java @ 8:5e3cbbf173aa tip
Reorganise some more
author | samer |
---|---|
date | Fri, 05 Apr 2019 22:41:58 +0100 |
parents | 5df24c91468d |
children |
rev | line source |
---|---|
samer@1 | 1 import javax.media.j3d.*; |
samer@1 | 2 import javax.vecmath.*; |
samer@1 | 3 import java.util.Enumeration; |
samer@1 | 4 |
samer@1 | 5 final class FPS extends Behavior { |
samer@1 | 6 |
samer@1 | 7 protected int nFrames; |
samer@1 | 8 protected long startTime; |
samer@1 | 9 protected final WakeupCondition w; |
samer@1 | 10 |
samer@1 | 11 public FPS(int nFrames){ |
samer@1 | 12 this.nFrames=nFrames; |
samer@1 | 13 w=new WakeupOnElapsedFrames(nFrames); |
samer@1 | 14 } |
samer@1 | 15 |
samer@1 | 16 public FPS(){ |
samer@1 | 17 this(100); |
samer@1 | 18 } |
samer@1 | 19 |
samer@1 | 20 public void initialize(){ |
samer@1 | 21 setSchedulingBounds(new BoundingSphere(new Point3d(),1000)); |
samer@1 | 22 startTime=System.currentTimeMillis(); |
samer@1 | 23 wakeupOn(w); |
samer@1 | 24 } |
samer@1 | 25 |
samer@1 | 26 public void processStimulus(Enumeration criteria){ |
samer@1 | 27 long time=System.currentTimeMillis(); |
samer@1 | 28 System.err.println("fps: "+ 1000 * (double) nFrames / (double) (time-startTime)); |
samer@1 | 29 startTime=time; |
samer@1 | 30 wakeupOn(w); |
samer@1 | 31 } |
samer@1 | 32 } |