다음을 통해 공유


float4x4 구조체

3D 변환에 사용되는 4x4 행렬입니다.

이 행렬 형식은 행 벡터 레이아웃을 사용합니다. 이 행렬의 변환 벡터의 x, y 및 z는 m41, m42, m43 필드에 해당합니다.

이 형식은 C++에서만 사용할 수 있습니다. .NET은 System.Numerics.Matrix4x4에 해당합니다.

생성자

속성 Description
float4x4() 초기화되지 않은 float4x4를 만듭니다.
float4x4(float m11, float m12, float m13, float m14, float m21, float m22, float m23, float m24, float m31, float m32, float m33, float m34, float m41, float m42, float m43, float m44) 지정된 값을 사용하여 float4x4를 만듭니다.
explicit float4x4(float3x2 value) float3x2에서 float4x4를 만듭니다.
float4x4(Microsoft::?Graphics::?Canvas::?Numerics::?Matrix4x4 const& value) Microsoft.Graphics.Canvas.Numerics.Matrix4x4를 float4x4로 변환합니다.

Functions

속성 Description
float4x4 make_float4x4_billboard(float3 const& objectPosition, float3 const& cameraPosition, float3 const& cameraUpVector, float3 const& cameraForwardVector) 오른손 좌표계를 사용하여 지정된 개체 위치를 회전하는 구형 광고판을 만듭니다.
float4x4 make_float4x4_?constrained_billboard(float3 const& objectPosition, float3 const& cameraPosition, float3 const& rotateAxis, float3 const& cameraForwardVector, float3 const& objectForwardVector) 오른손 좌표계를 사용하여 지정된 축을 중심으로 회전하는 원통형 광고판을 만듭니다.
float4x4 make_float4x4_translation(float3 const& position) 변환 행렬을 만듭니다.
float4x4 make_float4x4_translation(float xPosition, float yPosition, float zPosition) 변환 행렬을 만듭니다.
float4x4 make_float4x4_scale(float xScale, float yScale, float zScale) 원본을 중심으로 크기 조정 매트릭스를 만듭니다.
float4x4 make_float4x4_scale(float xScale, float yScale, float zScale, float3 const& centerPoint) 지정된 지점을 중심으로 크기 조정 매트릭스를 만듭니다.
float4x4 make_float4x4_scale(float3 const& scales) 원본을 중심으로 크기 조정 매트릭스를 만듭니다.
float4x4 make_float4x4_scale(float3 const& scales, float3 const& centerPoint) 지정된 지점을 중심으로 크기 조정 매트릭스를 만듭니다.
float4x4 make_float4x4_scale(float scale) 원본을 중심으로 크기 조정 매트릭스를 만듭니다.
float4x4 make_float4x4_scale(float scale, float3 const& centerPoint) 지정된 지점을 중심으로 크기 조정 매트릭스를 만듭니다.
float4x4 make_float4x4_rotation_x(float radians) 원점 가운데에 x축 회전 행렬을 만듭니다.
float4x4 make_float4x4_rotation_x(float radians, float3 const& centerPoint) 지정된 지점을 중심으로 x축 회전 행렬을 만듭니다.
float4x4 make_float4x4_rotation_y(float radians) 원점 가운데에 y축 회전 행렬을 만듭니다.
float4x4 make_float4x4_rotation_y(float radians, float3 const& centerPoint) 지정된 지점을 중심으로 y축 회전 행렬을 만듭니다.
float4x4 make_float4x4_rotation_z(float radians) 원점 가운데에 z축 회전 행렬을 만듭니다.
float4x4 make_float4x4_rotation_z(float radians, float3 const& centerPoint) 지정된 지점을 중심으로 z축 회전 행렬을 만듭니다.
float4x4 make_float4x4_from_axis_angle(float3 const& axis, float angle) 임의의 벡터를 중심으로 회전하는 행렬을 만듭니다.
float4x4 make_float4x4_perspective_field_of_view(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance) 오른손 좌표계를 사용하여 보기 필드를 기반으로 원근 투영 행렬을 만듭니다.
float4x4 make_float4x4_perspective(float width, float height, float nearPlaneDistance, float farPlaneDistance) 오른손 좌표계를 사용하여 원근 투영 행렬을 만듭니다.
float4x4 make_float4x4_perspective_off_center(float left, float right, float bottom, float top, float nearPlaneDistance, float farPlaneDistance) 오른손 좌표계를 사용하여 사용자 지정된 원근 투영 행렬을 만듭니다.
float4x4 make_float4x4_orthographic(float width, float height, float zNearPlane, float zFarPlane) 오른손 좌표계를 사용하여 직교 투영 행렬을 만듭니다.
float4x4 make_float4x4_?orthographic_off_center(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane) 오른손 좌표계를 사용하여 사용자 지정된 직교 프로젝션 매트릭스를 만듭니다.
float4x4 make_float4x4_look_at(float3 const& cameraPosition, float3 const& cameraTarget, float3 const& cameraUpVector) 오른손 좌표계를 사용하여 뷰 행렬을 만듭니다.
float4x4 make_float4x4_world(float3 const& position, float3 const& forward, float3 const& up) 오른손 좌표계를 사용하여 월드 행렬을 만듭니다. 개체를 3D 공간에 배치하는 데 사용할 수 있습니다.
float4x4 make_float4x4_from_quaternion(quaternion const& quaternion) 쿼터니언에서 회전 행렬을 만듭니다.
float4x4 make_float4x4_from_yaw_pitch_roll(float yaw, float pitch, float roll) 지정된 요, 피치 및 롤에서 회전 행렬을 만듭니다.
float4x4 make_float4x4_shadow(float3 const& lightDirection, plane const& plane) 지정된 광원에서 그림자를 만드는 것처럼 지정된 평면에 기하 도형을 평면화하는 행렬을 만듭니다.
float4x4 make_float4x4_reflection(plane const& value) 지정된 평면을 중심으로 하는 좌표계를 반영하는 행렬을 만듭니다.
bool is_identity(float4x4 const& value) ID 행렬인지 여부를 확인합니다.
float determinant(float4x4 const& value) 행렬의 결정자를 계산합니다.
float3 translation(float4x4 const& value) 행렬의 변환 벡터를 가져옵니다.
bool invert(float4x4 const& matrix, _Out_ float4x4* result) 행렬의 역방향을 계산합니다. 행렬을 반전할 수 있으면 true를 반환합니다. false이면 이고, 그렇지 않으면 입니다.
bool decompose(float4x4 const& matrix, _Out_ float3* scale, _Out_ quaternion* rotation, _Out_ float3* translation) SRT(배율/회전/변환) 행렬에서 스칼라, 변환 및 회전 구성 요소를 추출합니다. 행렬을 분해할 수 있으면 true를 반환합니다. false이면 이고, 그렇지 않으면 입니다.
float4x4 transform(float4x4 const& value, quaternion const& rotation) 쿼터니언 회전을 적용하여 행렬을 변환합니다.
float4x4 transpose(float4x4 const& matrix) 행렬의 구성 요소를 대각선을 따라 변환합니다.
float4x4 lerp(float4x4 const& matrix1, float4x4 const& matrix2, float amount) 두 행렬의 해당 값을 선형으로 보간합니다.

