    Contents  Index  Topic Contents
    Previous Topic: DAStatic Properties Relevant to DATransform2 Objects
    Next Topic: DAStatic Properties Relevant to DATransform3 Objects

> ## DAStatic Functions Relevant to DATransform3 Objects

> ###

> Compose3

> DAStatics Class

> Creates a three-dimensional transformation that is a composition of the given transformation objects.

> lib.Compose3(
> xf1,
> xf2
> )

> ##### Parameters

> xf1 and xf2
>   The DATransform3 objects.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Composing a transform is equivalent to first applying xf2 and then applying xf1.

> ###

> Compose3Array

> DAStatics Class

> Creates a three-dimensional transformation that is a composition of the DATransform3 objects in the array.

> lib.Compose3Array(
> xforms
> )

> ##### Parameters

> xf1 and xf2
>   The DATransform3 objects in the (variant) array.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Composing a transform is equivalent to first applying xfn, then applying xfn-1, and so on.

> ###

> LookAtFrom

> DAStatics Class

> Creates a three-dimensional transformation that transforms an object from a standard position and orientation to the "from" point, and aimed at the "to" point, with "up" mapping to the object's up direction. Prior to this transform, objects must be located at the origin, with the up side aligned with the positive y-axis, and aimed in the negative z-direction.

> lib.LookAtFrom(
> from,
> to,
> up
> )

> ##### Parameters

> from
>   The DAPoint3 object specifying the point from which to view.
> to
>   The DAPoint3 object specifying the point toward which to view.
> up
>   The DAVector3 object specifying the point determining the upright position.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> This transform is useful for positioning and orienting cameras, lights, microphones, and other three-dimensional objects.

> ###

> Rotate3Anim

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point or vector behavior, rotates the point or vector by the given angle (expressed in radians) around the given axis.

> lib.Rotate3Anim(
> axis,
> radians
> )

> ##### Parameters

> axis
>   The DAVector3 object representing the axis around which to rotate. The plane of rotation is perpendicular to the ray defined by this vector.
> radians
>   The DANumber object representing the angle of rotation. This parameter can also be of type double.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Rotations obey the right-hand rule. This means that, when looking down the axis vector, they are counter-clockwise.

> ###

> Rotate3

> DAStatics Class

> Same as Rotate3Anim except that axis and radians are non-animated numbers.

> lib.Rotate3(
> axis,
> radians
> )

> ###

> Rotate3-Degrees

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point or vector, rotates the point or vector by the given angle (expressed in degrees) around the given axis.

> lib.Rotate3-Degrees(
> axis,
> degrees
> )

> ##### Parameters

> axis
>   The DAVector3 object representing the axis around which to rotate. The plane of rotation is perpendicular to the ray defined by this vector.
> degrees
>   The number (a double) representing the angle of rotation (expressed in degrees).

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Rotations obey the right-hand rule. This means that, when looking down the axis vector, they are counter-clockwise.

> ###

> Rotate3Rate

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point or vector behavior, rotates the point or vector by the given angle (expressed in radians) around the given axis. The rotation rate is determined by multiplying the angle by LocalTime.

> lib.Rotate3Rate(
> axis,
> radians
> )

> ##### Parameters

> axis
>   The DAVector3 object representing the axis around which to rotate. The plane of rotation is perpendicular to the ray defined by this vector.
> radians
>   The number (a double) representing the angle of rotation, and multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Rotations obey the right-hand rule. This means that, when looking down the axis vector, they are counter-clockwise.

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Rotate3RateDegrees

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point or vector behavior, rotates the point or vector by the given angle (expressed in degrees) around the given axis. The rotation rate is determined by multiplying the angle by LocalTime.

> lib.Rotate3RateDegrees(
> axis,
> degrees
> )

> ##### Parameters

> axis
>   The DAVector3 object representing the axis around which to rotate. The plane of rotation is perpendicular to the ray defined by this vector.
> degrees
>   The number (a double) representing the angle of rotation (expressed in degrees), and multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Rotations obey the right-hand rule. This means that, when looking down the axis vector, they are counter-clockwise.

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Scale3Anim

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a three-dimensional object, scales it. For example, the transformation modifies the length of a vector by multiplying the vector's coordinates by the values of the corresponding numbers.

> lib.Scale3Anim(
> sx,
> sy,
> sz
> )

> ##### Parameters

> sx, sy, and sz
>   The DANumber objects representing the amounts to scale. The value of sx applies to the x coordinate, sy to the y coordinate, and sz to the z coordinate.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters or pixels, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Scale3

> DAStatics Class

> Same as Scale3Anim except that sx, sy, and sz are non-animated numbers (doubles).

