vgp.discrete.ellipse
Class PjEllipse
- java.lang.Object
-
- jv.object.PsObject
-
- jv.project.PjProject
-
- vgp.discrete.ellipse.PjEllipse
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, PsTimeListenerIf, PsUpdateIf, PvPickListenerIf
public class PjEllipse extends PjProject
Create discrete CMC surfaces by playing billiard in an ellipse.- See Also:
- Serialized Form
- Author:
- Eike Preuß
- Version:
- 03.02.00, 1.00 created (ep)
-
-
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 PjEllipse()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidcompute()static voidcomputeBillard(double a, double b, PdVector start, PdVector dir, int numIter, PgPolygon poly)static voidcomputeEllipse(double a, double b, int numIter, PgPolygon poly)voidcomputeXRotation(PgPolygon input, int numSteps, PgElementSet output)voiddragInitial(PvPickEvent pos)Drag an arbitrary point along a geometry, point may lie inside an element.voidfixInitialPointWithA()voidfixInitialPointWithB()voidinit()Initialize and reset project, stops the running animation if any.voidpickInitial(PvPickEvent pos)Pick an arbitrary point on a geometry, point may lie inside an element.voidsetAutoFit(boolean flag)voidshowBillard()voidshowSurface()voidshowUnrolled()voidstart()Method is invoked during loading of a project in JavaView.static voidunroll(PgPolygon input, PdVector point, PgPolygon focoutput, PgPolygon polyoutput)booleanupdate(java.lang.Object event)Update the class whenever a child has changed.-
Methods inherited from class jv.project.PjProject
addDisplay, addGeometry, addGeometry, dispose, dragDisplay, dragVertex, fitDisplays, getAnimation, getDisplay, getDisplays, getGeometry, getGeometry, getNumGeometries, getParameter, getParameterInfo, getViewer, hasAnimation, hasDisplay, isEnabledAutoFit, markVertices, pickDisplay, pickVertex, removeDisplay, removeGeometries, removeGeometry, selectDisplay, selectGeometry, setAnimation, setBackColor, setBorderType, setDisplay, setEnabledAutoFit, setGeometry, setParameterInfo, setTime, 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
-
-
-
-
Method Detail
-
init
public void init()
Description copied from class:PjProjectInitialize and reset project, stops the running animation if any. Does not reset any registered display nor geometry. They must be reset individually in each subclass.
-
start
public void start()
Description copied from class:PjProjectMethod is invoked during loading of a project in JavaView.If a project has an animation object, then the animation panel is shown when the project's this start() method is invoked during loading of the project. Use
setAnimation(PsAnimation)to register an animation.If auto fit is enabled then scenery is scaled to fit in each display.
- Overrides:
startin classPjProject- See Also:
PvViewerIf.start(),PjProject.isEnabledAutoFit()
-
compute
public void compute()
-
computeEllipse
public static void computeEllipse(double a, double b, int numIter, PgPolygon poly)
-
computeBillard
public static void computeBillard(double a, double b, PdVector start, PdVector dir, int numIter, PgPolygon poly)
-
unroll
public static void unroll(PgPolygon input, PdVector point, PgPolygon focoutput, PgPolygon polyoutput)
-
computeXRotation
public void computeXRotation(PgPolygon input, int numSteps, PgElementSet output)
-
pickInitial
public void pickInitial(PvPickEvent pos)
Description copied from class:PjProjectPick an arbitrary point on a geometry, point may lie inside an element. This method does nothing and must be overwritten.- Specified by:
pickInitialin interfacePvPickListenerIf- Overrides:
pickInitialin classPjProject- Parameters:
pos- Pick event issued by the display- See Also:
PvPickListenerIf
-
dragInitial
public void dragInitial(PvPickEvent pos)
Description copied from class:PjProjectDrag an arbitrary point along a geometry, point may lie inside an element. This method invokespickInitial(PvPickEvent)and should be overwritten.- Specified by:
dragInitialin interfacePvPickListenerIf- Overrides:
dragInitialin classPjProject- Parameters:
pos- Pick event issued by the display- See Also:
PvPickListenerIf
-
update
public boolean update(java.lang.Object event)
Update the class whenever a child has changed. Method is usually invoked from the children.- 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)
-
fixInitialPointWithB
public void fixInitialPointWithB()
-
fixInitialPointWithA
public void fixInitialPointWithA()
-
showBillard
public void showBillard()
-
showUnrolled
public void showUnrolled()
-
showSurface
public void showSurface()
-
setAutoFit
public void setAutoFit(boolean flag)
-
-
"