Package org.evoludo.simulator.views
Class S3
- All Implemented Interfaces:
HasAttachHandlers
,HasHandlers
,EventListener
,HasVisibility
,IsRenderable
,IsWidget
,ProvidesResize
,RequiresResize
,AbstractGraph.Controller
,ChangeListener
,MilestoneListener
The view to display time series of data as a trajectory on the \(S_3\)
simplex.
- Author:
- Christoph Hauert
- Implementation Notes:
- Note (yet) ready for multiple species!
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractView
AbstractView.ExportCommand, AbstractView.ExportType
Nested classes/interfaces inherited from class UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
Nested classes/interfaces inherited from interface ChangeListener
ChangeListener.PendingAction
-
Field Summary
FieldsModifier and TypeFieldDescriptionThe list of graphs that display the trajectories in 2D phase planes.protected double[]
The initial state of the model.protected double[]
The current state of the model.Fields inherited from class AbstractView
engine, exportSubmenu, exportSubmenuTrigger, gCols, gRows, isActive, isLoaded, logger, MIN_MSEC_BETWEEN_UPDATES, model, restoreMenu, timestamp, type, updatetime, wrapper
Fields inherited from class UIObject
DEBUG_ID_PREFIX
-
Constructor Summary
ConstructorsConstructorDescriptionS3
(EvoLudoGWT engine) Construct a new view to display the time series data of the current EvoLudo model as a trajectory in a \(S_3\) simplex. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Allocate all graphs managed by this view.void
clear()
Clear the view.protected AbstractView.ExportType[]
Return the list of export types that are acceptable for _all_ graphs in this view.getName()
Get the name of this view.void
Called after the EvoLudo model got re-initialized.void
reset
(boolean hard) Called when a module has been reset.boolean
setInitialState
(double[] init) Notifies the controller that the user requested setting a new initial configurationinit
(optional implementation).void
unload()
Unload the view.void
update
(boolean force) Called when the view needs updating.Methods inherited from class AbstractView
activate, createWidget, deactivate, destroyGraphs, dispose, export, export, exportDataHeader, exportMeanData, exportPNG, exportStatData, exportSVG, exportTrajData, getGraphAt, getLogger, getMode, getModel, getStatus, getStatus, getType, hasLayout, isRunning, keyDownHandler, keyUpHandler, layoutComplete, load, modelChanged, modelDidReset, modelStopped, modelUnloaded, moduleRestored, moduleUnloaded, onResize, populateContextMenu, scheduleUpdate, setBounds, setMode, shift, update, zoom
Methods inherited from class Composite
claimElement, getWidget, initializeClaimedElement, initWidget, isAttached, onAttach, onBrowserEvent, onDetach, render, render, resolvePotentialElement, setWidget
Methods inherited from class Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getHandlerCount, getLayoutData, getParent, isOrWasAttached, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents
Methods inherited from class UIObject
addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface MilestoneListener
modelLoaded, modelRelaxed, modelRunning, modelSettings, moduleLoaded
-
Field Details
-
graphs
The list of graphs that display the trajectories in 2D phase planes.- Implementation Notes:
List<S3Graph> graphs
is deliberately hidingList<AbstractGraph> graphs
from the superclass because it saves a lot of ugly casting. Note that the two fields point to one and the same object.
-
state
protected double[] stateThe current state of the model. The end point of the current trajectory. -
init
protected double[] initThe initial state of the model. The start point of the current trajectory.
-
-
Constructor Details
-
S3
Construct a new view to display the time series data of the current EvoLudo model as a trajectory in a \(S_3\) simplex.- Parameters:
engine
- the pacemaker for running the model
-
-
Method Details
-
getName
Description copied from class:AbstractView
Get the name of this view. This is used to dynamically build the view selector.- Specified by:
getName
in classAbstractView
- Returns:
- the name of this view
-
allocateGraphs
protected void allocateGraphs()Description copied from class:AbstractView
Allocate all graphs managed by this view. This is called when loading the view. Once all views are attached to the browser DOM a call to the graph'scalcBounds(int, int)
is triggered throughsetBounds(int, int)
to properly calculate the layout.- Specified by:
allocateGraphs
in classAbstractView
- See Also:
-
unload
public void unload()Description copied from class:AbstractView
Unload the view. This is called when changing the module or model that implement this view. This is independent of the activation of the view.- Overrides:
unload
in classAbstractView
-
clear
public void clear()Description copied from class:AbstractView
Clear the view.- Overrides:
clear
in classAbstractView
-
reset
public void reset(boolean hard) Description copied from class:AbstractView
Called when a module has been reset. All graphs are reset and updated if needed, unlesshard
istrue
.- Overrides:
reset
in classAbstractView
- Parameters:
hard
- the flag to indicate whether to do a hard reset
-
modelDidInit
public void modelDidInit()Description copied from interface:MilestoneListener
Called after the EvoLudo model got re-initialized.- Specified by:
modelDidInit
in interfaceMilestoneListener
- Overrides:
modelDidInit
in classAbstractView
-
update
public void update(boolean force) Description copied from class:AbstractView
Called when the view needs updating. This gets called when the selected view changed or new data is available from the model. Views may ignore updating requests unlessforce
istrue
.- Specified by:
update
in classAbstractView
- Parameters:
force
-true
to force the update
-
setInitialState
public boolean setInitialState(double[] init) Description copied from interface:AbstractGraph.Controller
Notifies the controller that the user requested setting a new initial configurationinit
(optional implementation).- Parameters:
init
- the new initial configuration- Returns:
true
if the request was honoured
-
exportTypes
Description copied from class:AbstractView
Return the list of export types that are acceptable for _all_ graphs in this view.- Overrides:
exportTypes
in classAbstractView
- Returns:
- the list of viable export types
-