public class MyProject extends PjProject
In this project a classes is embedded in a JavaView project. Nearly all applications
in JavaView are embedded into projects, each with a special functionality. Such
projects can be reused as a building blocks in other cirumstances, similar to a class.
In fact, a project is a subclass of jv.project.PjProject
which allows to manage a set of geometries, a display(s), and other projects, and
to react on animation and pick events.
This project also shows how to work with animations. Here an instance of class
PsAnimation
is created where the current project registers
itself as dynamic object to be able to receive time events. Whenever the time changes
the animation manager invokes the method setTime(PsTimeEvent)
of
this project.
PsAnimation
,
PgElementSet
,
PjProject
,
Serialized FormHAS_BOUNDARY_PANEL, HAS_CONFIG_PANEL, HAS_INFO_PANEL, HAS_LABEL_PANEL, HAS_MATERIAL_PANEL, HAS_TEXTURE_PANEL, HAS_VECTOR_PANEL, INSPECTOR_INFO, INSPECTOR_INFO_EXT, IS_DELETED, IS_FIXED, IS_FOCUSSED, IS_PICKED, IS_SELECTED, IS_USED, NUM_TAGS
Constructor and Description |
---|
MyProject()
Constructor, without arguments to allow loading of project from menu.
|
Modifier and Type | Method and Description |
---|---|
void |
init()
Do initialization of data structures; method is also used to reset instances.
|
boolean |
setTime(PsTimeEvent timeEvent)
Method is called from animation(-panel) whenever time has changed
since this project is registered as dynamic object in the animation.
|
void |
start()
Start project, e.g. start an animation.
|
boolean |
update(java.lang.Object event)
Update method of project to react on changes in its panel or of its children.
|
addDisplay, addGeometry, addGeometry, dispose, dragDisplay, dragInitial, dragVertex, fitDisplays, getAnimation, getDisplay, getDisplays, getGeometry, getGeometry, getNumGeometries, getParameter, getViewer, hasAnimation, hasDisplay, isEnabledAutoFit, markVertices, pickDisplay, pickInitial, pickVertex, removeDisplay, removeGeometries, removeGeometry, selectDisplay, selectGeometry, setAnimation, setBackColor, setBorderType, setDisplay, setEnabledAutoFit, setGeometry, setParameter, setViewer, stop, unmarkVertices
addInspector, addUpdateListener, assureInspector, clearTag, clone, clone, clone, copy, getFather, getInfoPanel, getInspector, getName, getNumObjects, getSymbol, hasInspector, hasTag, hasUpdateListener, instanceOf, instanceOf, newInspector, newInspector, removeInspector, removeInspector, removeUpdateListener, setName, setParent, setSymbol, setTag, toString, updatePanels
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
getName
getName
public MyProject()
public void init()
public void start()
start
in class PjProject
PvViewerIf.start()
,
PjProject.isEnabledAutoFit()
public boolean setTime(PsTimeEvent timeEvent)
setTime
in interface PsTimeListenerIf
setTime
in class PjProject
public boolean update(java.lang.Object event)
child.setParent(this)
with
this project as argument. For example, see the constructor of MyProject.
Project must react on child events, or forward them to its superclass.
Catch events of integer children and recompute surface.
update
in interface PsUpdateIf
update
in class PsObject
event
- carries a lot of informationPsObject.setParent(PsUpdateIf)
,
PsObject.getFather()
,
PsObject.addUpdateListener(PsUpdateIf)
"