aboutsummaryrefslogtreecommitdiffstats
path: root/src/ConfiguredUniverse
diff options
context:
space:
mode:
Diffstat (limited to 'src/ConfiguredUniverse')
-rw-r--r--src/ConfiguredUniverse/ConfigObjLoad.java309
-rw-r--r--src/ConfiguredUniverse/README.txt142
-rw-r--r--src/ConfiguredUniverse/build.xml69
-rw-r--r--src/ConfiguredUniverse/j3d1x198
-rw-r--r--src/ConfiguredUniverse/j3d1x1-behavior149
-rw-r--r--src/ConfiguredUniverse/j3d1x1-stereo113
-rw-r--r--src/ConfiguredUniverse/j3d1x1-vr212
-rw-r--r--src/ConfiguredUniverse/j3d1x1-window89
-rw-r--r--src/ConfiguredUniverse/j3d1x2-flat134
-rw-r--r--src/ConfiguredUniverse/j3d1x2-rot3099
-rw-r--r--src/ConfiguredUniverse/j3d1x3-cave171
-rw-r--r--src/ConfiguredUniverse/j3d1x3-cave-vr222
-rw-r--r--src/ConfiguredUniverse/j3d1x3-rot45110
-rw-r--r--src/ConfiguredUniverse/j3d2x2-flat135
14 files changed, 0 insertions, 2052 deletions
diff --git a/src/ConfiguredUniverse/ConfigObjLoad.java b/src/ConfiguredUniverse/ConfigObjLoad.java
deleted file mode 100644
index 7cd5019..0000000
--- a/src/ConfiguredUniverse/ConfigObjLoad.java
+++ /dev/null
@@ -1,309 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-import com.sun.j3d.loaders.objectfile.ObjectFile;
-import com.sun.j3d.loaders.ParsingErrorException;
-import com.sun.j3d.loaders.IncorrectFormatException;
-import com.sun.j3d.loaders.Scene;
-import java.awt.*;
-import java.awt.event.*;
-import com.sun.j3d.utils.applet.MainFrame;
-import com.sun.j3d.utils.universe.*;
-import javax.media.j3d.*;
-import javax.vecmath.*;
-import java.io.*;
-import com.sun.j3d.utils.behaviors.vp.*;
-import com.sun.j3d.utils.behaviors.sensor.Mouse6DPointerBehavior;
-import java.net.URL;
-import java.net.MalformedURLException;
-import java.util.Map;
-
-public class ConfigObjLoad {
-
- private boolean spin = false;
- private boolean noTriangulate = false;
- private boolean noStripify = false;
- private double creaseAngle = 60.0;
- private URL filename = null;
-
- private ConfiguredUniverse u;
-
- public BranchGroup createSceneGraph() {
- // Create the root of the branch graph
- BranchGroup objRoot = new BranchGroup();
-
- // Create a Transformgroup to scale all objects so they
- // appear in the scene.
- TransformGroup objScale = new TransformGroup();
- Transform3D t3d = new Transform3D();
- t3d.setScale(0.7);
- objScale.setTransform(t3d);
- objRoot.addChild(objScale);
-
- // Create the transform group node and initialize it to the
- // identity. Enable the TRANSFORM_WRITE capability so that
- // our behavior code can modify it at runtime. Add it to the
- // root of the subgraph.
- TransformGroup objTrans = new TransformGroup();
- objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
- objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
- objScale.addChild(objTrans);
-
- int flags = ObjectFile.RESIZE;
- if (!noTriangulate) flags |= ObjectFile.TRIANGULATE;
- if (!noStripify) flags |= ObjectFile.STRIPIFY;
- ObjectFile f = new ObjectFile(flags,
- (float)(creaseAngle * Math.PI / 180.0));
- Scene s = null;
- try {
- s = f.load(filename);
- }
- catch (FileNotFoundException e) {
- System.err.println(e);
- System.exit(1);
- }
- catch (ParsingErrorException e) {
- System.err.println(e);
- System.exit(1);
- }
- catch (IncorrectFormatException e) {
- System.err.println(e);
- System.exit(1);
- }
-
- objTrans.addChild(s.getSceneGroup());
-
- BoundingSphere bounds =
- new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
-
- if (spin) {
- Transform3D yAxis = new Transform3D();
- Alpha rotationAlpha = new Alpha(-1, Alpha.INCREASING_ENABLE,
- 0, 0,
- 4000, 0, 0,
- 0, 0, 0);
-
- RotationInterpolator rotator =
- new RotationInterpolator(rotationAlpha, objTrans, yAxis,
- 0.0f, (float) Math.PI*2.0f);
- rotator.setSchedulingBounds(bounds);
- objTrans.addChild(rotator);
- }
-
- // Set up the background
- Color3f bgColor = new Color3f(0.05f, 0.05f, 0.5f);
- Background bgNode = new Background(bgColor);
- bgNode.setApplicationBounds(bounds);
- objRoot.addChild(bgNode);
-
- // Set up the ambient light
- Color3f ambientColor = new Color3f(0.1f, 0.1f, 0.1f);
- AmbientLight ambientLightNode = new AmbientLight(ambientColor);
- ambientLightNode.setInfluencingBounds(bounds);
- objRoot.addChild(ambientLightNode);
-
- // Set up the directional lights
- Color3f light1Color = new Color3f(1.0f, 1.0f, 0.9f);
- Vector3f light1Direction = new Vector3f(1.0f, 1.0f, 1.0f);
- Color3f light2Color = new Color3f(1.0f, 1.0f, 1.0f);
- Vector3f light2Direction = new Vector3f(-1.0f, -1.0f, -1.0f);
-
- DirectionalLight light1
- = new DirectionalLight(light1Color, light1Direction);
- light1.setInfluencingBounds(bounds);
- objRoot.addChild(light1);
-
- DirectionalLight light2
- = new DirectionalLight(light2Color, light2Direction);
- light2.setInfluencingBounds(bounds);
- objRoot.addChild(light2);
-
- return objRoot;
- }
-
- private void usage()
- {
- System.out.println(
- "Usage: java ObjLoad [-s] [-n] [-t] [-c degrees] <.obj file>");
- System.out.println(" -s Spin (no user interaction)");
- System.out.println(" -n No triangulation");
- System.out.println(" -t No stripification");
- System.out.println(
- " -c Set crease angle for normal generation (default is 60 without");
- System.out.println(
- " smoothing group info, otherwise 180 within smoothing groups)");
- System.exit(0);
- } // End of usage
-
-
- public void init() {
- if (filename == null) {
- try {
- filename = new URL("file:../geometry/galleon.obj");
- }
- catch (MalformedURLException e) {
- System.err.println(e);
- System.exit(1);
- }
- }
-
- // Get the config file URL from the j3d.configURL property or use the
- // default config file "j3d1x1-window" in the current directory.
- URL configURL = ConfiguredUniverse.getConfigURL("file:j3d1x1-window");
-
- // Create a simple scene and attach it to the virtual universe
- BranchGroup scene = createSceneGraph();
- u = new ConfiguredUniverse(configURL);
-
- // Get the ViewingPlatform.
- ViewingPlatform viewingPlatform = u.getViewingPlatform();
-
- // This will move the ViewPlatform back a bit so the objects in the
- // scene can be viewed. This will only have an effect if the config
- // file sets the window eyepoint policy to something other than
- // RELATIVE_TO_COEXISTENCE, which is the default eyepoint policy
- // applied by ConfiguredUniverse.
- //
- // The default view attach policy for ConfiguredUniverse applications
- // is NOMINAL_SCREEN. This sets the view platform origin in the
- // physical world to the center of coexistence, which allows eye
- // positions expressed relative to coexistence to see the appropriate
- // field of view automatically.
- viewingPlatform.setNominalViewingTransform();
-
- // Add a ViewPlatformBehavior if not specified in the config file.
- if (!spin && viewingPlatform.getViewPlatformBehavior() == null) {
- OrbitBehavior orbit = new OrbitBehavior(u.getCanvas(),
- OrbitBehavior.REVERSE_ALL);
- BoundingSphere bounds =
- new BoundingSphere(new Point3d(0.0, 0.0, 0.0), 100.0);
-
- orbit.setSchedulingBounds(bounds);
- viewingPlatform.setViewPlatformBehavior(orbit);
- }
-
- // See if there's a 6 degree of freedom mouse in the environment.
- // We look for one named "mouse6d".
- Map sensorMap = null;
- sensorMap = u.getNamedSensors();
- if (sensorMap != null) {
- Sensor mouse6d = (Sensor)sensorMap.get("mouse6d");
- if (mouse6d != null) {
- Mouse6DPointerBehavior behavior =
- new Mouse6DPointerBehavior(mouse6d, 1.0, true);
-
- BoundingSphere bounds =
- new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
- behavior.setSchedulingBounds(bounds);
-
- scene.addChild(behavior);
- scene.addChild(behavior.getEcho());
- }
- }
-
- // Listen for a typed "q", "Q", or "Escape" key on each canvas to
- // allow a convenient exit from full screen configurations.
- Canvas3D[] canvases;
- canvases = u.getViewer().getCanvas3Ds();
-
- class QuitListener extends KeyAdapter {
- public void keyTyped(KeyEvent e) {
- char c = e.getKeyChar();
- if (c == 'q' || c == 'Q' || c == 27)
- System.exit(0);
- }
- }
-
- QuitListener quitListener = new QuitListener();
- for (int i = 0; i < canvases.length; i++)
- canvases[i].addKeyListener(quitListener);
-
- // Make the scenegraph live.
- u.addBranchGraph(scene);
- }
-
- public ConfigObjLoad(String[] args) {
- if (args.length != 0) {
- for (int i = 0; i < args.length; i++) {
- if (args[i].startsWith("-")) {
- if (args[i].equals("-s")) {
- spin = true;
- } else if (args[i].equals("-n")) {
- noTriangulate = true;
- } else if (args[i].equals("-t")) {
- noStripify = true;
- } else if (args[i].equals("-c")) {
- if (i < args.length - 1) {
- creaseAngle = (new Double(args[++i])).doubleValue();
- } else usage();
- } else {
- usage();
- }
- } else {
- try {
- if ((args[i].indexOf("file:") == 0) ||
- (args[i].indexOf("http") == 0)) {
- filename = new URL(args[i]);
- }
- else if (args[i].charAt(0) != '/') {
- filename = new URL("file:./" + args[i]);
- }
- else {
- filename = new URL("file:" + args[i]);
- }
- }
- catch (MalformedURLException e) {
- System.err.println(e);
- System.exit(1);
- }
- }
- }
- }
- init();
- }
-
- public static void main(String[] args) {
- new ConfigObjLoad(args);
- }
-}
diff --git a/src/ConfiguredUniverse/README.txt b/src/ConfiguredUniverse/README.txt
deleted file mode 100644
index fd2af8e..0000000
--- a/src/ConfiguredUniverse/README.txt
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-This directory contains a simple example application that demonstrates the
-ConfiguredUniverse utility class available in the com.sun.j3d.utils.universe
-package. J3DFly, available separately, is a fully featured application that
-also uses ConfiguredUniverse.
-
-ConfiguredUniverse is an extension of SimpleUniverse that can set up an
-interactive viewing environment based upon the contents of a site-specific
-configuration file. This is useful when an application needs to run without
-change across a broad range of viewing configurations and locally available
-input and audio devices. InputDevice implementations can be instantiated by
-ConfiguredUniverse and their Sensors can be retrieved by applications along
-with the names bound to them in the configuration file.
-
-Supported viewing configurations include windows on conventional desktops,
-stereo-enabled views, fullscreen immersive displays on single or multiple
-screens, and virtual reality installations such as cave and head-mounted
-displays incorporating 6-degree-of-freedom sensor devices.
-
-The ConfigObjLoad application is a modified version of the ObjLoad example
-program which uses the ConfiguredUniverse utility instead of SimpleUniverse.
-It also differs in the following other respects:
-
- It is an application and cannot be run in a browser. ConfiguredUniverse
- creates a JFrame, JPanel, and Canvas3D itself for each screen and is
- oriented towards multiple fullscreen viewing environments, although
- conventional windowed displays are also supported. The components
- created are easily accessable so applications can still incorporate them
- into their own user interfaces.
-
- The configuration file to load is specified by the j3d.configURL
- property. If one is not specified, it will load the file j3d1x1-window
- in this directory.
-
- Alternative custom view platform behaviors other than OrbitBehavior can
- be used by specifying the behavior in the configuration file.
-
- It can retrieve a 6DOF Sensor specified in the configuration file and
- use it to demonstrate the Mouse6DPointerBehavior class.
-
- Typing a "q" or the Escape key will terminate the example program. This
- is useful for fullscreen configurations.
-
-To load a specific configuration file, set the j3d.configURL property on the
-command line:
-
- java -Dj3d.configURL=<URL string> ConfigObjLoad <args> <obj file>
-
-For example, to load j3d1x2-rot30 in the current directory, run
-
- java -Dj3d.configURL=file:j3d1x2-rot30 ConfigObjLoad <args> <obj file>
-
-This directory includes the following sample configuration files. Normally
-a configuration file is site-specific but many of these can used as-is.
-Others may need customization for screen sizes, available input devices, and
-PhysicalBody parameters.
-
- j3d1x1: single fullscreen desktop configuration.
-
- j3d1x1-behavior: single fullscreen desktop configuration with a
- configurable view platform behavior.
-
- j3d1x1-stereo: single fullscreen desktop configuration with stereo
- viewing.
-
- j3d1x1-vr: single fullscreen desktop configuration with stereo viewing,
- head tracker, and 6DOF mouse.
-
- j3d1x1-window: single screen windowed desktop configuration.
-
- j3d1x2-flat: dual-screen flat desktop configuration.
-
- j3d1x2-rot30: dual-screen desktop configuration with each screen rotated
- toward the other by 30 degrees about Y.
-
- j3d1x3-cave: 3-projector configuration with screens to the left, front,
- and right of the user.
-
- j3d1x3-cave-vr: 3-projector configuration with screens to the left,
- front, and right of the user. Includes head tracking and stereo
- viewing.
-
- j3d1x3-rot45: 3-screen desktop configuration with left and right screens
- angled by 45 degrees from the center screen.
-
- j3d2x2-flat: 4-screen projector configuration arranged in a 2x2 power
- wall.
-
-Note: JDK 1.4 or newer is required when configuring multiple screens if the
-X11 Xinerama extension is being used to create a single virtual screen.
-This is due to a limitation of the getScreenDevices() method in the JDK 1.3
-version of GraphicsConfiguration which returns only a single GraphicsDevice
-from a virtual screen. ConfiguredUniverse will report this condition as an
-error in specifying more screens than are available.
-
-Also: Graphics performance may be degraded in some environments when using a
-virtual screen device. See the description of the j3d.disableXinerama
-property for possible performance improvements when using Xinerama.
-
diff --git a/src/ConfiguredUniverse/build.xml b/src/ConfiguredUniverse/build.xml
deleted file mode 100644
index 4e57328..0000000
--- a/src/ConfiguredUniverse/build.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
- -->
-
-<project basedir="." default="compile">
- <target name="compile">
- <javac
- destdir="." srcdir="."
- source="1.4" target="1.4"
- debug="true" deprecation="true">
- </javac>
- </target>
-
- <target name="all" depends="compile">
- </target>
-
- <target description="Clean all build products." name="clean">
- <delete>
- <fileset dir=".">
- <include name="**/*.class"/>
- </fileset>
- </delete>
- </target>
-
-</project>
diff --git a/src/ConfiguredUniverse/j3d1x1 b/src/ConfiguredUniverse/j3d1x1
deleted file mode 100644
index 41173e3..0000000
--- a/src/ConfiguredUniverse/j3d1x1
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for a single fullscreen desktop configuration.
- *
- ************************************************************************
- */
-
-// Create a new screen object and associate it with a logical name and a
-// number. This number is used as an index to retrieve the AWT GraphicsDevice
-// from the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen center 0)
-
-// Create a fullscreen window
-//
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-
-// Set the available image area for the full screen. This is important when an
-// explicit ScreenScale view attribute is defined for precise scaling between
-// objects in the virtual world and their projections into the physical world.
-// The defaults are 0.365 meters for width and 0.292 meters for height.
-//
-(ScreenAttribute center PhysicalScreenWidth 0.360)
-(ScreenAttribute center PhysicalScreenHeight 0.288)
-
-// Set the TrackerBaseToImagePlate transform for this screen. The coexistence
-// to tracker base transform is identity by default, so the tracker base origin
-// and orientation will also set the origin and orientation of coexistence
-// coordinates in the physical world. This is the primary purpose of setting
-// this transform when neither head tracking nor multiple screens are being
-// used.
-//
-// The tracker base and center of coexistence are set here to the middle of the
-// screen's image plate. Their basis vectors are aligned with the image plate
-// basis vectors. The physical eyepoint position will be set relative to
-// coexistence coordinates below.
-//
-(ScreenAttribute center TrackerBaseToImagePlate
- (Translate 0.180 0.144 0.000))
-
-// Create a view using the defined screen.
-//
-(NewView view0)
-(ViewAttribute view0 Screen center)
-
-// Set the eyepoint relative to coexistence coordinates. Here it is set 45cm
-// toward the user along +Z. Skewed projections can be created by offsetting
-// the eyepoint along X and/or Y.
-//
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.45))
diff --git a/src/ConfiguredUniverse/j3d1x1-behavior b/src/ConfiguredUniverse/j3d1x1-behavior
deleted file mode 100644
index d291913..0000000
--- a/src/ConfiguredUniverse/j3d1x1-behavior
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for single fullscreen desktop configuration.
- * A view platform behavior is created and configured here as well.
- *
- ************************************************************************
- */
-
-// Create a new screen object and associate it with a logical name and a
-// number. This number is used as an index to retrieve the AWT GraphicsDevice
-// from the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen center 0)
-
-// Create a fullscreen window
-//
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-
-// Set the available image area for the full screen.
-//
-(ScreenAttribute center PhysicalScreenWidth 0.360)
-(ScreenAttribute center PhysicalScreenHeight 0.288)
-
-// Set the TrackerBaseToImagePlate transform for this screen. The coexistence
-// to tracker base transform is identity by default, so the tracker base origin
-// and orientation will also set the origin and orientation of coexistence
-// coordinates in the physical world. This is the primary purpose of setting
-// this transform when neither head tracking nor multiple screens are being
-// used.
-//
-// The tracker base and center of coexistence are set here to the middle of the
-// screen's image plate. Their basis vectors are aligned with the image plate
-// basis vectors. The physical eyepoint position will be set relative to
-// coexistence coordinates below.
-//
-(ScreenAttribute center TrackerBaseToImagePlate
- (Translate 0.180 0.144 0.000))
-
-// Create a view using the defined screen.
-//
-(NewView view0)
-(ViewAttribute view0 Screen center)
-
-// Set the eyepoint relative to coexistence coordinates. Here it is set 45cm
-// toward the user along +Z. Skewed projections can be set by by offsetting
-// the eyepoint along X and Y.
-//
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.45))
-
-// Create a view platform behavior. Here we use OrbitBehavior, although any
-// concrete subclass of the abstract ViewPlatformBehavior with a parameterless
-// constructor could be used. The logical name to assign to this behavior is
-// specified by the 2nd argument to the NewViewPlatformBehavior command, while
-// the 3rd argument is the name of the ViewPlatformBehavior subclass. It is
-// instantiated through introspection.
-//
-// Attributes defined by the abstract ViewPlatformBehavior superclass itself
-// can be set directly with the ViewPlatformBehaviorAttribute command. The
-// details of the subclass implementation are not known to ConfiguredUniverse,
-// so any configuration information needed by such a subclass is set by the
-// ViewPlatformBehaviorProperty command. The property name specified by that
-// command is taken to be a method name of the subclass and invoked through
-// introspection.
-//
-// View platform behaviors often need sensors or canvases as event sources to
-// drive the behavior action. An implementation of ViewPlatformBehavior always
-// gets the current ViewingPlatform through the setViewingPlatform() method.
-// The canvases used by the ViewingPlatform can be retrieved by calling its
-// getViewers() method and then calling each Viewer's getCanvas3Ds()
-// method. Sensors can be retrived by calling the ViewingPlatform method
-// getUniverse(), checking to see if the returned SimpleUniverse is a
-// ConfiguredUniverse, and then calling its getNamedSensors() method.
-//
-(NewViewPlatformBehavior vpb com.sun.j3d.utils.behaviors.vp.OrbitBehavior)
-
-// Set the scheduling bounds to be a BoundingSphere with its center at
-// (0.0 0.0 0.0) and a radius of 100 meters.
-//
-(ViewPlatformBehaviorAttribute vpb SchedulingBounds
- (BoundingSphere (0.0 0.0 0.0) 100.0))
-
-// Set properties specific to OrbitBehavior. All arguments following the
-// method name are wrapped and passed to the specified method as an array of
-// Objects. Strings "true" and "false" get turned into Boolean, and number
-// strings get turned into Double. Constructs such as (0.0 1.0 2.0) and
-// ((0.0 1.0 2.0 0.5) (3.0 4.0 5.0 1.0) (6.0 7.0 8.0 0.0)) get converted to
-// Point3d and Matrix4d respectively. Note that last row of a Matrix4d doesn't
-// need to be specified; it is implicitly (0.0 0.0 0.0 1.0).
-//
-// The REVERSE_ALL flags are usually passed to the OrbitBehavior constructor.
-// Since it is being instantiated with its parameterless constructor the
-// reverse flags are set here explicitly.
-//
-(ViewPlatformBehaviorProperty vpb ReverseTranslate true)
-(ViewPlatformBehaviorProperty vpb ReverseRotate true)
-(ViewPlatformBehaviorProperty vpb ReverseZoom true)
-
-// Create a new view platform and set the view platform behavior.
-//
-(NewViewPlatform vp)
-(ViewPlatformAttribute vp ViewPlatformBehavior vpb)
diff --git a/src/ConfiguredUniverse/j3d1x1-stereo b/src/ConfiguredUniverse/j3d1x1-stereo
deleted file mode 100644
index 3db4070..0000000
--- a/src/ConfiguredUniverse/j3d1x1-stereo
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for single fullscreen stereo desktop
- * configuration with no head tracking.
- *
- ************************************************************************
- */
-
-// Create a new screen object and associate it with a logical name and a
-// number. This number is used as an index to retrieve the AWT GraphicsDevice
-// from the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen center 0)
-
-// Create a fullscreen window
-//
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-
-// Set the available image area for the full screen.
-//
-(ScreenAttribute center PhysicalScreenWidth 0.360)
-(ScreenAttribute center PhysicalScreenHeight 0.288)
-
-// Set the TrackerBaseToImagePlate transform for this screen. The coexistence
-// to tracker base transform is identity by default, so the tracker base origin
-// and orientation will also set the origin and orientation of coexistence
-// coordinates in the physical world. This is the primary purpose of setting
-// this transform when neither head tracking nor multiple screens are being
-// used.
-//
-// The tracker base and center of coexistence are set here to the middle of the
-// screen's image plate. Their basis vectors are aligned with the image plate
-// basis vectors. The physical eyepoint position will be set relative to
-// coexistence coordinates below.
-//
-(ScreenAttribute center TrackerBaseToImagePlate
- (Translate 0.180 0.144 0.000))
-
-// Define the physical body.
-//
-// The head origin is halfway between the eyes, with X extending to the right,
-// Y up, and positive Z extending into the skull.
-//
-(NewPhysicalBody SiteUser)
-
-// Set the interpupilary distance. This sets the LeftEyePosition and
-// RightEyePosition to offsets of half this distance along both directions of
-// the X axis.
-//
-(PhysicalBodyAttribute SiteUser StereoEyeSeparation 0.066)
-
-// Create a view using the defined screen and physical body.
-//
-(NewView view0)
-(ViewAttribute view0 Screen center)
-(ViewAttribute view0 PhysicalBody SiteUser)
-
-// Set the eyepoint relative to coexistence coordinates. Here it is set 45cm
-// toward the user along +Z.
-//
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.45))
-
-// Enable stereo viewing.
-//
-(ViewAttribute view0 StereoEnable true)
diff --git a/src/ConfiguredUniverse/j3d1x1-vr b/src/ConfiguredUniverse/j3d1x1-vr
deleted file mode 100644
index 587f481..0000000
--- a/src/ConfiguredUniverse/j3d1x1-vr
+++ /dev/null
@@ -1,212 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for a single screen stereo desktop display
- * using a head tracker and 6DOF mouse.
- *
- ************************************************************************
- */
-
-// Configure the head tracker. The NewDevice command binds a logical name
-// (the 2nd argument) to an InputDevice implementation whose class name is
-// specified in the 3rd argument. The InputDevice implementation for a head
-// tracker must generate position and orientation data relative to a fixed
-// frame of reference in the physical world, the "tracker base" of the Java
-// 3D view model.
-//
-// The InputDevice is instantiated through introspection of the class name.
-// Available InputDevice implementations are site-specific, so substitute
-// the class name in a NewDevice command below with one that is available at
-// the local site.
-//
-// Note that properties are used to configure an InputDevice instead of
-// attributes. The details of an InputDevice implementation are not known to
-// ConfiguredUniverse, so the property name is invoked as a method through
-// introspection. The example properties below must be replaced with the ones
-// needed, if any, by specific InputDevice implementations.
-//
-// All property arguments following the method name are wrapped and passed to
-// the specified method as an array of Objects. Strings "true" and "false"
-// get wrapped into Boolean, and number strings get wrapped into Double.
-// Construct such as (0.0 1.0 2.0) and ((0.0 1.0 2.0 0.5) (3.0 4.0 5.0 1.0)
-// (6.0 7.0 8.0 0.0)) get converted to Point3d and Matrix4d respectively.
-// Note that last row of a Matrix4d doesn't need to be specified; it is
-// implicitly (0.0 0.0 0.0 1.0).
-//
-(NewDevice glasses LogitechRedBarron)
-(DeviceProperty glasses SerialPort "/dev/ttya") // Unix paths need quoting.
-(DeviceProperty glasses ReceiverBaseline 0.1450)
-(DeviceProperty glasses ReceiverLeftLeg 0.0875)
-(DeviceProperty glasses ReceiverHeight 0.0470)
-(DeviceProperty glasses ReceiverTopOffset 0.0000)
-
-// Configure an InputDevice to use for a 6 degree of freedom mouse if
-// required. In some implementations the same InputDevice instance can be
-// used both for head tracking and multiple peripheral sensing devices.
-// This example assumes an implementation that requires multiple instances,
-// one for each sensor, sharing the same physical hardware used for the
-// tracker base. In either case all the sensors must generate position and
-// orientation relative to the same fixed tracker base frame of reference.
-//
-(NewDevice wand LogitechRedBarron)
-(DeviceProperty wand SerialPort "/dev/ttyb")
-(DeviceProperty wand ReceiverBaseline 0.0700)
-(DeviceProperty wand ReceiverLeftLeg 0.0625)
-(DeviceProperty wand ReceiverHeight 0.0510)
-(DeviceProperty wand ReceiverTopOffset 0.0000)
-
-// Create logical names for the available sensors in the specified input
-// devices. The last argument is the sensor's index in the input device.
-//
-(NewSensor head glasses 0)
-(NewSensor mouse6d wand 0)
-
-// Set the 6DOF mouse sensor hotspot in the local sensor coordinate system.
-// The hotspot is simply the "active" point relative to the sensor origin
-// which interacts with the virtual world, such as the point used for picking
-// or grabbing an object. Its interpretation is up to the sensor behavior.
-//
-// It is set here to 10 centimeters from the base to allow reaching into the
-// screen without bumping the device into the glass, and to prevent the device
-// itself from obscuring the pointer echo.
-//
-(SensorAttribute mouse6d Hotspot (0.0 0.0 -0.10))
-
-
-// Create a new screen object and associate it with a logical name and a
-// number. This number is used as an index to retrieve the AWT GraphicsDevice
-// from the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen center 0)
-
-// Set the actual available image area. This measured as 0.350 meters in
-// width and 0.245 meters in height for the monitor in the sample setup when
-// running in stereo resolution.
-//
-(ScreenAttribute center PhysicalScreenWidth 0.350)
-(ScreenAttribute center PhysicalScreenHeight 0.245)
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-
-// Set the TrackerBaseToImagePlate transform for this screen. This transforms
-// points in tracker base coordinates to image plate coordinates.
-//
-// For this sample setup the tracker base is leaning at 50 degrees about its
-// X-axis over the top edge of the monitor. The middle of the tracker base
-// (its origin) is offset by (0.175, 0.345, 0.020) from the lower left
-// corner of the screen (origin of the image plate).
-//
-(ScreenAttribute center TrackerBaseToImagePlate
- (RotateTranslate (Rotate 50.000 0.000 0.000)
- (Translate 0.175 0.345 0.020)))
-
-
-// Create a physical environment. This contains the available input devices,
-// audio devices, and sensors, and defines the coexistence coordinate system.
-//
-(NewPhysicalEnvironment SampleSite)
-
-// Register the input devices defined in this file.
-//
-(PhysicalEnvironmentAttribute SampleSite InputDevice glasses)
-(PhysicalEnvironmentAttribute SampleSite InputDevice wand)
-
-// Register the sensor which will drive head tracking.
-//
-(PhysicalEnvironmentAttribute SampleSite HeadTracker head)
-
-// Define coexistence coordinates.
-//
-// Coexistence coordinates are defined relative to the tracker base to simplify
-// calibration measurements, just as the tracker base is used as the common
-// reference frame for the TrackerBaseToImagePlate calibration.
-//
-// Here the coexistence origin is set to the middle of the center screen, using
-// the same basis vectors as its image plate. This will put the tracker base
-// origin at (0.0 0.220 0.020) relative to the coexistence origin along its
-// basis vectors.
-//
-(PhysicalEnvironmentAttribute SampleSite CoexistenceToTrackerBase
- (TranslateRotate (Translate 0.0 -0.220 -0.020)
- (Rotate -50.0 0.0 0.0)))
-
-// Define the physical body.
-//
-// The head origin is halfway between the eyes, with X extending to the right,
-// Y up, and positive Z extending into the skull.
-//
-(NewPhysicalBody SiteUser)
-
-// Set the interpupilary distance. This sets the LeftEyePosition and
-// RightEyePosition to offsets of half this distance along both directions of
-// the X axis.
-//
-(PhysicalBodyAttribute SiteUser StereoEyeSeparation 0.066)
-
-// Define the position and orientation of the head relative to the tracker
-// mounted on the head.
-//
-(PhysicalBodyAttribute SiteUser HeadToHeadTracker ((1.0 0.0 0.0 0.000)
- (0.0 1.0 0.0 0.020)
- (0.0 0.0 1.0 0.018)))
-
-
-// Create a view using the defined screens, PhysicalEnvironment, and
-// PhysicalBody.
-//
-(NewView view0)
-(ViewAttribute view0 Screen center)
-(ViewAttribute view0 PhysicalEnvironment SampleSite)
-(ViewAttribute view0 PhysicalBody SiteUser)
-
-// Enable stereo viewing. Enable head tracking to get the position of the eyes
-// with respect to coexistence.
-//
-(ViewAttribute view0 StereoEnable true)
-(ViewAttribute view0 TrackingEnable True)
diff --git a/src/ConfiguredUniverse/j3d1x1-window b/src/ConfiguredUniverse/j3d1x1-window
deleted file mode 100644
index eec0e31..0000000
--- a/src/ConfiguredUniverse/j3d1x1-window
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for a conventional single screen, windowed
- * desktop configuration.
- *
- ************************************************************************
- */
-
-// Create a new screen object and associate it with a logical name and a
-// number. This number is used as an index to retrieve the AWT GraphicsDevice
-// from the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen center 0)
-
-// Create a 700x700 pixel window on the screen.
-//
-(ScreenAttribute center WindowSize (700.0 700.0))
-
-// Create a view using the defined screen.
-//
-(NewView view0)
-(ViewAttribute view0 Screen center)
-
-// ConfiguredUniverse is oriented toward multi-screen viewing environments, so
-// it sets the following attributes to those listed. For a conventional window
-// on a single screen desktop configuration we need to set them back to their
-// normal defaults.
-//
-// View.windowEyePointPolicy RELATIVE_TO_COEXISTENCE
-// View.windowMovementPolicy VIRTUAL_WORLD
-// View.windowResizePolicy VIRTUAL_WORLD
-// View.coexistenceCenteringEnable false
-// ViewPlatform.viewAttachPolicy NOMINAL_SCREEN
-//
-(ViewAttribute view0 WindowEyepointPolicy RELATIVE_TO_FIELD_OF_VIEW)
-(ViewAttribute view0 WindowMovementPolicy PHYSICAL_WORLD)
-(ViewAttribute view0 WindowResizePolicy PHYSICAL_WORLD)
-(ViewAttribute view0 CoexistenceCenteringEnable true)
-
-(NewViewPlatform vp)
-(ViewPlatformAttribute vp ViewAttachPolicy NOMINAL_HEAD)
diff --git a/src/ConfiguredUniverse/j3d1x2-flat b/src/ConfiguredUniverse/j3d1x2-flat
deleted file mode 100644
index 667ea52..0000000
--- a/src/ConfiguredUniverse/j3d1x2-flat
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for dual-screen (flat) desktop configuration
- * with no head tracking.
- *
- ************************************************************************
- */
-
-// Create new screen objects and associate them with logical names and numbers.
-// These numbers are used as indices to retrieve the AWT GraphicsDevice from
-// the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen left 0)
-(NewScreen right 1)
-
-// Set the screen dimensions.
-//
-(ScreenAttribute left PhysicalScreenWidth 0.360)
-(ScreenAttribute left PhysicalScreenHeight 0.288)
-
-(ScreenAttribute right PhysicalScreenWidth 0.360)
-(ScreenAttribute right PhysicalScreenHeight 0.288)
-
-// Specify full screen windows.
-//
-(ScreenAttribute left WindowSize NoBorderFullScreen)
-(ScreenAttribute right WindowSize NoBorderFullScreen)
-
-// Set the TrackerBaseToImagePlate transforms for these screens. This
-// transforms points in tracker base coordinates to each screen's image plate
-// coordinates, where the origin of the image plate is defined to be the lower
-// left corner of the screen with X increasing to the right, Y increasing to
-// the top, and Z increasing away from the screen.
-//
-// Without head or sensor tracking the tracker base is still needed as a fixed
-// frame of reference for describing the orientation and position of each
-// screen to the others. The coexistence to tracker base transform is set to
-// identity by default, so the tracker base origin and orientation will also
-// set the origin and orientation of coexistence coordinates in the physical
-// world.
-//
-// The tracker base and center of coexistence is set here to the middle of the
-// edge shared by the two screens.
-//
-(ScreenAttribute left TrackerBaseToImagePlate
- (Translate 0.360 0.144 0.0))
-(ScreenAttribute right TrackerBaseToImagePlate
- (Translate 0.000 0.144 0.0))
-
-// Sometimes it is desirable to include the bevels in between the monitors in
-// the TrackerBaseToImagePlate transforms, so that the abutting bevels obscure
-// the view of the virtual world instead of stretching it out between the
-// monitors. For a bevel width of 4.5 cm on each monitor, the above commands
-// would become the following:
-//
-// (ScreenAttribute left TrackerBaseToImagePlate
-// (Translate 0.405 0.144 0.0))
-// (ScreenAttribute right TrackerBaseToImagePlate
-// (Translate -0.045 0.144 0.0))
-//
-// Conversely, a similar technique may be used to include overlap between the
-// screens. This is useful for projection systems which use edge blending
-// to provide seamless integration between screens.
-
-
-// Create a view using the defined screens.
-//
-(NewView view0)
-(ViewAttribute view0 Screen left)
-(ViewAttribute view0 Screen right)
-
-// Set the eyepoint relative to coexistence coordinates. Here it is set 45cm
-// toward the user along Z, extending out from the midpoint of the edge shared
-// by the two screens. This will create the appropriate skewed projection
-// frustums for each image plate.
-//
-// If a planar display surface is all that is required, the same effect could
-// be achieved in a virtual screen enviroment such as Xinerama by simply
-// creating a canvas that spans both screens. In some display environments the
-// use of a canvas that spans multiple physical screens may cause significant
-// performance degradation, however.
-//
-// See j3d1x2-rot30 for an example of a non-planar configuration that cannot be
-// achieved through a single canvas spanning both screens.
-//
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.45))
diff --git a/src/ConfiguredUniverse/j3d1x2-rot30 b/src/ConfiguredUniverse/j3d1x2-rot30
deleted file mode 100644
index 68f4a6e..0000000
--- a/src/ConfiguredUniverse/j3d1x2-rot30
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for a dual-screen desktop configuration
- * with each screen rotated toward the other by 30 degrees about Y from
- * planar. The inside angle between them is 120 degrees.
- *
- ************************************************************************
- */
-
-// Create new screen objects and associate them with logical names and numbers.
-// These numbers are used as indices to retrieve the AWT GraphicsDevice from
-// the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen left 0)
-(NewScreen right 1)
-
-// Set the available image areas for full screens.
-//
-(ScreenAttribute left PhysicalScreenWidth 0.360)
-(ScreenAttribute left PhysicalScreenHeight 0.288)
-
-(ScreenAttribute right PhysicalScreenWidth 0.360)
-(ScreenAttribute right PhysicalScreenHeight 0.288)
-
-// Specify full screen windows.
-//
-(ScreenAttribute left WindowSize NoBorderFullScreen)
-(ScreenAttribute right WindowSize NoBorderFullScreen)
-
-// Set the TrackerBaseToImagePlate transforms for these screens.
-//
-// The tracker base is set here to the middle of the edge shared by the two
-// screens. Each screen is rotated 30 degrees toward the other about the
-// tracker base +Y axis, so that the tracker base +Z is centered between the
-// two screens.
-//
-(ScreenAttribute left TrackerBaseToImagePlate
- (RotateTranslate (Rotate 0.000 -30.000 0.0)
- (Translate 0.360 0.144 0.0)))
-
-(ScreenAttribute right TrackerBaseToImagePlate
- (RotateTranslate (Rotate 0.000 30.000 0.0)
- (Translate 0.000 0.144 0.0)))
-
-
-// Create a view using the defined screens.
-//
-(NewView view0)
-(ViewAttribute view0 Screen left)
-(ViewAttribute view0 Screen right)
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.45))
diff --git a/src/ConfiguredUniverse/j3d1x3-cave b/src/ConfiguredUniverse/j3d1x3-cave
deleted file mode 100644
index afc532c..0000000
--- a/src/ConfiguredUniverse/j3d1x3-cave
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for a cave environment. This cave
- * consists of 3 projectors with 3 screens to the left, front, and right
- * of the user, all at 90 degrees to each other.
- *
- * The projectors in the VirtualPortal sample site are actually turned
- * on their sides to get more height. Screen 0 is rotated 90 degrees
- * counter-clockwise, while screens 1 and 2 are rotated 90 degrees
- * clockwise.
- *
- ************************************************************************
- */
-
-// Create new screen objects and associate them with logical names and numbers.
-// These numbers are used as indices to retrieve the AWT GraphicsDevice from
-// the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen left 0)
-(NewScreen center 1)
-(NewScreen right 2)
-
-
-// Set the available image areas as well as their positition and orientation
-// relative to the tracker base. Although this config file doesn't enable
-// head tracking, the tracker base is still needed as a point of reference to
-// describe the position and orientation of the screens relative to the
-// environment.
-//
-// From the orientation of a user standing within this VirtualPortal site and
-// facing the center screen, the tracker base is along the vertical midline of
-// the screen, 0.248 meters down from the top edge, and 1.340 meters in front
-// of it. The tracker base is oriented so that its +X axis points to the left,
-// its +Y axis points toward the screen, and its +Z axis points toward the
-// floor.
-//
-(ScreenAttribute left PhysicalScreenWidth 2.480)
-(ScreenAttribute left PhysicalScreenHeight 1.705)
-(ScreenAttribute left WindowSize NoBorderFullScreen)
-(ScreenAttribute left TrackerBaseToImagePlate
- (( 0.0 0.0 -1.0 2.230)
- ( 0.0 -1.0 0.0 1.340)
- (-1.0 0.0 0.0 0.885)))
-
-(ScreenAttribute center PhysicalScreenWidth 2.485)
-(ScreenAttribute center PhysicalScreenHeight 1.745)
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-(ScreenAttribute center TrackerBaseToImagePlate
- (( 0.0 0.0 1.0 0.248)
- (-1.0 0.0 0.0 0.885)
- ( 0.0 -1.0 0.0 1.340)))
-
-(ScreenAttribute right PhysicalScreenWidth 2.480)
-(ScreenAttribute right PhysicalScreenHeight 1.775)
-(ScreenAttribute right WindowSize NoBorderFullScreen)
-(ScreenAttribute right TrackerBaseToImagePlate
- (( 0.0 0.0 1.0 0.2488)
- ( 0.0 -1.0 0.0 1.340)
- ( 1.0 0.0 0.0 0.860)))
-
-// Set the location of the center of coexistence relative to the tracker base.
-// Here it set to the center of the center screen. This config file will set
-// the location of the user's eyes relative to this point. The default view
-// attach policy of NOMINAL_SCREEN used by ConfiguredUniverse will place the
-// origin of the view platform in coexistence coordinates at the center of
-// coexistence.
-//
-(NewPhysicalEnvironment VirtualPortal)
-(PhysicalEnvironmentAttribute VirtualPortal
- CoexistenceToTrackerBase
- ((-1.0 0.0 0.0 0.000)
- ( 0.0 0.0 -1.0 1.340)
- ( 0.0 -1.0 0.0 0.994)))
-
-// The above center of coexistence is appropriate for the sample geometry
-// files available in the programs/examples directory. Often a more
-// immersive point of view is required for larger virtual worlds. This can be
-// achieved by placing the center of coexistence closer to the nominal position
-// of the user's head, so that the view platform origin in coexistence
-// coordinates will map there as well.
-//
-// Here we set the location of the center of coexistence 0.5 meters along the
-// tracker base +Z axis, 1.737 meters from the floor (about 5 ft 8.4 inches).
-//
-// (PhysicalEnvironmentAttribute VirtualPortal
-// CoexistenceToTrackerBase
-// ((-1.0 0.0 0.0 0.0)
-// ( 0.0 0.0 -1.0 0.0)
-// ( 0.0 -1.0 0.0 0.5)))
-
-
-// Now define the view.
-//
-(NewView view0)
-(ViewAttribute view0 Screen left)
-(ViewAttribute view0 Screen center)
-(ViewAttribute view0 Screen right)
-(ViewAttribute view0 PhysicalEnvironment VirtualPortal)
-
-// Set the user eye position in the display environment. It is set here to
-// 1.340 meters back from the center screen (directly under the tracker), and
-// 1.737 meters from the floor (about 5 ft 8.4 inches).
-//
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.494 1.340))
-
-// Here is an alternative center eye position to use with the immersive
-// coexistence coordinate system defined in comments above.
-//
-// (ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.0))
-
-// Set the screen scale. This is scale factor from virtual to physical
-// coordinates.
-//
-(ViewAttribute view0 ScreenScalePolicy SCALE_SCREEN_SIZE)
-
-// Alternative for explict scaling.
-//
-// (ViewAttribute view0 ScreenScalePolicy SCALE_EXPLICIT)
-// (ViewAttribute view0 ScreenScale 5.00)
-
-// No stereo viewing for this configuration.
-//
-(ViewAttribute view0 StereoEnable False)
diff --git a/src/ConfiguredUniverse/j3d1x3-cave-vr b/src/ConfiguredUniverse/j3d1x3-cave-vr
deleted file mode 100644
index 029decf..0000000
--- a/src/ConfiguredUniverse/j3d1x3-cave-vr
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for a cave environment with head tracking and
- * stereo viewing. This cave consists of 3 projectors with 3 screens to the
- * left, front, and right of the user, all at 90 degrees to each other.
- *
- * The projectors in the VirtualPortal sample site are actually turned
- * on their sides to get more height. Screen 0 is rotated 90 degrees
- * counter-clockwise, while screens 1 and 2 are rotated 90 degrees
- * clockwise.
- *
- ************************************************************************
- */
-
-// Configure the head tracker. The NewDevice command binds a logical name
-// (the 2nd argument) to an InputDevice implementation whose class name is
-// specified in the 3rd argument. The InputDevice implementation for a head
-// tracker must generate position and orientation data relative to a fixed
-// frame of reference in the physical world, the "tracker base" of the Java
-// 3D view model.
-//
-// The InputDevice is instantiated through introspection of the class name.
-// Available InputDevice implementations are site-specific, so substitute
-// the class name in a NewDevice command below with one that is available at
-// the local site.
-//
-// Note that properties are used to configure an InputDevice instead of
-// attributes. The details of an InputDevice implementation are not known to
-// ConfiguredUniverse, so the property name is invoked as a method through
-// introspection. The example properties below must be replaced with the ones
-// needed, if any, by specific InputDevice implementations. All arguments
-// following the method name are wrapped and passed to the specified method as
-// an array of Objects.
-//
-// All property arguments following the method name are wrapped and passed to
-// the specified method as an array of Objects. Strings "true" and "false"
-// get wrapped into Boolean, and number strings get wrapped into Double.
-// Construct such as (0.0 1.0 2.0) and ((0.0 1.0 2.0 0.5) (3.0 4.0 5.0 1.0)
-// (6.0 7.0 8.0 0.0)) get converted to Point3d and Matrix4d respectively.
-// Note that last row of a Matrix4d doesn't need to be specified; it is
-// implicitly (0.0 0.0 0.0 1.0).
-//
-(NewDevice glasses LogitechRedBarron)
-(DeviceProperty glasses SerialPort "/dev/ttya") // Unix paths need quoting.
-(DeviceProperty glasses TransmitterBaseline 0.4600)
-(DeviceProperty glasses TransmitterLeftLeg 0.4400)
-(DeviceProperty glasses TransmitterCalibrationDistance 0.4120)
-
-// Create a logical name for the head tracker sensor. The last argument is
-// the sensor's index in the input device.
-//
-(NewSensor head glasses 0)
-
-// Create new screen objects and associate them with logical names and numbers.
-// These numbers are used as indices to retrieve the AWT GraphicsDevice from
-// the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen left 0)
-(NewScreen center 1)
-(NewScreen right 2)
-
-
-// Set the available image areas as well as their positition and orientation
-// relative to the tracker base. From the orientation of a user standing
-// within this VirtualPortal site and facing the center screen, the tracker
-// base is along the vertical midline of the screen, 0.248 meters down from
-// the top edge, and 1.340 meters in front of it. The tracker base is
-// oriented so that its +X axis points to the left, its +Y axis points toward
-// the screen, and its +Z axis points toward the floor.
-//
-(ScreenAttribute left PhysicalScreenWidth 2.480)
-(ScreenAttribute left PhysicalScreenHeight 1.705)
-(ScreenAttribute left WindowSize NoBorderFullScreen)
-(ScreenAttribute left TrackerBaseToImagePlate
- (( 0.0 0.0 -1.0 2.230)
- ( 0.0 -1.0 0.0 1.340)
- (-1.0 0.0 0.0 0.885)))
-
-(ScreenAttribute center PhysicalScreenWidth 2.485)
-(ScreenAttribute center PhysicalScreenHeight 1.745)
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-(ScreenAttribute center TrackerBaseToImagePlate
- (( 0.0 0.0 1.0 0.248)
- (-1.0 0.0 0.0 0.885)
- ( 0.0 -1.0 0.0 1.340)))
-
-(ScreenAttribute right PhysicalScreenWidth 2.480)
-(ScreenAttribute right PhysicalScreenHeight 1.775)
-(ScreenAttribute right WindowSize NoBorderFullScreen)
-(ScreenAttribute right TrackerBaseToImagePlate
- (( 0.0 0.0 1.0 0.2488)
- ( 0.0 -1.0 0.0 1.340)
- ( 1.0 0.0 0.0 0.860)))
-
-// Create a physical environment. This contains the available input devices,
-// audio devices, and sensors, and defines the coexistence coordinate system
-// for mapping between the virtual and physical worlds.
-//
-(NewPhysicalEnvironment VirtualPortal)
-
-// Register the input device defined in this file and the sensor which will
-// drive head tracking.
-//
-(PhysicalEnvironmentAttribute VirtualPortal InputDevice glasses)
-(PhysicalEnvironmentAttribute VirtualPortal HeadTracker head)
-
-// Set the location of the center of coexistence relative to the tracker base.
-// Here it set to the center of the center screen. The default view attach
-// policy of NOMINAL_SCREEN used by ConfiguredUniverse will place the origin of
-// the view platform in coexistence coordinates at the center of coexistence.
-//
-(PhysicalEnvironmentAttribute VirtualPortal
- CoexistenceToTrackerBase
- ((-1.0 0.0 0.0 0.000)
- ( 0.0 0.0 -1.0 1.340)
- ( 0.0 -1.0 0.0 0.994)))
-
-// The above center of coexistence is appropriate for the sample geometry
-// files available in the programs/examples directory. Often a more
-// immersive point of view is required for larger virtual worlds. This can be
-// achieved by placing the center of coexistence closer to the nominal position
-// of the user's head, so that the view platform origin in coexistence
-// coordinates will map there as well.
-//
-// Here we set the location of the center of coexistence 0.5 meters along the
-// tracker base +Z axis, 1.737 meters from the floor (about 5 ft 8.4 inches).
-//
-// (PhysicalEnvironmentAttribute VirtualPortal
-// CoexistenceToTrackerBase
-// ((-1.0 0.0 0.0 0.0)
-// ( 0.0 0.0 -1.0 0.0)
-// ( 0.0 -1.0 0.0 0.5)))
-
-
-// Define the physical body.
-//
-// The head origin is halfway between the eyes, with X extending to the right,
-// Y up, and positive Z extending into the skull.
-//
-(NewPhysicalBody LabRat)
-(PhysicalBodyAttribute LabRat StereoEyeSeparation .07)
-
-// Define the position and orientation of the head relative to the tracker
-// mounted on the head.
-//
-(PhysicalBodyAttribute LabRat HeadToHeadTracker
- ((-1.0 0.0 0.0 0.00)
- ( 0.0 0.0 -1.0 0.05)
- ( 0.0 -1.0 0.0 0.11)))
-// Now define the view.
-//
-(NewView view0)
-(ViewAttribute view0 Screen left)
-(ViewAttribute view0 Screen center)
-(ViewAttribute view0 Screen right)
-(ViewAttribute view0 PhysicalBody LabRat)
-(ViewAttribute view0 PhysicalEnvironment VirtualPortal)
-
-// Set the screen scale. This is scale factor from virtual to physical
-// coordinates.
-//
-(ViewAttribute view0 ScreenScalePolicy SCALE_SCREEN_SIZE)
-
-// Alternative for explict scaling.
-//
-//(ViewAttribute view0 ScreenScalePolicy SCALE_EXPLICIT)
-//(ViewAttribute view0 ScreenScale 5.00)
-
-// Enable stereo viewing. Enable head tracking to get the position of the eyes
-// with respect to coexistence. Boolean values may be specified as either
-// true, True, false, or False.
-//
-(ViewAttribute view0 StereoEnable true)
-(ViewAttribute view0 TrackingEnable True)
diff --git a/src/ConfiguredUniverse/j3d1x3-rot45 b/src/ConfiguredUniverse/j3d1x3-rot45
deleted file mode 100644
index d221e74..0000000
--- a/src/ConfiguredUniverse/j3d1x3-rot45
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for 3 screens. Left and right screens are
- * rotated 45 degrees from the center screen.
- *
- ************************************************************************
- */
-
-// Create new screen objects and associate them with logical names and numbers.
-// These numbers are used as indices to retrieve the AWT GraphicsDevice from
-// the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen left 0)
-(NewScreen center 1)
-(NewScreen right 2)
-
-// Set the available image areas for full screens.
-//
-(ScreenAttribute left PhysicalScreenWidth 0.360)
-(ScreenAttribute left PhysicalScreenHeight 0.288)
-
-(ScreenAttribute center PhysicalScreenWidth 0.360)
-(ScreenAttribute center PhysicalScreenHeight 0.288)
-
-(ScreenAttribute right PhysicalScreenWidth 0.360)
-(ScreenAttribute right PhysicalScreenHeight 0.288)
-
-// Specify full screen windows.
-//
-(ScreenAttribute left WindowSize NoBorderFullScreen)
-(ScreenAttribute center WindowSize NoBorderFullScreen)
-(ScreenAttribute right WindowSize NoBorderFullScreen)
-
-// Set the TrackerBaseToImagePlate transforms for these screens.
-//
-// The tracker base and center of coexistence are set here to the middle of the
-// center screen. The basis vectors are aligned with the center screen image
-// plate. The left and right screens are rotated 45 degrees toward each other
-// about their shared edges with the center screen.
-//
-(ScreenAttribute center TrackerBaseToImagePlate
- (Translate 0.180000 0.144000 0.000000))
-
-// cos(45) * 0.360 * 0.5 = 0.127279; 0.360 + 0.127279 = 0.487279
-(ScreenAttribute left TrackerBaseToImagePlate
- (RotateTranslate
- (Rotate 0.000000 -45.000000 0.000000)
- (Translate 0.487279 0.144000 0.127279)))
-
-// cos(45) * 0.360 * 0.5 = 0.127279
-(ScreenAttribute right TrackerBaseToImagePlate
- (RotateTranslate
- (Rotate 0.000000 45.000000 0.000000)
- (Translate -0.127279 0.144000 0.127279)))
-
-// Create a view using the defined screens.
-//
-(NewView view0)
-(ViewAttribute view0 Screen left)
-(ViewAttribute view0 Screen center)
-(ViewAttribute view0 Screen right)
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.5))
diff --git a/src/ConfiguredUniverse/j3d2x2-flat b/src/ConfiguredUniverse/j3d2x2-flat
deleted file mode 100644
index 46df9a3..0000000
--- a/src/ConfiguredUniverse/j3d2x2-flat
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistribution of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistribution in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * Neither the name of Sun Microsystems, Inc. or the names of
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * This software is provided "AS IS," without a warranty of any
- * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
- * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
- * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL
- * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
- * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
- * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
- * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
- * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
- * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGES.
- *
- * You acknowledge that this software is not designed, licensed or
- * intended for use in the design, construction, operation or
- * maintenance of any nuclear facility.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-/*
- ************************************************************************
- *
- * Java 3D configuration file for 4 screen projection configuration
- * arranged in a 2x2 power wall.
- *
- ************************************************************************
- */
-
-// Create new screen objects and associate them with logical names and numbers.
-// These numbers are used as indices to retrieve the AWT GraphicsDevice from
-// the array that GraphicsEnvironment.getScreenDevices() returns.
-//
-// NOTE: The GraphicsDevice order in the array is specific to the local
-// site and display system.
-//
-(NewScreen topleft 0)
-(NewScreen topright 1)
-(NewScreen bottomleft 3)
-(NewScreen bottomright 2)
-
-// Set the available image areas for full screens. This is important when
-// precise scaling between objects in the virtual world and their projections
-// into the physical world is desired through use of explicit ScreenScale view
-// attributes. The defaults are 0.365 meters for width and 0.292 meters for
-// height.
-//
-(ScreenAttribute topleft PhysicalScreenWidth 0.912)
-(ScreenAttribute topleft PhysicalScreenHeight 0.680)
-
-(ScreenAttribute topright PhysicalScreenWidth 0.912)
-(ScreenAttribute topright PhysicalScreenHeight 0.680)
-
-(ScreenAttribute bottomleft PhysicalScreenWidth 0.912)
-(ScreenAttribute bottomleft PhysicalScreenHeight 0.685)
-
-(ScreenAttribute bottomright PhysicalScreenWidth 0.912)
-(ScreenAttribute bottomright PhysicalScreenHeight 0.685)
-
-
-// Specify full screen windows.
-//
-(ScreenAttribute topleft WindowSize NoBorderFullScreen)
-(ScreenAttribute topright WindowSize NoBorderFullScreen)
-(ScreenAttribute bottomleft WindowSize NoBorderFullScreen)
-(ScreenAttribute bottomright WindowSize NoBorderFullScreen)
-
-// Set the TrackerBaseToImagePlate transforms for these screens. This
-// transforms points in tracker base coordinates to each screen's image plate
-// coordinates, where the origin of the image plate is defined to be the lower
-// left corner of the screen with X increasing to the right, Y increasing to
-// the top, and Z increasing away from the screen.
-//
-// Without head or sensor tracking the tracker base is still needed as a point
-// of reference for describing the orientation and position of each screen to
-// the others. The coexistence to tracker base transform is set to identity by
-// default, so the tracker base origin and orientation will also set the origin
-// and orientation of coexistence coordinates in the physical world.
-//
-// The tracker base and center of coexistence are set here to the center of the
-// 2x2 array with its basis vectors aligned to image plate coordinates.
-//
-(ScreenAttribute topleft TrackerBaseToImagePlate
- (Translate 0.912 0.000 0.0))
-(ScreenAttribute topright TrackerBaseToImagePlate
- (Translate 0.000 0.000 0.0))
-(ScreenAttribute bottomleft TrackerBaseToImagePlate
- (Translate 0.912 0.685 0.0))
-(ScreenAttribute bottomright TrackerBaseToImagePlate
- (Translate 0.000 0.685 0.0))
-
-// Create a view using the defined screens.
-//
-(NewView view0)
-(ViewAttribute view0 Screen topleft)
-(ViewAttribute view0 Screen topright)
-(ViewAttribute view0 Screen bottomleft)
-(ViewAttribute view0 Screen bottomright)
-
-// Set the screen scale. This is scale factor from virtual to physical
-// coordinates. The default policy of SCALE_SCREEN_SIZE doesn't work well here
-// since in the 2x2 arrangement the individual screens are too small. The
-// explicit scale factor below assumes a normalized range of object coordinates
-// of [-1.0 .. +1.0].
-//
-(ViewAttribute view0 ScreenScalePolicy SCALE_EXPLICIT)
-(ViewAttribute view0 ScreenScale 0.912)
-
-// Set the user eye position in the display environment.
-//
-(ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 1.0))