struktur float4x4

Matriks 4x4, digunakan untuk transformasi 3D.

Jenis matriks ini menggunakan tata letak vektor baris. X, y, dan z dari vektor terjemahan matriks ini sesuai dengan bidang m41, m42, m43.

Jenis ini hanya tersedia di C++. Setara .NET-nya adalah System.Numerics.Matrix4x4.

Konstruktor

Nama Deskripsi
float4x4() Membuat float4x4 yang tidak diinisialisasi.
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) Membuat float4x4 dengan nilai yang ditentukan.
explicit float4x4(float3x2 value) Membuat float4x4 dari float3x2.
float4x4(Microsoft::?Graphics::?Canvas::?Numerics::?Matrix4x4 const& value) Mengonversi Microsoft.Graphics.Canvas.Numerics.Matrix4x4 menjadi float4x4.

Fungsi

Nama Deskripsi
float4x4 make_float4x4_billboard(float3 const& objectPosition, float3 const& cameraPosition, float3 const& cameraUpVector, float3 const& cameraForwardVector) Membuat billboard bulat yang berputar di sekitar posisi objek tertentu, menggunakan sistem koordinat dengan tangan kanan.
float4x4 make_float4x4_?constrained_billboard(float3 const& objectPosition, float3 const& cameraPosition, float3 const& rotateAxis, float3 const& cameraForwardVector, float3 const& objectForwardVector) Membuat billboard silindris yang berputar di sekitar sumbu tertentu, menggunakan sistem koordinat tangan kanan.
float4x4 make_float4x4_translation(float3 const& position) Membuat matriks terjemahan.
float4x4 make_float4x4_translation(float xPosition, float yPosition, float zPosition) Membuat matriks terjemahan.
float4x4 make_float4x4_scale(float xScale, float yScale, float zScale) Membuat matriks penskala, yang berpusat pada asal.
float4x4 make_float4x4_scale(float xScale, float yScale, float zScale, float3 const& centerPoint) Membuat matriks penskala, berpusat pada titik yang ditentukan.
float4x4 make_float4x4_scale(float3 const& scales) Membuat matriks penskala, yang berpusat pada asal.
float4x4 make_float4x4_scale(float3 const& scales, float3 const& centerPoint) Membuat matriks penskala, berpusat pada titik yang ditentukan.
float4x4 make_float4x4_scale(float scale) Membuat matriks penskala, yang berpusat pada asal.
float4x4 make_float4x4_scale(float scale, float3 const& centerPoint) Membuat matriks penskala, berpusat pada titik yang ditentukan.
float4x4 make_float4x4_rotation_x(float radians) Membuat matriks rotasi sumbu x, berpusat pada asal.
float4x4 make_float4x4_rotation_x(float radians, float3 const& centerPoint) Membuat matriks rotasi sumbu x, berpusat pada titik yang ditentukan.
float4x4 make_float4x4_rotation_y(float radians) Membuat matriks rotasi sumbu y, berpusat pada asal.
float4x4 make_float4x4_rotation_y(float radians, float3 const& centerPoint) Membuat matriks rotasi sumbu y, berpusat pada titik yang ditentukan.
float4x4 make_float4x4_rotation_z(float radians) Membuat matriks rotasi sumbu z, berpusat pada asal.
float4x4 make_float4x4_rotation_z(float radians, float3 const& centerPoint) Membuat matriks rotasi sumbu z, berpusat pada titik yang ditentukan.
float4x4 make_float4x4_from_axis_angle(float3 const& axis, float angle) Membuat matriks yang berputar di sekitar vektor arbitrer.
float4x4 make_float4x4_perspective_field_of_view(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance) Membuat matriks proyeksi perspektif berdasarkan bidang tampilan, menggunakan sistem koordinat dengan tangan kanan.
float4x4 make_float4x4_perspective(float width, float height, float nearPlaneDistance, float farPlaneDistance) Membuat matriks proyeksi perspektif, menggunakan sistem koordinat dengan tangan kanan.
float4x4 make_float4x4_perspective_off_center(float left, float right, float bottom, float top, float nearPlaneDistance, float farPlaneDistance) Membuat matriks proyeksi perspektif yang disesuaikan, menggunakan sistem koordinat tangan kanan.
float4x4 make_float4x4_orthographic(float width, float height, float zNearPlane, float zFarPlane) Membuat matriks proyeksi ortografi, menggunakan sistem koordinat dengan tangan kanan.
float4x4 make_float4x4_?orthographic_off_center(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane) Membuat matriks proyeksi ortografis yang disesuaikan, menggunakan sistem koordinat dengan tangan kanan.
float4x4 make_float4x4_look_at(float3 const& cameraPosition, float3 const& cameraTarget, float3 const& cameraUpVector) Membuat matriks tampilan, menggunakan sistem koordinat dengan tangan kanan.
float4x4 make_float4x4_world(float3 const& position, float3 const& forward, float3 const& up) Membuat matriks dunia, menggunakan sistem koordinat tangan kanan. Ini dapat digunakan untuk memosisikan objek dalam ruang 3D.
float4x4 make_float4x4_from_quaternion(quaternion const& quaternion) Membuat matriks rotasi dari quaternion.
float4x4 make_float4x4_from_yaw_pitch_roll(float yaw, float pitch, float roll) Membuat matriks rotasi dari yaw, pitch, dan roll tertentu.
float4x4 make_float4x4_shadow(float3 const& lightDirection, plane const& plane) Membuat matriks yang meratakan geometri ke dalam bidang tertentu seolah-olah mentransmisikan bayangan dari sumber cahaya tertentu.
float4x4 make_float4x4_reflection(plane const& value) Membuat matriks yang mencerminkan sistem koordinat tentang bidang tertentu.
bool is_identity(float4x4 const& value) Memeriksa apakah ini adalah matriks identitas.
float determinant(float4x4 const& value) Menghitung penentu matriks.
float3 translation(float4x4 const& value) Mendapatkan vektor terjemahan matriks.
bool invert(float4x4 const& matrix, _Out_ float4x4* result) Menghitung inversi matriks. Mengembalikan true jika matriks dapat dibalik; false jika tidak.
bool decompose(float4x4 const& matrix, _Out_ float3* scale, _Out_ quaternion* rotation, _Out_ float3* translation) Mengekstrak komponen skalar, terjemahan, dan rotasi dari matriks skala 3D/putar/terjemahan (SRT). Mengembalikan true jika matriks dapat diurai; false jika tidak.
float4x4 transform(float4x4 const& value, quaternion const& rotation) Mengubah matriks dengan menerapkan rotasi kuaternion.
float4x4 transpose(float4x4 const& matrix) Mengubah urutan komponen matriks di sepanjang diagonalnya.
float4x4 lerp(float4x4 const& matrix1, float4x4 const& matrix2, float amount) Secara linier menginterpolasi antara nilai yang sesuai dari dua matriks.