> lib.Scale3(
> sx,
> sy,
> sz
> )

> ###

> Scale3Rate

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a three-dimensional object, scales it. The scaling rates are determined by multiplying the arguments by LocalTime.

> lib.Scale3Rate(
> x,
> y,
> z
> )

> ##### Parameters

> x, y, and z
>   The numbers (doubles) representing the amounts to scale, multiplied by LocalTime. The value of x applies to the x coordinate, y to the y coordinate, and z to the z coordinate.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Scale3UniformAnim

> DAStatics Class

> Creates a three-dimensional transformation behavior that, when applied to a three-dimensional object, scales it uniformly.

> lib.Scale3UniformAnim(
> uniformFactor
> )

> ##### Parameters

> uniformFactor
>   The DANumber object representing the value to apply to the x, y, and z coordinates, respectively. These must be animated numbers.

> ##### Return Values

> Returns the DATransform3 object.

> ##### See Also

> Scale3Anim, Scale3Vector

> ###

> Scale3Uniform

> DAStatics Class

> Same as Scale3UniformAnim except that uniformFactor is a non-animated number (a double).

> lib.Scale3Uniform(
> uniformFactor
> )

> ###

> Scale3UniformRate

> DAStatics Class

> Creates a three-dimensional transformation behavior that, when applied to a three-dimensional object, scales it uniformly. The scaling rate is determined by multiplying the argument by LocalTime.

> lib.Scale3UniformRate(
> rate
> )

> ##### Parameters

> rate
>   The number (a double) representing the value to apply to the x, y, and z coordinates, respectively, and multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Scale3Vector

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a three-dimensional object, scales it. For example, the transformation modifies the location of a point by multiplying the point's coordinates by the values of the corresponding vector coordinates.

> lib.Scale3Vector(
> v
> )

> ##### Parameters

> v
>   The DAVector3 object. The x, y, and z coordinates of the vector behavior specify the amounts to scale the x, y, and z coordinates, respectively.

> ##### Return Values

> Returns the DATransform3 object.

> ###

> Transform4x4Anim

> DAStatics Class

> Creates a three-dimensional transformation behavior that consists of the 4 by 4 matrix having the values specified by the given number behaviors.

> lib.Transform4x4Anim(
> matrix
> )

> ##### Parameters

> matrix
>   The 4 by 4 matrix. The first row of the matrix can be represented by the DANumber objects a00, a01, a02, a03. Use a00 to scale the x coordinate and a03 to translate x.
>   The second row of the matrix can be represented by the DANumber objects a10, a11, a12, a13. Use a11 to scale the y coordinate and a13 to translate y.
>   The third row of the matrix can be represented by the DANumber objects a20, a21, a22, a23. Use a22 to scale the z coordinate and a23 to translate z.
>   The fourth row of the matrix can be represented by the DANumber objects a30, a31, a32, a33.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The translation components for the matrix are in the last column. The last row of the matrix must be [0 0 0 1].

> ###

> Translate3Anim

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point, translates (moves) the point by the amounts given by the tx, ty, and tz.

> lib.Translate3Anim(
> tx,
> ty,
> tz
> )

> ##### Parameters

> tx, ty, and tz
>   The DANumber objects representing the amounts to translate the point along the x, y, and z axes, respectively. These must be animated numbers.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Vectors are unchanged by translations.

> The units can either be meters or pixels, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Translate3

> DAStatics Class

> Same as Translate3Anim except that x, y, and z are non-animated numbers (doubles).

> lib.Translate3(
> x,
> y,
> z
> )

> ###

> Translate3Point

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point, translates (moves) the point to the new location loc.

> lib.Translate3Point(
> loc
> )

> ##### Parameters

> loc
>   The DAPoint3 object specifying the new location. This must be an animated point.

> ##### Return Values

> Returns the DATransform3 object.

> ###

> Translate3Rate

> DAStatics Class

> Creates a three-dimensional transformation that, when applied to a point, translates (moves) the point by the amounts given by x, y, z. The translation rate is determined by multiplying the arguments by LocalTime.

> lib.Translate3Rate(
> x,
> y,
> z
> )

> ##### Parameters

> x, y, and z
>   The numbers (doubles) representing the amounts to translate the point along the x, y, and z axes, respectively, and multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Vectors are unchanged by translations.

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ###

> Translate3Vector

> DAStatics Class

> Creates a three-dimensional transformation behavior that, when applied to a point, translates (moves) the point by the amounts given by the vector.

> lib.Translate3Vector(
> v
> )

> ##### Parameters

> v
>   The DAVector3 object. The x, y, and z coordinates of the vector specify the amounts to translate along the x, y, and z axes, respectively.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> Vectors are unchanged by translations.

