Flight Club


flightclub.framework3d
Class ModelViewer

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Panel
                    |
                    +--flightclub.framework3d.ModelViewer
All Implemented Interfaces:
javax.accessibility.Accessible, ClockObserver, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class ModelViewer
extends java.awt.Panel
implements ClockObserver

This is the main manager (the hub) of the framework. We have factory methods for creating other managers. Most (all?) objects hold a reference back to ModelViewer. The ModelViewer can be displayed using either a frame or an applet.

See Also:
ModelFrame, ModelApplet, Serialized Form

Nested Class Summary
 
Nested classes inherited from class java.awt.Panel
java.awt.Panel.AccessibleAWTPanel
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 CameraMan cameraMan
           
 Clock clock
           
protected  boolean debug
           
 EventManager eventManager
           
 ModelEnv modelEnv
           
 Obj3dManager obj3dManager
           
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ModelViewer()
           
 
Method Summary
protected  void addSubject(CameraSubject subj)
          Adds a camera subject to the list of subjects.
protected  void createCameraMan()
           
protected  void createClock()
           
protected  void createControls()
          Adds some buttons to the south for zooming in and out and toggling the camera subject.
protected  void createEventManager()
           
protected  void createModel()
          Creates a unit cube at the origin.
protected  void createModelCanvas()
           
protected  void createObj3dManager()
           
 boolean getDebug()
           
 void init(ModelEnv modelEnv)
           
 void start()
           
 void stop()
           
 void tick(float t, float dt)
           
 
Methods inherited from class java.awt.Panel
addNotify, getAccessibleContext
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

obj3dManager

public Obj3dManager obj3dManager

eventManager

public EventManager eventManager

cameraMan

public CameraMan cameraMan

modelEnv

public ModelEnv modelEnv

clock

public Clock clock

debug

protected boolean debug
Constructor Detail

ModelViewer

public ModelViewer()
Method Detail

init

public void init(ModelEnv modelEnv)

start

public void start()

stop

public void stop()

createClock

protected void createClock()

tick

public void tick(float t,
                 float dt)
Specified by:
tick in interface ClockObserver

createModelCanvas

protected void createModelCanvas()

createObj3dManager

protected void createObj3dManager()

createCameraMan

protected void createCameraMan()

createEventManager

protected void createEventManager()

createModel

protected void createModel()
Creates a unit cube at the origin. Override this method to create your own model. Obviously !


getDebug

public boolean getDebug()

createControls

protected void createControls()
Adds some buttons to the south for zooming in and out and toggling the camera subject. Override this method with an empty stub if you do not want any controls.


addSubject

protected void addSubject(CameraSubject subj)
Adds a camera subject to the list of subjects.


Dan Burton <danb@dircon.co.uk> | latest update: 20 Sep 2002;