1 package tim.prune.threedee;
3 import javax.swing.JFrame;
6 * Factory class for getting a Window
8 public abstract class WindowFactory
10 private static Java3DWindow _window = null;
14 * @param inFrame parent frame
15 * @return object if available, otherwise null
17 public static ThreeDWindow getWindow(JFrame inFrame)
19 if (isJava3dEnabled())
21 if (_window == null) {
22 _window = new Java3DWindow(inFrame);
34 * @return true if 3d capability is installed
36 public static boolean isJava3dEnabled()
38 boolean has3d = false;
41 Class<?> universeClass = Class.forName("com.sun.j3d.utils.universe.SimpleUniverse");
42 has3d = (universeClass != null);
44 catch (ClassNotFoundException e)
46 // no java3d classes available
48 catch (NoClassDefFoundError nfe)
50 // no java3d classes available
52 catch (UnsatisfiedLinkError ule)
54 // java3d classes found but no native components