Matrix3D 구조체

정의

3-D 공간에서 변환에 사용되는 4 x 4 매트릭스를 나타냅니다.

public value class Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
[System.Serializable]
public struct Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
public struct Matrix3D : IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))>]
[<System.Serializable>]
type Matrix3D = struct
    interface IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))>]
type Matrix3D = struct
    interface IFormattable
Public Structure Matrix3D
Implements IFormattable
상속
Matrix3D
특성
구현

예제

// 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)
' Multiplies a Vector3D by a Matrix3D using the static Multiply method.  
' Returns a Vector3D.

Dim vector1 As New Vector3D(20, 30, 40)
Dim matrix1 As New Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1)
Dim vectorResult As New Vector3D()

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

설명

Matrix3D 에는 다음과 같은 행 벡터 구문이 있습니다.

M11 M12 M13 M14
M21 M22 M23 M24
M31 M32 M33 M34
OffsetX OffsetY OffsetZ M44

네 번째 열에도 액세스할 수 있으므로 행렬을 사용하면 개발자가 아핀과 비아핀 변환을 나타낼 수 있습니다.

행렬을 다른 행렬에 추가하거나 앞에 추가할 수 있습니다. 행렬 A를 행렬 B에 추가하면 B와 A로 변환이 표시됩니다.

XAML 특성 사용

<object property="m11, m12, m13, m21, m22, m23, m31, m32, m33, offsetX, offsetY, offsetZ"/>  
- or -  
<object property="Identity"/>  

XAML 값

M11
System.Double

첫 번째 행과 첫째 열 값 Matrix3D합니다. 자세한 내용은 M11 속성을 참조하세요.

M12
System.Double

이 열의 첫 번째 행과 두 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M12 속성을 참조하세요.

M13
System.Double

이 열의 첫 번째 행과 세 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M13 속성을 참조하세요.

M14
System.Double

이 행의 첫 번째 행과 네 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M14 속성을 참조하세요.

M21
System.Double

두 번째 행과 이 열의 첫 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M21 속성을 참조하세요.

M22
System.Double

이 열의 두 번째 행과 두 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M22 속성을 참조하세요.

M23
System.Double

이 열의 두 번째 행과 세 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M23 속성을 참조하세요.

M24
System.Double

이 열의 두 번째 행과 네 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M24 속성을 참조하세요.

M31
System.Double

이 행의 세 번째 행과 첫 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M31 속성을 참조하세요.

M32
System.Double

이 열의 세 번째 행과 두 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M32 속성을 참조하세요.

M33
System.Double

이 열의 세 번째 행과 세 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M34 속성을 참조하세요.

M34
System.Double

이 열의 세 번째 행과 네 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M33 속성을 참조하세요.

M44
System.Double

이 열의 네 번째 행과 네 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 M44 속성을 참조하세요.

Offsetx
System.Double

이 열의 네 번째 행과 첫 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 OffsetX 속성을 참조하세요.

Offsety
System.Double

이 열의 네 번째 행과 두 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 OffsetY 속성을 참조하세요.

offsetZ
System.Double

이 열의 네 번째 행과 세 번째 열에 있는 값입니다 Matrix3D. 자세한 내용은 OffsetZ 속성을 참조하세요.

생성자

Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

매트릭스의 초기 값을 설정하는 생성자입니다.

속성

Determinant

Matrix3D 구조체의 행렬식을 검색합니다.

HasInverse

Matrix3D를 반전할 수 있는지 여부를 나타내는 값을 가져옵니다.

Identity

Matrix3D 구조체를 항등 Matrix3D로 변경합니다.

IsAffine

Matrix3D 구조체가 관계 구조체인지 여부를 나타내는 값을 가져옵니다.

IsIdentity

Matrix3D 구조체가 항등 Matrix3D인지 여부를 확인합니다.

M11

Matrix3D 구조체의 첫 번째 행과 첫 번째 열 값을 가져오거나 설정합니다.

M12

Matrix3D 구조체의 첫 번째 행과 두 번째 열 값을 가져오거나 설정합니다.

M13

Matrix3D 구조체의 첫 번째 행과 세 번째 열 값을 가져오거나 설정합니다.

M14

Matrix3D 구조체의 첫 번째 행과 네 번째 열 값을 가져오거나 설정합니다.

M21

Matrix3D 구조체의 두 번째 행과 첫 번째 열 값을 가져오거나 설정합니다.

M22

Matrix3D 구조체의 두 번째 행과 두 번째 열 값을 가져오거나 설정합니다.

M23

Matrix3D 구조체의 두 번째 행과 세 번째 열 값을 가져오거나 설정합니다.

M24

Matrix3D 구조체의 두 번째 행과 네 번째 열 값을 가져오거나 설정합니다.

M31

