|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
|
+--java.awt.Component
|
+--java.awt.Container
|
+--java.awt.Panel
|
+--java.applet.Applet
|
+--edu.davidson.tools.SApplet
|
+--animator4.Animator
Animator is part of the Davidson College Physlets project. It is designed to animate shapes or images on the screen. Objects can move along a predefined trajectory or in response to a force.
The following embedding parameters are defined:
| Parameter | Value | Description |
|---|---|---|
| FPS | 10 | Frames per second. |
| dt | 0.1 | Animation time step per frame. |
| ShowControls | true | Show VCR buttons at bottom of applet. |
| GridUnit | 1.0 | The grid spacing. A value of 0 will suppress the grid. |
| PixPerUnit | 10 | Conversion factor from pixel units to world units. |
Various objects in Animator implement the data source interface. This interface, SDataSource, enables inter-applet data passing between Physlets.
| Object | Identifier | Variables |
|---|---|---|
| images | id=addImage(String file,String xStr,String yStr) | t, x, y, vx, vy, ax, ay, m |
| All shapes: circle, rectangle, box, arrow, etc. | The id is returned when an object is created using an add method. | t, x, y, vx, vy, ax, ay, m |
| clock | id=getClockID() | t |
| ensemble | id=getEnsembleID() | t, xcm, ycm, px, py , m , ke |
| Fields inherited from class edu.davidson.tools.SApplet |
clock, dataConnections, dataListeners, dataSources, lock |
| Fields inherited from class java.awt.Component |
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| Fields inherited from interface java.awt.image.ImageObserver |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
Animator()
|
|
| Method Summary | |
int |
addObject(java.lang.String name,
java.lang.String parList)
Create an object and add it to the Physlet. |
void |
forward()
Start the animation. |
double |
getAnimationTime()
Get the animation time. |
java.lang.String |
getAppletInfo()
|
int |
getEnsembleID()
Get the id for the ensemble of objects. |
double |
getFx(int id)
Get the x component of the force acting on an object. |
double |
getFy(int id)
Get the y component of the force acting an object. |
double |
getH(int id)
Get the height of an object. |
java.lang.String |
getParameter(java.lang.String key,
java.lang.String def)
|
java.lang.String[][] |
getParameterInfo()
|
double |
getVX(int id)
Get the x component of an object's velocity. |
double |
getVY(int id)
Get the y component of an object's velocity. |
double |
getW(int id)
Get the width of an object. |
double |
getX(int id)
Get the x position of an object. |
double |
getY(int id)
Get the y position of an object. |
void |
init()
|
static void |
main(java.lang.String[] args)
|
void |
pause()
Pause the animation. |
void |
reset()
Clear data from all dataConnections and reset the animation time to 0. |
void |
reverse()
Reverse the direction of the time step in the animation. |
boolean |
setAnimationSlave(int masterID,
int slaveID)
Force an object to follow another object on the screen. |
void |
setAnimationTime(double time)
Set the animation time. |
void |
setAutoRefresh(boolean auto)
Force the applet to repaint whenever any object changes its properties. |
boolean |
setBouncy(int id,
boolean bounce)
Make the object bouncy. |
int |
setCaption(java.lang.String s)
Add a caption to the applet. |
void |
setCollisionMessage(java.lang.String msg)
Display a message in the yellow message box. |
boolean |
setConstrainR(int id,
double r,
double x,
double y)
Constrain the motion of the test charges to a circular path. |
boolean |
setConstrainX(int id,
double x,
double min,
double max)
Constrain the motion of the test charges to a path of constant x. |
boolean |
setConstrainY(int id,
double y,
double min,
double max)
Constrain the motion of the test charges to a path of constant y. |
boolean |
setCoordinateOffset(int id,
int xOff,
int yOff)
Offset the object's coordinates on the screen. |
void |
setDampOnMousePressed(boolean damp)
Set the velocity of an object to zero if it is being dragged. |
void |
setDefault()
Set default values and deletes all data connections. |
boolean |
setDisplayOffset(int id,
int xOff,
int yOff)
Offset the object's position on the screen from its default drawing position. |
boolean |
setDragable(int id,
boolean canDrag)
Make the object with the given id dragable. |
boolean |
setFont(int id,
java.lang.String family,
int style,
int size)
change the object's font for any text4 that is displayed. |
boolean |
setFootPrints(int id,
int n)
Set the trail to leave footprints as the charge moves. |
boolean |
setForce(int id,
java.lang.String fxStr,
java.lang.String fyStr,
double x0,
double y0,
double vx0,
double vy0)
Set the Force on a particle. |
boolean |
setFormat(int id,
java.lang.String fstr)
Change the object's format for the display of numeric data. |
boolean |
setGhost(int id,
boolean ghost)
Have the charge draw ghost images as it moves. |
void |
setGridUnit(double gu)
Set the grid spacing in world, i.e., not pixel, units. |
boolean |
setH(int id,
double h)
Change the height of an object. |
boolean |
setLabel(int id,
java.lang.String label)
Make the object label. |
boolean |
setMass(int id,
double m)
Set the mass of an object. |
void |
setMessage(java.lang.String msg)
Display a message in the yellow message box. |
void |
setOneShot(double min,
double max,
java.lang.String msg)
Set the applet to run for a fixed interval, stop, and display a message. |
boolean |
setOnScreenSize(int id,
int size)
Set a size parameter for an object. |
boolean |
setPaintBeforeGrid(int id,
boolean before)
Have the object draw itself before the grid is drawn. |
void |
setPixPerUnit(int pu)
Set the pixels per unit. |
boolean |
setReferenceFrame(int id)
Set the reference frame. |
boolean |
setResizable(int id,
boolean isResizable)
Make an object resizable. |
boolean |
setRGB(int id,
int r,
int g,
int b)
Set the color of an object. |
void |
setShapeRGB(int r,
int g,
int b)
Set the red, green, and blue color values for all subsequent drawing. |
boolean |
setShowAComponents(int id,
boolean show)
Have the object show its acceleration components. |
boolean |
setShowAVector(int id,
boolean show)
Have the object show its acceleration vector. |
boolean |
setShowConstraintPath(int id,
boolean sc)
Show the objects trajectory constraint if it exists. |
boolean |
setShowCoordinates(int id,
boolean show)
Have the object show its coordinates on screen. |
boolean |
setShowFComponents(int id,
boolean show)
Have the object show its force components. |
boolean |
setShowFVector(int id,
boolean show)
Have the object show its force vector. |
boolean |
setShowVComponents(int id,
boolean show)
Have the object show its velocity components. |
boolean |
setShowVVector(int id,
boolean show)
Have the object show its velocity vector. |
int |
setSketchMode(boolean sketch)
Enable sketching with the mouse. |
boolean |
setSpeed(int id,
double speed)
Change the speed of an object. |
boolean |
setSticky(int id,
boolean sticky)
Make the object sticky. |
void |
setTimeContinuous()
Let the animation time increase indefinitely. |
void |
setTimeCycle(double max)
Set a time loop for the animation from 0 to max. |
void |
setTimeDisplay(boolean show)
Enable the time display in the applet window. |
void |
setTimeInterval(double min,
double max)
Set a time loop for the animation. |
void |
setTimeOneShot(double max,
java.lang.String msg)
Run the simulaiton one time. |
void |
setTimeVisibility(boolean visible)
Enable the time display in the applet window. |
void |
setTolerance(double tol)
Set the tolerance of the ODE solver. |
boolean |
setTrail(int id,
int n)
Enable an object to display its path as it moves. |
boolean |
setTrajectory(int id,
java.lang.String xStr,
java.lang.String yStr)
Set the trajectory of an object on the screen. |
boolean |
setVisibility(int id,
boolean show)
Show the visibility of the object. |
boolean |
setVX(int id,
double vx)
Change the x component of the speed of an object. |
boolean |
setVY(int id,
double vy)
Change the y component of an object's velocity. |
boolean |
setW(int id,
double w)
Change the width of an object. |
boolean |
setX(int id,
double x)
Change the x of an object. |
boolean |
setXY(int id,
double x,
double y)
Change the x and y of an object. |
boolean |
setY(int id,
double y)
Change the y of an object. |
void |
shiftPixOrigin(int xo,
int yo)
Shift the origin for all drawing. |
void |
start()
|
void |
stepBack()
|
void |
stepForward()
|
void |
stepTimeBack()
Step the time backward by dt. |
void |
stepTimeForward()
Step the time by dt. |
void |
stop()
|
boolean |
swapZOrder(int id1,
int id2)
Swap the drawing order on the screen. |
| Methods inherited from class java.applet.Applet |
getAccessibleContext, getAppletContext, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus |
| Methods inherited from class java.awt.Panel |
addNotify |
| Methods inherited from class java.awt.Container |
add, add, add, add, add, addContainerListener, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, remove, remove, removeAll, removeContainerListener, removeNotify, setFont, setLayout, update, validate |
| Methods inherited from class java.awt.Component |
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, disable, dispatchEvent, enable, enable, enableInputMethods, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getInputContext, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public Animator()
| Method Detail |
public int addObject(java.lang.String name,
java.lang.String parList)
addObject ("circle", "x = 0, y = -1.0, r = 10");
name - the type of object to be created.parList - a list of parameters to be setdouble id of the objectpublic void forward()
forward in class SAppletpublic double getAnimationTime()
public java.lang.String getAppletInfo()
getAppletInfo in class java.applet.Appletpublic int getEnsembleID()
public double getFx(int id)
id - The id of the object.public double getFy(int id)
id - The id of the object.public double getH(int id)
id - the object identifier
public java.lang.String getParameter(java.lang.String key,
java.lang.String def)
public java.lang.String[][] getParameterInfo()
getParameterInfo in class java.applet.Appletpublic double getVX(int id)
id - The id of the object.public double getVY(int id)
id - The id of the object.public double getW(int id)
id - The id of the object.public double getX(int id)
id - The id of the object.public double getY(int id)
id - the object identifierpublic void init()
init in class java.applet.Appletpublic static void main(java.lang.String[] args)
public void pause()
pause in class SAppletpublic void reset()
reset in class SAppletsetAnimationTime(double)public void reverse()
reverse in class SApplet
public boolean setAnimationSlave(int masterID,
int slaveID)
masterID - The id of the master object.slaveID - The id of the slave object.public void setAnimationTime(double time)
time - The new time displayed inside the applet.public void setAutoRefresh(boolean auto)
setAutoRefresh in class SAppletauto - The id of the object.
public boolean setBouncy(int id,
boolean bounce)
id - of the object.true - if bouncypublic int setCaption(java.lang.String s)
The - caption.public void setCollisionMessage(java.lang.String msg)
msg - Message to display after the animation stops.
public boolean setConstrainR(int id,
double r,
double x,
double y)
r - The r value.x - The x coordinate of the centery - The y coordinate of the center
public boolean setConstrainX(int id,
double x,
double min,
double max)
x - The x value.xmin - The minimum value of the range.xmax - The maximum value of the range.
public boolean setConstrainY(int id,
double y,
double min,
double max)
y - The y value.ymin - The minimum value of the range.ymax - The maximum value of the range.
public boolean setCoordinateOffset(int id,
int xOff,
int yOff)
id - The id of the object.xoff - The x offset.yoff - The y offset.public void setDampOnMousePressed(boolean damp)
damp - the velocity?public void setDefault()
setDefault in class SApplet
public boolean setDisplayOffset(int id,
int xOff,
int yOff)
id - The id of the object.xoff - The x offset.yoff - The y offset.
public boolean setDragable(int id,
boolean canDrag)
id - of the object.canDrag - Is the object dragable?true if successful false otherwise
public boolean setFont(int id,
java.lang.String family,
int style,
int size)
id - The id of the object.family - The font family: Helvetica, Times.style - The style, 0=plain, 1=bold.size - The size of the font;
public boolean setFootPrints(int id,
int n)
id - The id of the object.n - The number of points to skip between trail
footprints or ghost images.
public boolean setForce(int id,
java.lang.String fxStr,
java.lang.String fyStr,
double x0,
double y0,
double vx0,
double vy0)
id - The ID of the pole.fxStr - A function of t, x, y, vx, vy, ax, ay, m.fyStr - A function of t, x, y, vx, vy, ax, ay, m.x0 - The initial value for x.y0 - The initial value for y.vx0 - The initial value for vx.vy0 - The initial value for vy.
public boolean setFormat(int id,
java.lang.String fstr)
id - The id of the object.fstr - the format string.
public boolean setGhost(int id,
boolean ghost)
id - The id of the object.ghost - Draw ghost?public void setGridUnit(double gu)
gu - grid unit.
public boolean setH(int id,
double h)
id - the object identifierh - new height
public boolean setLabel(int id,
java.lang.String label)
id - the id of the objectlabel - the label string
public boolean setMass(int id,
double m)
id - The id of the object.m - The new mass.public void setMessage(java.lang.String msg)
msg - Message to display after the animation stops.
public void setOneShot(double min,
double max,
java.lang.String msg)
min - The starting time value for the loopmax - The ending time for the loop.msg - Message to display after the animation stops.setTimeContinuous(),
setTimeInterval(double, double)
public boolean setOnScreenSize(int id,
int size)
id - The ID of the object.size - The size of the object.
public boolean setPaintBeforeGrid(int id,
boolean before)
id - The id of the object.before - Paint before grid?public void setPixPerUnit(int pu)
pu - pixels per unit.public boolean setReferenceFrame(int id)
id - the object from which the motion will be observed
return true if successful
public boolean setResizable(int id,
boolean isResizable)
id - the ID of the object.resizable - propertytrue if successful.
public boolean setRGB(int id,
int r,
int g,
int b)
id - The id of the object.r - redg - greenb - blue
public void setShapeRGB(int r,
int g,
int b)
r - red.g - green.b - blue.
public boolean setShowAComponents(int id,
boolean show)
id - The id of the object.show - Show the acceleration?
public boolean setShowAVector(int id,
boolean show)
id - The id of the object.show - Show the acceleration?
public boolean setShowConstraintPath(int id,
boolean sc)
sc - Show the path?
public boolean setShowCoordinates(int id,
boolean show)
id - The id of the object.show - Show the coordinates?
public boolean setShowFComponents(int id,
boolean show)
id - The id of the object.show - Show the force?
public boolean setShowFVector(int id,
boolean show)
id - The id of the object.show - Show the force?
public boolean setShowVComponents(int id,
boolean show)
id - The id of the object.show - Show the velocity?
public boolean setShowVVector(int id,
boolean show)
id - The id of the object.show - Show the velocity?public int setSketchMode(boolean sketch)
sketch - true will sketch
public boolean setSpeed(int id,
double speed)
id - The id of the object.speed - new speed
public boolean setSticky(int id,
boolean sticky)
id - of the object.sticky - Sticky?public void setTimeContinuous()
setTimeContinuous in class SAppletsetTimeOneShot(double, java.lang.String),
setTimeInterval(double, double),
setOneShot(double, double, java.lang.String)public void setTimeCycle(double max)
setTimeCycle in class SAppletmax - The ending time for the loop.setTimeContinuous(),
setOneShot(double, double, java.lang.String),
setTimeInterval(double, double)public void setTimeDisplay(boolean show)
show - boolean Show the time?
public void setTimeInterval(double min,
double max)
min - The starting time value for the loopmax - The ending time for the loop.setTimeContinuous(),
setOneShot(double, double, java.lang.String)
public void setTimeOneShot(double max,
java.lang.String msg)
setTimeOneShot in class SAppletmax - Reset the simulation to t=0 when t>=max and stop the simulation.string - the message to be displayed on the screen when the max time is reached.public void setTimeVisibility(boolean visible)
boolean - Show the time?public void setTolerance(double tol)
tol - the tolerance
public boolean setTrail(int id,
int n)
id - The id of the object.n - Number of points in trail. n=0 disables the trail.
public boolean setTrajectory(int id,
java.lang.String xStr,
java.lang.String yStr)
id - The ID of the thing.xStr - The function x(t).yStr - The function y(t).
public boolean setVisibility(int id,
boolean show)
show - true will show object on screentrue if successful false otherwise
public boolean setVX(int id,
double vx)
id - The id of the object.vx - new vx
public boolean setVY(int id,
double vy)
id - The id of the object.speed - new vy
public boolean setW(int id,
double w)
id - the object identifierw - new width
public boolean setX(int id,
double x)
id - The id of the object.x - new x value
public boolean setXY(int id,
double x,
double y)
id - The id of the object.x - new x valuey - new y value
public boolean setY(int id,
double y)
id - The id of the object.y - new postion
public void shiftPixOrigin(int xo,
int yo)
xo - x pixel shift.yo - y pixel shift.public void start()
start in class java.applet.Appletpublic void stepBack()
public void stepForward()
public void stepTimeBack()
stepTimeBack in class SAppletSApplet.setDt(double)public void stepTimeForward()
stepTimeForward in class SAppletSApplet.setDt(double)public void stop()
stop in class java.applet.Applet
public boolean swapZOrder(int id1,
int id2)
id1 - The first id of a screen object.id2 - The second id of a screen object.
|
Copyright Wolfgang Christian | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||