Public Member Functions | |
VisClient (VisClientPanel panel) | |
void | reset () |
void | resetValues () |
void | init () |
void | processEvent (AWTEvent e) |
void | paintGL (int w, int h) |
void | setViewpoint (Viewpoint vp, float speed) |
void | setViewpoint (Vector3f vposition, float speed) |
void | setLookAt (Vector3f position) |
void | stepViewpoint (int direction) |
boolean | saveVewpoint () |
void | animateViewpoint (boolean animate) |
Static Public Member Functions | |
static void | main (String[] args) throws Exception |
Public Attributes | |
VisClientPanel | panel |
float | timescale = 1 |
float | dt |
VisRoot | root |
VisHUD | hud |
boolean | hudEnabled = true |
VisNodeMousable | hoovered = null |
MouseViewpoint | mouseViewpoint = new MouseViewpoint() |
TransitionViewpoint | transViewpoint = null |
boolean | animateViewpoint = false |
Package Functions | |
void | coerceEvents () |
Package Attributes | |
Timer | timer = new Timer() |
List< AWTEvent > | events = new LinkedList<AWTEvent>() |
List< AWTEvent > | oldEvents = new LinkedList<AWTEvent>() |
List< Viewpoint > | history = new ArrayList<Viewpoint>() |
int | viewpointIndex = -1 |
float | timeSinceVpSave = 0 |
AWTEvent | lastDragEvent = null |
Definition at line 31 of file VisClient.java.
org.hfbk.vis.VisClient.VisClient | ( | VisClientPanel | panel | ) |
void org.hfbk.vis.VisClient.reset | ( | ) |
reset the client to its clear state. the just started VisClient usually adds some welcome visuals that are not reconstructed here.
Definition at line 74 of file VisClient.java.
References org.hfbk.vis.visnode.VisRoot.add(), org.hfbk.vis.Viewpoint.angle, org.hfbk.vis.VisClient.animateViewpoint, org.hfbk.vis.visnode.VisNode.close(), org.hfbk.vis.Viewpoint.forward(), org.hfbk.vis.VisClient.history, org.hfbk.vis.VisClient.hud, org.hfbk.vis.MouseViewpoint.keys, org.hfbk.vis.VisClient.mouseViewpoint, org.hfbk.vis.VisClient.panel, org.hfbk.vis.VisClient.root, and org.hfbk.vis.VisClient.transViewpoint.
Referenced by org.hfbk.vis.VisClient.init(), and org.hfbk.vis.VisTests.main().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.resetValues | ( | ) |
Definition at line 103 of file VisClient.java.
References org.hfbk.vis.Viewpoint.fov, org.hfbk.vis.VisClient.mouseViewpoint, and org.hfbk.vis.VisClient.timescale.
void org.hfbk.vis.VisClient.init | ( | ) |
does initalisation.
some startup visuals are added. reset() is called, which adds visuals too. however, reset() is called also by user reset request so it should provide some empty space.
Definition at line 115 of file VisClient.java.
References org.hfbk.vis.visnode.VisRoot.add(), org.hfbk.vis.VisClient.reset(), and org.hfbk.vis.VisClient.root.
Referenced by org.hfbk.vis.VisClientPanel.initGL().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.processEvent | ( | AWTEvent | e | ) |
override AWTs event processing to scoop events for send them to the 3d world as well.
Definition at line 128 of file VisClient.java.
References org.hfbk.vis.MouseViewpoint.drag, org.hfbk.vis.VisClient.events, org.hfbk.vis.MouseViewpoint.handleEvent(), org.hfbk.vis.VisClient.lastDragEvent, and org.hfbk.vis.VisClient.mouseViewpoint.
Referenced by org.hfbk.vis.VisClientPanel.processEvent().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.paintGL | ( | int | w, | |
int | h | |||
) |
main rendering and event processing.
this works as follows: -we measure the time since last frame to update movements -we init the 3d viewport -we apply the camera (maybe an animated one) -we render and event process the root node VisRoot, which recursively renders the whole tree -we render and event process the heads up display -we filter events (see below) -we process viewpoint events
AWT input events are never consumed by VisNodes as in one frame processing the correct target cannot be determinated (visuals maybe overlapping!). they are folowed up by VisEvents when the correct target is determined. after all we clean up all AWT events and let the VisEvents enter the next frame to get processed.
Definition at line 162 of file VisClient.java.
References org.hfbk.vis.VisClient.animateViewpoint, org.hfbk.vis.TransitionViewpoint.checkArrived(), org.hfbk.vis.VisClient.coerceEvents(), org.hfbk.vis.VisClient.dt, org.hfbk.vis.VisClient.events, org.hfbk.vis.MouseViewpoint.handleEvent(), org.hfbk.vis.VisClient.hud, org.hfbk.vis.VisClient.mouseViewpoint, org.hfbk.vis.Viewpoint.moving, org.hfbk.vis.visnode.VisHUD.notifyUser(), org.hfbk.vis.VisClient.oldEvents, org.hfbk.vis.visnode.VisHUD.render(), org.hfbk.vis.visnode.VisNode.render(), org.hfbk.vis.MouseViewpoint.render(), org.hfbk.vis.TransitionViewpoint.render(), org.hfbk.vis.VisClient.root, org.hfbk.vis.VisClient.saveVewpoint(), org.hfbk.vis.Viewpoint.set(), org.hfbk.vis.VisClient.stepViewpoint(), org.hfbk.vis.VisClient.timer, org.hfbk.vis.VisClient.timescale, org.hfbk.vis.VisClient.timeSinceVpSave, and org.hfbk.vis.VisClient.transViewpoint.
Referenced by org.hfbk.vis.VisClientPanel.paintGL().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.coerceEvents | ( | ) | [package] |
remove double events of continous type (mouse move & drag)
Definition at line 225 of file VisClient.java.
References org.hfbk.vis.VisClient.events, org.hfbk.vis.VisClient.lastDragEvent, org.hfbk.vis.VisClient.mouseViewpoint, and org.hfbk.vis.Viewpoint.moving.
Referenced by org.hfbk.vis.VisClient.paintGL().
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.setViewpoint | ( | Viewpoint | vp, | |
float | speed | |||
) |
set viewpoint softly to given vp
if we are currently in a transition we interrupt it and continue from current position.
Definition at line 238 of file VisClient.java.
References org.hfbk.vis.VisClient.mouseViewpoint, org.hfbk.vis.Viewpoint.set(), and org.hfbk.vis.VisClient.transViewpoint.
Referenced by org.hfbk.vis.visnode.VisRoot.create(), org.hfbk.vis.visnode.VisRoot.fetch(), org.hfbk.vis.Allesfresser.friss(), org.hfbk.vis.visnode.VisKeyword.handleEvent(), org.hfbk.vis.visnode.Automator.renderSelf(), org.hfbk.vis.VisClient.setLookAt(), and org.hfbk.vis.VisClient.setViewpoint().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.setViewpoint | ( | Vector3f | vposition, | |
float | speed | |||
) |
move the viewpoint to a specific position, z axis aligned
speed |
Definition at line 246 of file VisClient.java.
References org.hfbk.vis.VisClient.setViewpoint().
Here is the call graph for this function:
void org.hfbk.vis.VisClient.setLookAt | ( | Vector3f | position | ) |
level and rotate the viewpoint to look at a specific position
Definition at line 253 of file VisClient.java.
References org.hfbk.vis.VisClient.mouseViewpoint, and org.hfbk.vis.VisClient.setViewpoint().
Referenced by org.hfbk.vis.visnode.VisRoot.renderSelf().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.stepViewpoint | ( | int | direction | ) |
step for/backward in the viewpoint list.
direction | -1 for back, 1 for forward. |
Definition at line 274 of file VisClient.java.
References org.hfbk.vis.VisClient.history, org.hfbk.vis.VisClient.mouseViewpoint, org.hfbk.vis.Viewpoint.set(), org.hfbk.vis.VisClient.transViewpoint, and org.hfbk.vis.VisClient.viewpointIndex.
Referenced by org.hfbk.vis.VisClient.animateViewpoint(), and org.hfbk.vis.VisClient.paintGL().
Here is the call graph for this function:
Here is the caller graph for this function:
boolean org.hfbk.vis.VisClient.saveVewpoint | ( | ) |
save the current viewpoint to our list
Definition at line 290 of file VisClient.java.
References org.hfbk.vis.Viewpoint.clone(), org.hfbk.vis.Viewpoint.equals(), org.hfbk.vis.VisClient.history, and org.hfbk.vis.VisClient.mouseViewpoint.
Referenced by org.hfbk.vis.VisClient.paintGL(), and org.hfbk.vis.visnode.VisHUD.VisHUD().
Here is the call graph for this function:
Here is the caller graph for this function:
void org.hfbk.vis.VisClient.animateViewpoint | ( | boolean | animate | ) |
set viewpoint animation on/off. if enabled, the camera softly fly through all saved viewpoints. if there are not eough saved vp's, animateViewpoint stays false.
if | to animate |
Definition at line 305 of file VisClient.java.
References org.hfbk.vis.VisClient.animateViewpoint, org.hfbk.vis.VisClient.history, org.hfbk.vis.VisClient.mouseViewpoint, org.hfbk.vis.Viewpoint.set(), org.hfbk.vis.VisClient.stepViewpoint(), and org.hfbk.vis.VisClient.transViewpoint.
Here is the call graph for this function:
static void org.hfbk.vis.VisClient.main | ( | String[] | args | ) | throws Exception [static] |
start a whole vis/client! This only load some globals and opens a VisClientWindow, which will create a VisClientPanel and that a VisClient.
args |
Exception |
Definition at line 324 of file VisClient.java.
Timer org.hfbk.vis.VisClient.timer = new Timer() [package] |
float org.hfbk.vis.VisClient.timescale = 1 |
Definition at line 38 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.visnode.VisHUD.renderSelf(), and org.hfbk.vis.VisClient.resetValues().
time since last frame
Definition at line 40 of file VisClient.java.
Referenced by org.hfbk.vis.VisTests.fps(), org.hfbk.vis.visnode.VisRiver.heightMap(), org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.visnode.VisHUD.render(), org.hfbk.vis.visnode.VisVideo.renderSelf(), org.hfbk.vis.visnode.VisUeberwach.VisSonar.renderSelf(), org.hfbk.vis.visnode.VisUeberwach.VisTrack.renderSelf(), org.hfbk.vis.visnode.VisRoute.renderSelf(), org.hfbk.vis.visnode.VisImagefield.renderSelf(), org.hfbk.vis.visnode.VisHUD.renderSelf(), org.hfbk.vis.visnode.VisHeightfield.renderSelf(), org.hfbk.vis.visnode.VisBit.renderSelf(), and org.hfbk.vis.visnode.Automator.renderSelf().
List<AWTEvent> org.hfbk.vis.VisClient.events = new LinkedList<AWTEvent>() [package] |
3d space event queue
Definition at line 43 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.coerceEvents(), org.hfbk.vis.VisClient.paintGL(), and org.hfbk.vis.VisClient.processEvent().
List<AWTEvent> org.hfbk.vis.VisClient.oldEvents = new LinkedList<AWTEvent>() [package] |
root of visual 3d nodes
Definition at line 46 of file VisClient.java.
Referenced by org.hfbk.vis.VisClientWindow.buildUI(), org.hfbk.vis.Allesfresser.friss(), org.hfbk.vis.Allesfresser.frissFile(), org.hfbk.vis.visnode.VisFilesys.VisCallBall.handleEvent(), org.hfbk.vis.VisClient.init(), org.hfbk.vis.VisTests.main(), org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.UdpListener.parseMsg(), org.hfbk.vis.visnode.VisHUD.render(), org.hfbk.vis.VisClient.reset(), org.hfbk.vis.VisClientScripter.VisClientScripter(), and org.hfbk.vis.visnode.VisHUD.VisHUD().
hud overlay for gui and 2d viewers
Definition at line 49 of file VisClient.java.
Referenced by org.hfbk.vis.visnode.VisVideoImage.handleEvent(), org.hfbk.vis.visnode.VisImage.handleEvent(), org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.visnode.Automator.renderSelf(), and org.hfbk.vis.VisClient.reset().
boolean org.hfbk.vis.VisClient.hudEnabled = true |
Definition at line 50 of file VisClient.java.
Referenced by org.hfbk.vis.visnode.VisHUD.renderChildren(), and org.hfbk.vis.visnode.Screenshooter.renderSelf().
Definition at line 52 of file VisClient.java.
Referenced by org.hfbk.vis.visnode.VisNodeMousable.handleEvents(), and org.hfbk.vis.visnode.VisHUD.VisHUD().
List<Viewpoint> org.hfbk.vis.VisClient.history = new ArrayList<Viewpoint>() [package] |
Definition at line 55 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.animateViewpoint(), org.hfbk.vis.VisClient.reset(), org.hfbk.vis.VisClient.saveVewpoint(), and org.hfbk.vis.VisClient.stepViewpoint().
int org.hfbk.vis.VisClient.viewpointIndex = -1 [package] |
the user controlled viewpoint
Definition at line 58 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.animateViewpoint(), org.hfbk.vis.VisClient.coerceEvents(), org.hfbk.vis.Allesfresser.friss(), org.hfbk.vis.Allesfresser.frissFile(), org.hfbk.vis.visnode.VisNodeMousable.handleEvents(), org.hfbk.vis.VisTests.main(), org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.UdpListener.parseMsg(), org.hfbk.vis.VisClient.processEvent(), org.hfbk.vis.BirdsEye.render(), org.hfbk.vis.VisClient.reset(), org.hfbk.vis.VisClient.resetValues(), org.hfbk.vis.VisClient.saveVewpoint(), org.hfbk.vis.VisClient.setLookAt(), org.hfbk.vis.VisClient.setViewpoint(), org.hfbk.vis.VisClient.stepViewpoint(), org.hfbk.vis.VisClientScripter.VisClientScripter(), and org.hfbk.vis.visnode.VisRoot.visualiseTree().
current transition between two viepoints if any
Definition at line 60 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.animateViewpoint(), org.hfbk.vis.VisTests.main(), org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.visnode.Automator.renderSelf(), org.hfbk.vis.VisClient.reset(), org.hfbk.vis.VisClient.setViewpoint(), org.hfbk.vis.VisClient.stepViewpoint(), and org.hfbk.vis.VisTests.waitTransition().
boolean org.hfbk.vis.VisClient.animateViewpoint = false |
Definition at line 61 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.animateViewpoint(), org.hfbk.vis.VisClient.paintGL(), org.hfbk.vis.VisClient.reset(), and org.hfbk.vis.visnode.VisHUD.VisHUD().
float org.hfbk.vis.VisClient.timeSinceVpSave = 0 [package] |
AWTEvent org.hfbk.vis.VisClient.lastDragEvent = null [package] |
Definition at line 123 of file VisClient.java.
Referenced by org.hfbk.vis.VisClient.coerceEvents(), and org.hfbk.vis.VisClient.processEvent().