Metode

Nama Deskripsi
static float4x4 identity() Mengembalikan instans matriks identitas.

Operator

Nama Deskripsi
float4x4 operator+ (float4x4 const& value1, float4x4 const& value2) Menambahkan setiap komponen matriks ke matriks lain.
float4x4 operator- (float4x4 const& value1, float4x4 const& value2) Mengurangi setiap komponen matriks dari matriks lain.
float4x4 operator* (float4x4 const& value1, float4x4 const& value2) Mengalikan matriks dengan matriks lain. Ini memiliki efek menggabungkan dua transformasi.
float4x4 operator* (float4x4 const& value1, float value2) Mengalikan setiap komponen matriks dengan nilai skalar.
float4x4 operator- (float4x4 const& value) Meniadakan setiap komponen matriks.
float4x4& operator+= (float4x4& value1, float4x4 const& value2) Di tempat menambahkan setiap komponen matriks ke matriks lain.
float4x4& operator-= (float4x4& value1, float4x4 const& value2) Di tempat mengurangi setiap komponen matriks dari matriks lain.
float4x4& operator*= (float4x4& value1, float4x4 const& value2) Di tempat mengalikan matriks dengan matriks lain. Ini memiliki efek menggabungkan dua transformasi.
float4x4& operator*= (float4x4& value1, float value2) Di tempat mengalikan setiap komponen matriks dengan nilai skalar.
bool operator== (float4x4 const& value1, float4x4 const& value2) Menentukan apakah dua instans float4x4 sama.
bool operator!= (float4x4 const& value1, float4x4 const& value2) Menentukan apakah dua instans float4x4 tidak sama.
operator Microsoft::?Graphics::?Canvas::?Numerics::?Matrix4x4() const Mengonversi float4x4 ke Microsoft.Graphics.Canvas.Numerics.Matrix4x4.

Bidang

Nama Deskripsi
float m11 Nilai pada baris 1 kolom 1 matriks.
float m12 Nilai pada baris 1 kolom 2 dari matriks.
float m13 Nilai pada baris 1 kolom 3 dari matriks.
float m14 Nilai pada baris 1 kolom 4 matriks.
float m21 Nilai pada baris 2 kolom 1 matriks.
float m22 Nilai pada baris 2 kolom 2 matriks.
float m23 Nilai pada baris 2 kolom 3 dari matriks.
float m24 Nilai pada baris 2 kolom 4 matriks.
float m31 Nilai pada baris 3 kolom 1 dari matriks.
float m32 Nilai pada baris 3 kolom 2 matriks.
float m33 Nilai pada baris 3 kolom 3 dari matriks.
float m34 Nilai pada baris 3 kolom 4 matriks.
float m41 Nilai pada baris 4 kolom 1 matriks.
float m42 Nilai pada baris 4 kolom 2 dari matriks.
float m43 Nilai pada baris 4 kolom 3 dari matriks.
float m44 Nilai pada baris 4 kolom 4 matriks.

Persyaratan

Persyaratan Nilai
Ruang nama Windows::Foundation::Numerics
Header
Windowsnumerics.h

Lihat juga

API windowsnumerics.h