You could implement this with a class like this:
public class ShapeObject implements Shape {
private final Shape shape;
private float x = 0;
private float y = 0;
public ShapeObject(Shape shape) {
this.shape = shape;
}
public float getX() {
return x;
}
public void setX(float x) {
this.x = x;
}
public float getY() {
return y;
}
public void setY(float y) {
this.y = y;
}
public boolean *contains*(double x, double y) {
return shape.contains(x - this.x, y - this.y);
}
public Rectangle2D *getBounds2D*() {
Rectangle2D bounds2D = shape.getBounds2D();
bounds2D.setRect(bounds2D.getX() + x, bounds2D.getY() + y,
bounds2D.getWidth(), bounds2D.getHeight());
return bounds2D;
}
public PathIterator *getPathIterator*(AffineTransform at) {
AffineTransform at2 = new AffineTransform(at);
at2.translate(x, y);
return shape.getPathIterator(at2);
}
// You have to implement the other Shape methods yourself
}
This class is more or less all you need. Put each of your shapes into a
ShapeObject class and move the ShapeObjects around using the setX() and
setY() methods.
BTW, the questions was not too stupid to be answered, but most people
have quite a lot to do so answers sometimes take a bit longer or never come.
Cheers
Jan
Danilo Costa wrote:
No body has any idea? Or is the question too much stupid to be answered?
On 10/22/06, *Danilo Costa* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:
I think it is a dummy question, but I cant find its answer easily.
I have a collection of Shapes that are rendered in a canvas and I
have to let the user to interact with it, dragging it.
I've found this example
http://java.sun.com/docs/books/tutorial/2d/display/user.html
called Shape mover, but actually it works only with Rectangle
class, which has convenient methods for that, such as setLocation
and translate. I am wondering why Shape interface does not define
those methods? How can I implement such methods when I am working
with generic shapes? Any help is appreciate.
Tahanks
Danilo
--
"...YOU CANNOT KNOW THE MEANING OF YOUR LIFE UNTIL YOU ARE
CONNECTED WITH THE POWER THAT CREATED YOU..."
Shri Mataji Nirmala Devi
--
"...YOU CANNOT KNOW THE MEANING OF YOUR LIFE UNTIL YOU ARE CONNECTED
WITH THE POWER THAT CREATED YOU..."
Shri Mataji Nirmala Devi
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the
body of the message "signoff JAVA2D-INTEREST". For general help, send
email to [EMAIL PROTECTED] and include in the body of the message
"help".
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA2D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".