public class GCompound extends GObject implements GContainer, GScalable
BACK_TO_FRONT, FRONT_TO_BACK| Constructor and Description |
|---|
GCompound()
Creates a new
GCompound object with no internal components. |
| Modifier and Type | Method and Description |
|---|---|
void |
add(GObject gobj)
Adds a new graphical object to this
GCompound. |
void |
add(GObject gobj,
double x,
double y)
Adds the graphical object to this canvas and sets its location
to the point (
x, y). |
void |
add(GObject gobj,
GPoint pt)
Adds the graphical object to this canvas and sets its location to the specified point.
|
boolean |
contains(double x,
double y)
Checks to see whether a point is "inside" the compound, which means that it is
inside one of the components.
|
GRectangle |
getBounds()
Returns the bounding rectangle for this compound object, which consists of
the union of the bounding rectangles for each of the components.
|
GPoint |
getCanvasPoint(double x,
double y)
Converts the location of the specified point in this compound to
the corresponding point in the enclosing canvas.
|
GPoint |
getCanvasPoint(GPoint localPoint)
Converts the location of the specified point in this compound to
the corresponding point in the enclosing canvas.
|
GObject |
getElement(int index)
Returns the graphical object at the specified index, numbering from back
to front in the the z dimension.
|
GObject |
getElementAt(double x,
double y)
Returns the topmost graphical object that contains the point
(
x, y), or null if no such
object exists. |
GObject |
getElementAt(GPoint pt)
Returns the topmost graphical object that contains the specified point,
or
null if no such object exists. |
int |
getElementCount()
Returns the number of graphical objects stored in this container.
|
GPoint |
getLocalPoint(double x,
double y)
Converts the specified point on the enclosing canvas to the
corresponding point in the space of this compound.
|
GPoint |
getLocalPoint(GPoint canvasPoint)
Converts the location of the specified point on the enclosing canvas
to the corresponding point in the space of this compound.
|
java.util.Iterator |
iterator()
Returns an
Iterator that cycles through the elements within
this container in the default direction, which is from back to front. |
java.util.Iterator |
iterator(int direction)
Returns an
Iterator that cycles through the elements
within this container in the specified direction, which must be one
of the constants GContainer.FRONT_TO_BACK
or GContainer.BACK_TO_FRONT. |
void |
markAsComplete()
Calling this method makes it illegal to add or remove elements from the
compound object.
|
void |
paint(java.awt.Graphics g)
Implements the
paint operation for this graphical object. |
void |
remove(GObject gobj)
Removes a graphical object from this
GCompound. |
void |
removeAll()
Removes all graphical objects from this
GCompound. |
void |
scale(double sf)
Scales the object on the screen by the scale factor
sf, which applies
in both dimensions. |
void |
scale(double sx,
double sy)
Scales every object contained in this compound by the scale factors
sx and sy. |
addActionListener, addMouseListener, addMouseMotionListener, contains, fireActionEvent, fireActionEvent, getColor, getHeight, getLocation, getParent, getSize, getWidth, getX, getY, isVisible, move, movePolar, pause, removeActionListener, removeMouseListener, removeMouseMotionListener, sendBackward, sendForward, sendToBack, sendToFront, setColor, setLocation, setLocation, setParent, setVisible, toStringpublic GCompound()
GCompound object with no internal components.public void add(GObject gobj)
GCompound.add in interface GContainergobj - The graphical object to addpublic final void add(GObject gobj, double x, double y)
x, y).add in interface GContainergobj - The graphical object to addx - The new x-coordinate for the objecty - The new y-coordinate for the objectpublic final void add(GObject gobj, GPoint pt)
add in interface GContainergobj - The graphical object to addpt - A GPoint object giving the coordinates of the pointpublic void remove(GObject gobj)
GCompound.remove in interface GContainergobj - The graphical object to removepublic void removeAll()
GCompound.removeAll in interface GContainerpublic int getElementCount()
getElementCount in interface GContainerpublic GObject getElement(int index)
getElement in interface GContainerindex - The index of the component to returnpublic GObject getElementAt(double x, double y)
x, y), or null if no such
object exists. Note that these coordinates are relative to the
location of the compound object and not to the canvas in which
it is displayed.getElementAt in interface GContainerx - The x-coordinate of the point being testedy - The y-coordinate of the point being testednull
if no such object existspublic final GObject getElementAt(GPoint pt)
null if no such object exists.getElementAt in interface GContainerpt - The coordinates being testednull
if no such object existspublic java.util.Iterator iterator()
Iterator that cycles through the elements within
this container in the default direction, which is from back to front.
You can also run the iterator in the opposite direction by using the
iterator(direction) form of this method.
Applets that want to run in browsers, however, should avoid using
this method, because Iterator is not supported on 1.1 browsers.
For maximum portability, you should rely instead on the
getElementCount
and getElement methods,
which provide the same functionality in a browser-compatible way.
Iterator ranging over the elements of the
container from back to frontpublic java.util.Iterator iterator(int direction)
Iterator that cycles through the elements
within this container in the specified direction, which must be one
of the constants GContainer.FRONT_TO_BACK
or GContainer.BACK_TO_FRONT.
for (Iterator i = gc.iterator(direction); i.hasNext(); )
Applets that want to run in browsers, however, should avoid using
this method, because Iterator is not supported on 1.1 browsers.
For maximum portability, you should rely instead on the
getElementCount
and getElement methods,
which provide the same functionality in a browser-compatible way.
Iterator ranging over the elements of the
container in the specified directionpublic void paint(java.awt.Graphics g)
paint operation for this graphical object. This method
is not called directly by clients.public void scale(double sx,
double sy)
sx and sy. Automatic repaint is turned off
during the scaling operation so that at most one repaint is performed.public final void scale(double sf)
sf, which applies
in both dimensions.public GRectangle getBounds()
public boolean contains(double x,
double y)
public final GPoint getCanvasPoint(GPoint localPoint)
localPoint - The coordinates in the space of the compoundGCanvaspublic GPoint getCanvasPoint(double x, double y)
x - The x coordinate in the space of the compoundy - The y coordinate in the space of the compoundGCanvaspublic final GPoint getLocalPoint(GPoint canvasPoint)
canvasPoint - The coordinates in the space of the enclosing GCanvaspublic GPoint getLocalPoint(double x, double y)
x - The x coordinate in the space of the space of the enclosing GCanvasy - The y coordinate in the space of the space of the enclosing GCanvaspublic void markAsComplete()