> From: Tachio Terauchi <[EMAIL PROTECTED]>
>
> I was under the impression that getVworldToImagePlate retrieves the
> projection matrix. That is, the matrix that projects any objects in
> Virtual World coordinate into the ImagePlate coordinate (3D to 2D
> projection). However, I noticed that I was getting z-value != 0 when I
> multiplied that matrix with the Vworld coordinate. My question is, what
> does getVworldToImagePlate actually retrieve? Thanks in advance.
The VworldToImagePlate transform goes between the virtual world (Vworld) and
the physical world (image plate), but does not include the perspective
projection.
Image plate coordinates are defined as:
origin: lower left corner of the monitor
orientation: z=0 is the face of the monitor, +Z is out +X is right
+Y is up
units: meters
(This is for the normal, one monitor case)
By default, this transform is set up so that the window on the screen shows the
-1->1 range in VWorld coordinates.
There is no inquiry which returns the perspective projection matrix in J3D 1.1.
Instead, I've had good results getting the information I need using the eye
point and points on the image plate.
As an example, I've attached a class which does Local to Window
transformations. It transforms points from local coordinates (Vworld coords
with a transforms between the Node and the Locale) to Window coordinates which
are at z=0 in Image Plate coords and are in units of pixels.
Doug Gehringer
Sun Microsystems
=====================================================================
To subscribe/unsubscribe, send mail to [EMAIL PROTECTED]
Java 3D Home Page: http://java.sun.com/products/java-media/3D/