Matrix3D 구조체의 세 번째 행과 첫 번째 열 값을 가져오거나 설정합니다.

M32

Matrix3D 구조체의 세 번째 행과 두 번째 열 값을 가져오거나 설정합니다.

M33

Matrix3D 구조체의 세 번째 행과 세 번째 열 값을 가져오거나 설정합니다.

M34

Matrix3D 구조체의 세 번째 행과 네 번째 열 값을 가져오거나 설정합니다.

M44

Matrix3D 구조체의 네 번째 행과 네 번째 열 값을 가져오거나 설정합니다.

OffsetX

Matrix3D 구조체의 네 번째 행과 첫 번째 열 값을 가져오거나 설정합니다.

OffsetY

Matrix3D 구조체의 네 번째 행과 두 번째 열 값을 가져오거나 설정합니다.

OffsetZ

Matrix3D 구조체의 네 번째 행과 세 번째 열 값을 가져오거나 설정합니다.

메서드

Append(Matrix3D)

지정된 매트릭스를 현재 매트릭스 뒤에 추가합니다.

Equals(Matrix3D)

두 매트릭스가 일치하는지 여부를 테스트합니다.

Equals(Matrix3D, Matrix3D)

두 매트릭스가 일치하는지 여부를 테스트합니다.

Equals(Object)

두 매트릭스가 일치하는지 여부를 테스트합니다.

GetHashCode()

이 매트릭스의 해시 코드를 반환합니다.

Invert()

Matrix3D 구조체를 반전합니다.

Multiply(Matrix3D, Matrix3D)

지정된 매트릭스를 곱합니다.

Parse(String)

Matrix3D 구조체의 문자열 표현을 해당되는 Matrix3D 구조체로 변환합니다.

Prepend(Matrix3D)

지정된 매트릭스를 현재 매트릭스 앞에 추가합니다.

Rotate(Quaternion)

현재 Matrix3D의 뒤에 회전 변환을 추가합니다.

RotateAt(Quaternion, Point3D)

지정된 Matrix3D를 기준으로 이 Point3D를 회전합니다.

RotateAtPrepend(Quaternion, Point3D)

지정된 중심 Point3D를 기준으로 하는 회전을 이 Matrix3D 구조체 앞에 추가합니다.

RotatePrepend(Quaternion)

Quaternion에 지정된 회전을 이 Matrix3D 구조체 앞에 추가합니다.

Scale(Vector3D)

지정된 배율 Vector3D를 이 Matrix3D 구조체 뒤에 추가합니다.

ScaleAt(Vector3D, Point3D)

Matrix3D 구조체의 크기를 지정된 Vector3D에 대해 지정된 Point3D만큼 조정합니다.

ScaleAtPrepend(Vector3D, Point3D)

지정된 Point3D에 대해 지정된 배율 변환을 이 Matrix3D 구조체 앞에 추가합니다.

ScalePrepend(Vector3D)

지정된 배율 Vector3D를 현재 Matrix3D 구조체 앞에 추가합니다.

SetIdentity()

Matrix3D 구조체를 항등 매트릭스로 변경합니다.

ToString()

Matrix3D 구조체의 문자열 표현을 만듭니다.

ToString(IFormatProvider)

Matrix3D 구조체의 문자열 표현을 만듭니다.

Transform(Point3D)

Point3D로 지정된 Matrix3D를 변환하고 결과를 반환합니다.

Transform(Point3D[])

Point3D로 배열의 지정된 Matrix3D 개체를 변환합니다.

Transform(Point4D)

Point4D로 지정된 Matrix3D를 변환하고 결과를 반환합니다.

Transform(Point4D[])

Point4D로 배열의 지정된 Matrix3D 개체를 변환하고 결과를 반환합니다.

Transform(Vector3D)

Vector3D로 지정된 Matrix3D를 변환합니다.

Transform(Vector3D[])

Vector3D로 배열의 지정된 Matrix3D 개체를 변환합니다.

Translate(Vector3D)

지정된 오프셋 변환을 현재 Matrix3D 구조체 뒤에 추가합니다.

TranslatePrepend(Vector3D)

지정된 오프셋 변환을 이 Matrix3D 구조체 앞에 추가합니다.

연산자

Equality(Matrix3D, Matrix3D)

Matrix3D 인스턴스를 비교하여 완전히 같은지 여부를 확인합니다.

Inequality(Matrix3D, Matrix3D)

Matrix3D 인스턴스를 비교하여 완전히 다른지 여부를 확인합니다.

Multiply(Matrix3D, Matrix3D)

지정된 매트릭스를 곱합니다.

명시적 인터페이스 구현

IFormattable.ToString(String, IFormatProvider)

지정된 형식을 사용하여 현재 인스턴스 값의 형식을 지정합니다.

적용 대상

추가 정보