home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / ext / j3dutils.jar / com / sun / j3d / loaders / SceneBase.class (.txt) < prev   
Encoding:
Java Class File  |  2002-06-19  |  3.9 KB  |  169 lines

  1. package com.sun.j3d.loaders;
  2.  
  3. import java.util.Hashtable;
  4. import java.util.Vector;
  5. import javax.media.j3d.Background;
  6. import javax.media.j3d.Behavior;
  7. import javax.media.j3d.BranchGroup;
  8. import javax.media.j3d.Fog;
  9. import javax.media.j3d.Light;
  10. import javax.media.j3d.Sound;
  11. import javax.media.j3d.TransformGroup;
  12.  
  13. public class SceneBase implements Scene {
  14.    BranchGroup sceneGroup = null;
  15.    BranchGroup behaviorGroup = null;
  16.    Hashtable namedObjects = new Hashtable();
  17.    String description = null;
  18.    Vector viewVector = new Vector();
  19.    Vector hfovVector = new Vector();
  20.    Vector behaviorVector = new Vector();
  21.    Vector lightVector = new Vector();
  22.    Vector fogVector = new Vector();
  23.    Vector backgroundVector = new Vector();
  24.    Vector soundVector = new Vector();
  25.  
  26.    public void setSceneGroup(BranchGroup var1) {
  27.       this.sceneGroup = var1;
  28.    }
  29.  
  30.    public void addViewGroup(TransformGroup var1) {
  31.       this.viewVector.addElement(var1);
  32.    }
  33.  
  34.    public void addHorizontalFOV(float var1) {
  35.       this.hfovVector.addElement(new Float(var1));
  36.    }
  37.  
  38.    public void addBehaviorNode(Behavior var1) {
  39.       this.behaviorVector.addElement(var1);
  40.    }
  41.  
  42.    public void addLightNode(Light var1) {
  43.       this.lightVector.addElement(var1);
  44.    }
  45.  
  46.    public void addBackgroundNode(Background var1) {
  47.       this.backgroundVector.addElement(var1);
  48.    }
  49.  
  50.    public void addSoundNode(Sound var1) {
  51.       this.soundVector.addElement(var1);
  52.    }
  53.  
  54.    public void addFogNode(Fog var1) {
  55.       this.fogVector.addElement(var1);
  56.    }
  57.  
  58.    public void addDescription(String var1) {
  59.       this.description = var1;
  60.    }
  61.  
  62.    public void addNamedObject(String var1, Object var2) {
  63.       if (this.namedObjects.get(var1) == null) {
  64.          this.namedObjects.put(var1, var2);
  65.       } else {
  66.          int var3 = 1;
  67.  
  68.          for(boolean var4 = false; !var4; ++var3) {
  69.             String var5 = var1 + "[" + var3 + "]";
  70.             if (this.namedObjects.get(var5) == null) {
  71.                this.namedObjects.put(var5, var2);
  72.                var4 = true;
  73.             }
  74.          }
  75.       }
  76.  
  77.    }
  78.  
  79.    public BranchGroup getSceneGroup() {
  80.       return this.sceneGroup;
  81.    }
  82.  
  83.    public TransformGroup[] getViewGroups() {
  84.       if (this.viewVector.isEmpty()) {
  85.          return null;
  86.       } else {
  87.          TransformGroup[] var1 = new TransformGroup[this.viewVector.size()];
  88.          this.viewVector.copyInto(var1);
  89.          return var1;
  90.       }
  91.    }
  92.  
  93.    public float[] getHorizontalFOVs() {
  94.       if (this.hfovVector.isEmpty()) {
  95.          return null;
  96.       } else {
  97.          int var1 = this.hfovVector.size();
  98.          float[] var2 = new float[var1];
  99.          Float[] var3 = new Float[this.hfovVector.size()];
  100.          this.hfovVector.copyInto(var3);
  101.  
  102.          for(int var4 = 0; var4 < var1; ++var4) {
  103.             var2[var4] = var3[var4];
  104.             var3[var4] = null;
  105.          }
  106.  
  107.          return var2;
  108.       }
  109.    }
  110.  
  111.    public Light[] getLightNodes() {
  112.       if (this.lightVector.isEmpty()) {
  113.          return null;
  114.       } else {
  115.          Light[] var1 = new Light[this.lightVector.size()];
  116.          this.lightVector.copyInto(var1);
  117.          return var1;
  118.       }
  119.    }
  120.  
  121.    public Hashtable getNamedObjects() {
  122.       return this.namedObjects;
  123.    }
  124.  
  125.    public Background[] getBackgroundNodes() {
  126.       if (this.backgroundVector.isEmpty()) {
  127.          return null;
  128.       } else {
  129.          Background[] var1 = new Background[this.backgroundVector.size()];
  130.          this.backgroundVector.copyInto(var1);
  131.          return var1;
  132.       }
  133.    }
  134.  
  135.    public Fog[] getFogNodes() {
  136.       if (this.fogVector.isEmpty()) {
  137.          return null;
  138.       } else {
  139.          Fog[] var1 = new Fog[this.fogVector.size()];
  140.          this.fogVector.copyInto(var1);
  141.          return var1;
  142.       }
  143.    }
  144.  
  145.    public Behavior[] getBehaviorNodes() {
  146.       if (this.behaviorVector.isEmpty()) {
  147.          return null;
  148.       } else {
  149.          Behavior[] var1 = new Behavior[this.behaviorVector.size()];
  150.          this.behaviorVector.copyInto(var1);
  151.          return var1;
  152.       }
  153.    }
  154.  
  155.    public Sound[] getSoundNodes() {
  156.       if (this.soundVector.isEmpty()) {
  157.          return null;
  158.       } else {
  159.          Sound[] var1 = new Sound[this.soundVector.size()];
  160.          this.soundVector.copyInto(var1);
  161.          return var1;
  162.       }
  163.    }
  164.  
  165.    public String getDescription() {
  166.       return this.description;
  167.    }
  168. }
  169.