package visad.java3d;
import visad.*;
import visad.data.CachedBufferedByteImage;
import javax.media.j3d.ImageComponent2D;
import javax.media.j3d.ImageComponent2D.Updater;
import javax.media.j3d.Behavior;
import javax.media.j3d.BranchGroup;
import javax.media.j3d.Switch;
import javax.media.j3d.BoundingSphere;
import javax.vecmath.Point3d;
import java.awt.image.*;
import java.awt.color.*;
import java.util.Enumeration;
import java.util.ArrayList;
import java.util.Iterator;
import javax.media.j3d.WakeupCriterion;
import javax.media.j3d.WakeupOnElapsedFrames;
import javax.media.j3d.WakeupOnElapsedTime;
import javax.media.j3d.WakeupOnBehaviorPost;
public class VisADImageNode {
VisADImageTile[] images;
public ArrayList imageTiles = new ArrayList();
public int numChildren = 0;
public BranchGroup branch;
Switch swit;
public int current_index = 0;
public int numImages;
public int data_width;
public int data_height;
AnimateBehavior animate = null;
public VisADImageNode() {
}
public VisADImageNode(BranchGroup branch, Switch swit) {
this.branch = branch;
this.swit = swit;
}
public void addTile(VisADImageTile tile) {
imageTiles.add(tile);
numChildren++;
}
public VisADImageTile getTile(int index) {
return imageTiles.get(index);
}
public Iterator getTileIterator() {
return imageTiles.iterator();
}
public int getNumTiles() {
return numChildren;
}
/**
//- for implementing Updater
public void updateData(ImageComponent2D imageC2d, int x, int y, int lenx, int leny) {
if (images != null) {
//-imageComp.set(images[current_index]); // This should probably not be done in updateData
}
}
**/
public void setCurrent(int idx) {
current_index = idx;
//images[i].setCurrent(idx);
for (int i=0; i
Ads help maintain this website.