The Utils3D class contains static methods that simplify the implementation of certain threedimensional matrix operations.
Static methods
staticprojectVector(m:Matrix3D, v:Vector3D):Vector3D
Using a projection Matrix3D object, projects a Vector3D object from one space
coordinate to another. The projectVector()
method is like the
Matrix3D.transformVector()
method except that the projectVector()
method
divides the x, y, and z elements of the original Vector3D object by the
projection depth value. The depth value is the distance from the eye to the
Vector3D object in view or eye space. The default value for this distance is the
value of the z element.
Parameters:
m  A projection Matrix3D object that implements the projection
transformation. If a display object has a PerspectiveProjection object, you can
use the 

v  The Vector3D object that is projected to a new space coordinate. 
Returns:
A new Vector3D with a transformed space coordinate.
staticprojectVectorToOutput(m:Matrix3D, v:Vector3D, output:Vector3D):Vector3D
Using a projection Matrix3D object, projects a Vector3D object from one space
coordinate to another. The projectVector()
method is like the
Matrix3D.transformVector()
method except that the projectVector()
method
divides the x, y, and z elements of the original Vector3D object by the
projection depth value. The depth value is the distance from the eye to the
Vector3D object in view or eye space. The default value for this distance is the
value of the z element.
Parameters:
m  A projection Matrix3D object that implements the projection
transformation. If a display object has a PerspectiveProjection object, you can
use the 

v  The Vector3D object that is projected to a new space coordinate. 
output  An optional Vector3D object that will be used for the output rather than creating a new Vector3D object 
Returns:
A new Vector3D with a transformed space coordinate.
staticprojectVectors(m:Matrix3D, verts:Vector<Float>, projectedVerts:Vector<Float>, uvts:Vector<Float>):Void
Using a projection Matrix3D object, projects a Vector of threedimensional space
coordinates (verts
) to a Vector of twodimensional space coordinates
(projectedVerts
). The projected Vector object should be preallocated before it
is used as a parameter.
The projectVectors()
method also sets the t value of the uvt data. You should
preallocate a Vector that can hold the uvts data for each projected Vector set of
coordinates. Also specify the u and v values of the uvt data. The uvt data is a
Vector of normalized coordinates used for texture mapping. In UV coordinates,
(0,0) is the upper left of the bitmap, and (1,1) is the lower right of the bitmap.
This method can be used in conjunction with the Graphics.drawTriangles()
method
and the GraphicsTrianglePath class.
Parameters:
m  A projection Matrix3D object that implements the projection
transformation. You can produce a projection Matrix3D object using the


verts  A Vector of Floats, where every three Floats represent the x, y,
and z coordinates of a threedimensional space, like 
projectedVerts  A vector of Floats, where every two Floats represent a
projected twodimensional coordinate, like Point(x,y). You should preallocate the
Vector. The 
uvts  A vector of Floats, where every three Floats represent the u, v, and t elements of the uvt data. The u and v are the texture coordinate for each projected point. The t value is the projection depth value, the distance from the eye to the Vector3D object in the view or eye space. You should preallocate the Vector and specify the u and v values. The projectVectors method fills the t value for each projected point. 