UC Berkeley Group for User Interface Research
Updated November 17, 2000

edu.berkeley.guir.lib.satin.command
Class RotateCommand

java.lang.Object
  |
  +--edu.berkeley.guir.lib.satin.command.CommandImpl
        |
        +--edu.berkeley.guir.lib.satin.command.ApplyTransformationCommand
              |
              +--edu.berkeley.guir.lib.satin.command.RotateCommand
All Implemented Interfaces:
Command, SatinConstants, Serializable, UndoableEdit

public class RotateCommand
extends ApplyTransformationCommand

Rotate a GraphicalObject.

Here is an example of how to rotate (around the specified point) 1 radian on the Sheet: class MenuRotateRightListener implements ActionListener { public void actionPerformed(ActionEvent evt) { Point pt = new Point(cmdsubsys.getAbsoluteLastXLocation(), cmdsubsys.getAbsoluteLastYLocation()); cmdqueue.doCommand(new RotateCommand(TestSheet.this, 1, cmdsubsys.getAbsoluteLastXLocation(), cmdsubsys.getAbsoluteLastYLocation())); } // of actionPerformed } // inner class

Here is an example of how to rotate the selected objects (around the specified point) 1 radian: class MenuRotateSelObjRightListener implements ActionListener { public void actionPerformed(ActionEvent evt) { GraphicalObjectCollection gobs; GraphicalObject gob; Iterator it; gobs = cmdsubsys.getSelectedGraphicalObjects(); it = gobs.getForwardIterator(); while (it.hasNext()) { gob = (GraphicalObject) it.next(); cmdqueue.doCommand(new RotateCommand(gob, 1, cmdsubsys.getLocalLastXLocation(gob.getParentGroup()), cmdsubsys.getLocalLastYLocation(gob.getParentGroup()))); } } }

This software is distributed under the Berkeley Software License.

 Revisions:  - SATIN-v1.0-1.0.0, Jul 15 1999, JH
               Created class
             - SATIN-v2.1-1.0.0, Aug 11 2000, JH
               Touched for SATIN release
 

Since:
JDK 1.2
Version:
SATIN-v2.1-1.0.0, Aug 11 2000
Author:
Jason Hong ( jasonh@cs.berkeley.edu )
See Also:
Serialized Form

Inner classes inherited from class edu.berkeley.guir.lib.satin.SatinConstants
SatinConstants.ObjectPoolAffineTransform, SatinConstants.ObjectPoolPoint2D, SatinConstants.ObjectPoolPolygon2D, SatinConstants.ObjectPoolRectangle2D, SatinConstants.ObjectPoolStringBuffer, SatinConstants.UniqueAffineTransform, SatinConstants.UniquePoint2D, SatinConstants.UniquePolygon2D, SatinConstants.UniqueRectangle2D
 
Fields inherited from interface edu.berkeley.guir.lib.satin.SatinConstants
ABOVE, ALL, BAR, BELOW, clipboard, clprops, cmdqueue, cmdsubsys, CONTAINEDBY, CONTAINS, COORD_ABS, COORD_LOCAL, COORD_REL, DAMAGE_LATER, DAMAGE_NOW, DEBUG_GRAPHICS_OFFSET, DEBUG_STYLE_FILE, DEBUG_STYLE_GPROPERTY, DEEP, DEFAULT_POINT2D_POOL_SIZE, DEFAULT_POLYGON2D_POOL_SIZE, DEFAULT_RECTANGLE_POOL_SIZE, DEFAULT_REPAINT_THRESHOLD, DEFAULT_SELECT_THRESHOLD, DEFAULT_STRINGBUFFER_POOL_SIZE, DEFAULT_TRANSFORM_POOL_SIZE, DIR_CENTER, DIR_DOWN, DIR_DOWN_LEFT, DIR_DOWN_RIGHT, DIR_LEFT, DIR_RIGHT, DIR_UP, DIR_UP_LEFT, DIR_UP_RIGHT, FILTER_THRESHOLD, FIRST, FLOATING_PT_TOLERANCE, glprops, INTERSECTS, KEY_STYLE_DASHARRAY, KEY_STYLE_DASHPHASE, KEY_STYLE_DRAWCOLOR, KEY_STYLE_DRAWFONT, KEY_STYLE_DRAWTRANSPARENCY, KEY_STYLE_ENDCAP, KEY_STYLE_FILLCOLOR, KEY_STYLE_FILLTRANSPARENCY, KEY_STYLE_LINEJOIN, KEY_STYLE_LINEWIDTH, KEY_STYLE_MITERLIMIT, NEAR, NOTIFY_BOUNDS, NOTIFY_LAYER, NOTIFY_LOCATION, NOTIFY_STYLE, NOTIFY_TRANSFORM, poolPoints, poolPolys, poolRects, poolStrbuf, poolTx, rand, SATIN_DATA_DIRECTORY_DEFAULT, SATIN_DATA_DIRECTORY_GPROPERTY, SATIN_PROPERTIES_FILENAME, SHALLOW
 
Constructor Summary
RotateCommand(GraphicalObject gob, double theta)
          Rotate around the center of the specified GraphicalObject.
RotateCommand(GraphicalObject gob, double theta, double x, double y)
          Rotate around the specified point in the specified GraphicalObject's relative coordinate space (ie gob's parent coordinate space).
 
Method Summary
 String getPresentationName()
          Override this method in the subclass.
 
Methods inherited from class edu.berkeley.guir.lib.satin.command.ApplyTransformationCommand
canRedo, canUndo, die, isSignificant, redo, run, undo
 
Methods inherited from class edu.berkeley.guir.lib.satin.command.CommandImpl
addEdit, debug, disable, enable, execute, getExecutionTime, getRedoPresentationName, getUndoPresentationName, isDisabled, isEnabled, replaceEdit, setExecutionTime, setExecutionTime, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RotateCommand

public RotateCommand(GraphicalObject gob,
                     double theta)
Rotate around the center of the specified GraphicalObject.

RotateCommand

public RotateCommand(GraphicalObject gob,
                     double theta,
                     double x,
                     double y)
Rotate around the specified point in the specified GraphicalObject's relative coordinate space (ie gob's parent coordinate space).
Parameters:
gob - is the GraphicalObject to rotate.
theta - is the amount to rotate (in radians).
x - is the coordinate to rotate around, in relative coordinates (ie gob's parent's coordinate space).
y - is the coordinate to rotate around, in relative coordinates (ie gob's parent's coordinate space).
Method Detail

getPresentationName

public String getPresentationName()
Description copied from class: CommandImpl
Override this method in the subclass.
Overrides:
getPresentationName in class ApplyTransformationCommand

Copyright Information