메서드

속성 Description
static float4x4 identity() ID 행렬의 instance 반환합니다.

연산자

속성 Description
float4x4 operator+ (float4x4 const& value1, float4x4 const& value2) 행렬의 각 구성 요소를 다른 행렬에 추가합니다.
float4x4 operator- (float4x4 const& value1, float4x4 const& value2) 다른 행렬에서 행렬의 각 구성 요소를 뺍니다.
float4x4 operator* (float4x4 const& value1, float4x4 const& value2) 행렬을 다른 행렬과 곱합니다. 이렇게 하면 두 변환이 연결됩니다.
float4x4 operator* (float4x4 const& value1, float value2) 행렬의 각 구성 요소를 스칼라 값으로 곱합니다.
float4x4 operator- (float4x4 const& value) 행렬의 각 구성 요소를 부정합니다.
float4x4& operator+= (float4x4& value1, float4x4 const& value2) 현재 위치에서 행렬의 각 구성 요소를 다른 행렬에 추가합니다.
float4x4& operator-= (float4x4& value1, float4x4 const& value2) 현재 위치는 다른 행렬에서 행렬의 각 구성 요소를 뺍니다.
float4x4& operator*= (float4x4& value1, float4x4 const& value2) 현재 위치에서 행렬을 다른 행렬에 곱합니다. 이렇게 하면 두 변환이 연결됩니다.
float4x4& operator*= (float4x4& value1, float value2) 현재 위치에서 행렬의 각 구성 요소를 스칼라 값으로 곱합니다.
bool operator== (float4x4 const& value1, float4x4 const& value2) float4x4의 두 인스턴스가 같은지 여부를 결정합니다.
bool operator!= (float4x4 const& value1, float4x4 const& value2) float4x4의 두 인스턴스가 같지 않은지 여부를 결정합니다.
operator Microsoft::?Graphics::?Canvas::?Numerics::?Matrix4x4() const float4x4를 Microsoft.Graphics.Canvas.Numerics.Matrix4x4로 변환합니다.

필드

이름 Description
float m11 행렬의 행 1 열 1에 있는 값입니다.
float m12 행렬의 행 1 열 2에 있는 값입니다.
float m13 행렬의 1열 3에 있는 값입니다.
float m14 행렬의 행 1 열 4에 있는 값입니다.
float m21 행렬의 행 2 열 1에 있는 값입니다.
float m22 행렬의 행 2 열 2에 있는 값입니다.
float m23 행렬의 행 2 열 3에 있는 값입니다.
float m24 행렬의 행 2 열 4에 있는 값입니다.
float m31 행렬의 행 3 열 1에 있는 값입니다.
float m32 행렬의 행 3 열 2에 있는 값입니다.
float m33 행렬의 행 3 열 3에 있는 값입니다.
float m34 행렬의 3열 4에 있는 값입니다.
float m41 행렬의 행 4 열 1에 있는 값입니다.
float m42 행렬의 행 4 열 2에 있는 값입니다.
float m43 행렬의 행 4 열 3에 있는 값입니다.
float m44 행렬의 행 4 열 4에 있는 값입니다.

요구 사항

요구 사항
네임스페이스 Windows::Foundation::Numerics
헤더
Windowsnumerics.h

추가 정보

windowsnumerics.h API