Partager via


Matrix.LookAtLH Method

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Builds a left-handed look-at matrix.

Namespace:  Microsoft.WindowsMobile.DirectX
Assembly:  Microsoft.WindowsMobile.DirectX (in Microsoft.WindowsMobile.DirectX.dll)

Syntax

'Declaration
Public Shared Function LookAtLH ( _
    cameraPosition As Vector3, _
    cameraTarget As Vector3, _
    cameraUpVector As Vector3 _
) As Matrix
'Usage
Dim cameraPosition As Vector3
Dim cameraTarget As Vector3
Dim cameraUpVector As Vector3
Dim returnValue As Matrix

returnValue = Matrix.LookAtLH(cameraPosition, _
    cameraTarget, cameraUpVector)
public static Matrix LookAtLH(
    Vector3 cameraPosition,
    Vector3 cameraTarget,
    Vector3 cameraUpVector
)
public:
static Matrix LookAtLH(
    Vector3 cameraPosition, 
    Vector3 cameraTarget, 
    Vector3 cameraUpVector
)
static member LookAtLH : 
        cameraPosition:Vector3 * 
        cameraTarget:Vector3 * 
        cameraUpVector:Vector3 -> Matrix 

Parameters

Return Value

Type: Microsoft.WindowsMobile.DirectX.Matrix
A Matrix structure that is a left-handed look-at matrix.

Remarks

This method uses the following formula to compute the returned matrix.

zaxis = normal(cameraTarget - cameraPosition)
xaxis = normal(cross(cameraUpVector, zaxis))
yaxis = cross(zaxis, xaxis)
 xaxis.x           yaxis.x           zaxis.x          0
 xaxis.y           yaxis.y           zaxis.y          0
 xaxis.z           yaxis.z           zaxis.z          0
-dot(xaxis, cameraPosition)  -dot(yaxis, cameraPosition)  -dot(zaxis, cameraPosition)  1

Examples

The following example demonstrates how to use the LookAtLH method. This example is taken from the Direct3D Mobile Matrices Sample in the Windows Software Development Kit (SDK).

' Set up the view matrix. A view matrix can be defined given an eye point,
' a point to lookat, and a direction indicating which way is up. Here, you set
' the eye five units back along the z-axis and up three units, look at the
' origin, and define "up" to be in the y-direction.
device.Transform.View = Matrix.LookAtLH(New Vector3(0.0F, 3.0F, -5.0F), New Vector3(0.0F, 0.0F, 0.0F), New Vector3(0.0F, 1.0F, 0.0F))
// Set up the view matrix. A view matrix can be defined given an eye point,
// a point to look at, and a direction indicating which way is up. Here, you set
// the eye five units back along the z-axis and up three units, look at the
// origin, and define "up" to be in the y-direction.
device.Transform.View = Matrix.LookAtLH(new Vector3(0.0f, 3.0f, -5.0f), new Vector3(0.0f, 0.0f, 0.0f), new Vector3(0.0f, 1.0f, 0.0f));

.NET Framework Security

Platforms

Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Version Information

.NET Compact Framework

Supported in: 3.5, 2.0

See Also

Reference

Matrix Structure

Matrix Members

Microsoft.WindowsMobile.DirectX Namespace