Export (0) Print
Expand All

Matrix3D Structure

Represents a 4 x 4 matrix used for transformations in 3-D space.

Namespace:  System.Windows.Media.Media3D
Assembly:  PresentationCore (in PresentationCore.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[SerializableAttribute]
[TypeConverterAttribute(typeof(Matrix3DConverter))]
public struct Matrix3D : IFormattable
<object property="m11, m12, m13, m21, m22, m23, m31, m32, m33, offsetX, offsetY, offsetZ"/>
- or -
<object property="Identity"/>

XAML Values

M11

System.Double

The value in the first row and first column of this Matrix3D. For more information, see the M11 property.

M12

System.Double

The value in the first row and second column of this Matrix3D. For more information, see the M12 property.

M13

System.Double

The value in the first row and third column of this Matrix3D. For more information, see the M13 property.

M14

System.Double

The value in the first row and fourth column of this Matrix3D. For more information, see the M14 property.

M21

System.Double

The value in the second row and first column of this Matrix3D. For more information, see the M21 property.

M22

System.Double

The value in the second row and second column of this Matrix3D. For more information, see the M22 property.

M23

System.Double

The value in the second row and third column of this Matrix3D. For more information, see the M23 property.

M24

System.Double

The value in the second row and fourth column of this Matrix3D. For more information, see the M24 property.

M31

System.Double

The value in the third row and first column of this Matrix3D. For more information, see the M31 property.

M32

System.Double

The value in the third row and second column of this Matrix3D. For more information, see the M32 property.

M33

System.Double

The value in the third row and third column of this Matrix3D. For more information, see the M34 property.

M34

System.Double

The value in the third row and fourth column of this Matrix3D. For more information, see the M33 property.

M44

System.Double

The value in the fourth row and fourth column of this Matrix3D. For more information, see the M44 property.

offsetX

System.Double

The value in the fourth row and first column of this Matrix3D. For more information, see the OffsetX property.

offsetY

System.Double

The value in the fourth row and second column of this Matrix3D. For more information, see the OffsetY property.

offsetZ

System.Double

The value in the fourth row and third column of this Matrix3D. For more information, see the OffsetZ property.

Matrix3D has the following row-vector syntax:

Note that because the fourth column is also accessible, the matrix allows developers to represent affine as well as non-affine transforms.

Matrices can be appended or prepended to other matrices. Appending matrix A to matrix B denotes a transformation by B and then by A:

// Multiplies a Vector3D by a Matrix3D using the static Multiply method.   
// Returns a Vector3D.

Vector3D vector1 = new Vector3D(20, 30, 40);
Matrix3D matrix1 = new Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1);
Vector3D vectorResult = new Vector3D();

vectorResult = Vector3D.Multiply(vector1,matrix1);
// vector Result is equal to (2000, 2000, 2000)

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

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.

.NET Framework

Supported in: 3.5, 3.0

Community Additions

ADD
Show:
© 2014 Microsoft