If you've had any graphics experience, you'd be familiar with the
matrices Java uses. If you're interested in knowing exactly what
the transforms mean, you can reference a standard graphics text
such as Foley's "Fundamentals of Interactive Computer Graphics"
or Hearn & Bakers "Computer Graphics". If you just want to transform
things, ignore the headers of the AffineTransform docs and focus
on the methods. I realize this is a frustrating answer, but otherwise
we could get into an entire graphics course over email :)
Spencer Tasker wrote:
> Just a couple of questions and comments on the AffineTransform class
> from someone who is new to the 2D-API : 1> The API documentation
> frequently has recourse to 9x9 transformation matrices when explaining
> the methods of AffineTransform. Please forgive my ignorance, but the
> level of explanation provided typically leaves me more confused than
> when I started. 2> Which method does one use to obtain a mirror
> image of an object, along which axes?
>
> protected final AffineTransform flipTransform = new
> AffineTransform(1, 0, 0, -1, 0, 0);
> (rotates around the x-axis, with z-axis coming out of the screen)
> protected final AffineTransform flopTransform = new
> AffineTransform(-1, 0, 0, 1, 0, 0);
> (rotates around y-axis, with z-axis coming out of the screen)
>
> You can apply these tranforms to your object to get the desired
> flipping.
>
> 3> When rotation is carried out is this relative to the origin
> (0,0), meaning that a 180degree rotation of anything will place it
> off-screen?
>
> The rotation is in respect to the objects coordinate space, not the
> coordinate
> space of the screen. If the object is located at (0, 0) of screen
> space,
> rotating it around (0, 0) will put it off the scree. If the object is
> located
> at (150, 150), the object will still be on the screen.
>
> 4> In performing a translation on an object the units used do not
> appear to be pixels. I have an object which is big (2000 x 2000),
> scale it 1/10 its original size and then translate it by 100 units to
> the right - it moves what I would judge to be perhaps 10 pixels - does
> scaling somehow retain the original magnitude of the object space?
>
> To complicate things more, if the object you are trying to move is an
> Area,
> there is a terrible annoying awful bug in transforming Areas.
> Everytime
> you transform an Area, it applies all of the previous transforms AGAIN
>
> and than applies the transform you just gave it (see bug 4217589 on
> developer.java.sun.com).
>
> Any advice will be more than welcomed. - Spencer
cheers--
adrienne
===========================================================================
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".