> ###

> XShear3Anim

> DAStatics Class

> Shears the x-axis in the positive y-direction by a and in the positive z-direction by b. The X-coordinate remains unchanged, and the Y and Z coordinates increase by the product of the X-coordinate and the shear factors. In other words, X2 = X1, Y2 = Y1 + aX1, and Z2 = Z1 + bX1, where a and b are the shear factors.

> lib.XShear3Anim(
> a,
> b
> )

> ##### Parameters

> a
>   The DANumber object representing the amount of shear in the Y direction. This must be an animated number.
> b
>   The DANumber object representing the amount of shear in the Z direction. This must be an animated number.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters or pixels, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ##### See Also

> YShear3Anim, ZShear3Anim

> ###

> XShear3

> DAStatics Class

> Same as XShear3Anim except that a and b are non-animated numbers (doubles).

> lib.XShear3(
> a,
> b
> )

> ###

> XShear3Rate

> DAStatics Class

> Shears the x-axis in the positive y-direction by a and in the positive z-direction by b. The shear rates are determined by multiplying the arguments by LocalTime.

> lib.XShear3Rate(
> a,
> b
> )

> ##### Parameters

> a
>   The number (a double) representing the amount of shear in the Y direction, multiplied by LocalTime.
> b
>   The number (a double) representing the amount of shear in the Z direction, multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ##### See Also

> YShear3Rate, ZShear3Rate

> ###

> YShear3Anim

> DAStatics Class

> Shears the y-axis in the positive x-direction by c and in the positive z-direction by d. The Y-coordinate remains unchanged, and the X and Z coordinates increase by the product of the Y-coordinate and the shear factors. In other words, Y2 = Y1, X2 = X1 + cY1, and Z2 = Z1 + dY1, where c and d are the shear factors.

> lib.YShear3Anim(
> c,
> d
> )

> ##### Parameters

> c
>   The DANumber object representing the amount of shear in the X direction. This must be an animated number.
> d
>   The DANumber object representing the amount of shear in the Z direction. This must be an animated number.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters or pixels, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ##### See Also

> XShear3Anim, ZShear3Anim

> ###

> YShear3

> DAStatics Class

> Same as YShearAnim except that c and d are non-animated numbers (double).

> lib.YShear3(
> c,
> d
> )

> ###

> YShear3Rate

> DAStatics Class

> Shears the y-axis in the positive x-direction by c and in the positive z-direction by d. The shear rates are determined by multiplying the arguments by LocalTime.

> lib.YShear3Rate(
> c,
> d
> )

> ##### Parameters

> c
>   The number (a double) representing the amount of shear in the X direction, multiplied by LocalTime.
> d
>   The number (a double) representing the amount of shear in the Z direction, multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ##### See Also

> XShear3Rate, ZShear3Rate

> ###

> ZShear3Anim

> DAStatics Class

> Shears the z-axis in the positive x-direction by e and in the positive y-direction by f. The Z-coordinate remains unchanged, and the X and Y coordinates increase by the product of the Z-coordinate and the shear factors. In other words, Z2 = Z1, X2 = X1 + eZ1, and Y2 = Y1 + fZ1, where e and f are the shear factors.

> lib.ZShear3Anim(
> e,
> f
> )

> ##### Parameters

> e
>   The DANumber object representing the amount of shear in the X direction. This must be an animated number.
> f
>   The DANumber object representing the amount of shear in the Y direction. This must be an animated number.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters or pixels, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ##### See Also

> XShear3Anim, YShear3Anim

> ###

> ZShear3

> DAStatics Class

> Same as ZShear3Anim except that e and f are non-animated numbers (doubles).

> lib.ZShear3(
> e,
> f
> )

> ###

> ZShear3Rate

> DAStatics Class

> Shears the z-axis in the positive x-direction by e and in the positive y-direction by f. The shear rates are determined by multiplying the arguments by LocalTime.

> lib.ZShear3Rate(
> e,
> f
> )

> ##### Parameters

> e
>   The number (a double) representing the amount of shear in the X direction, multiplied by LocalTime.
> f
>   The number (a double) representing the amount of shear in the Y direction, multiplied by LocalTime.

> ##### Return Values

> Returns the DATransform3 object.

> ##### Remarks

> The units can either be meters per second or pixels per second, depending on whether the MeterLibrary or the PixelLibrary is selected. If the PixelLibrary is selected, remember that the positive y-axis is down.

> ##### See Also

> XShear3Rate, YShear3Rate

> © 1998 Microsoft Corporation. All rights reserved. Terms of Use.

> Top of Page