Class MyProject
- java.lang.Object
-
- jv.object.PsObject
-
- jv.project.PjProject
-
- vgp.tutor.firstProject.MyProject
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, PsTimeListenerIf, PsUpdateIf, PvPickListenerIf
public class MyProject extends PjProject
Demo project for working with JavaView projects and for subclassing of PgElementSet. This sample project shows how to handle timer events and supplies an own computation method for creating the coordinates of an (animated) surface.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 circumstances, similar to a class. In fact, a project is a subclass of
jv.project.PjProjectwhich 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
PsAnimationis 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 methodsetTime(PsTimeEvent)of this project.- See Also:
PsAnimation,PgElementSet,PjProject, Serialized Form- Author:
- Konrad Polthier
- Version:
- 25.02.01, 1.51 revised (kp) Obsolete call to method setAnimation() removed.
28.11.00, 1.50 revised (kp) Applet simplified for beginners.
05.08.99, 1.00 created (kp)
-
-
Field Summary
-
Fields inherited from class jv.object.PsObject
HAS_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 Summary
Constructors Constructor and Description MyProject()Constructor, without arguments to allow loading of project from menu.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidinit()Do initialization of data structures; method is also used to reset instances.booleansetTime(PsTimeEvent timeEvent)Method is called from animation(-panel) whenever time has changed since this project is registered as dynamic object in the animation.voidstart()Start project, e.g. start an animation.booleanupdate(java.lang.Object event)Update method of project to react on changes in its panel or of its children.-
Methods inherited from class jv.project.PjProject
addDisplay, addGeometry, addGeometry, dispose, dragDisplay, dragInitial, dragVertex, fitDisplays, getAnimation, getDisplay, getDisplays, getGeometry, getGeometry, getNumGeometries, getParameter, getParameterInfo, getViewer, hasAnimation, hasDisplay, isEnabledAutoFit, markVertices, pickDisplay, pickInitial, pickVertex, removeDisplay, removeGeometries, removeGeometry, selectDisplay, selectGeometry, setAnimation, setBackColor, setBorderType, setDisplay, setEnabledAutoFit, setGeometry, setParameterInfo, setViewer, stop, unmarkVertices
-
Methods inherited from class jv.object.PsObject
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
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jv.anim.PsTimeListenerIf
getName
-
Methods inherited from interface jv.project.PvPickListenerIf
getName
-
-
-
-
Constructor Detail
-
MyProject
public MyProject()
Constructor, without arguments to allow loading of project from menu.
-
-
Method Detail
-
init
public void init()
Do initialization of data structures; method is also used to reset instances.
-
start
public void start()
Start project, e.g. start an animation. Method is called once when project is selected in PvViewer#selectProject(). Method is optional. For example, if an applet calls the start() method of PvViewer, then PvViewer tries to invoke the start() method of the currently selected project.- Overrides:
startin classPjProject- See Also:
PvViewerIf.start(),PjProject.isEnabledAutoFit()
-
setTime
public 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. Method is optional, but allows a project to update geometry to new current time.- Specified by:
setTimein interfacePsTimeListenerIf- Overrides:
setTimein classPjProject
-
update
public boolean update(java.lang.Object event)
Update method of project to react on changes in its panel or of its children. This method is optional, but required if project is parent of a child. Project becomes parent if child callschild.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.
- Specified by:
updatein interfacePsUpdateIf- Overrides:
updatein classPsObject- Parameters:
event- carries a lot of information- Returns:
- true if event has been handled, otherwise false
- See Also:
PsObject.setParent(PsUpdateIf),PsObject.getFather(),PsObject.addUpdateListener(PsUpdateIf)
-
-
"