Class Matrix

Matrix class

Menggantikan Matriks GDI+.

public class Matrix

Konstruktor

NamaKeterangan
Matrix()Menginisialisasi instance baru dari kelas Matrix sebagai matriks identitas.
Matrix(Matrix)Membuat salinan dariMatrix kelas.
Matrix(Rectangle, Point[])Menginisialisasi instance baru dariMatrix kelas ke transformasi geometris yang ditentukan oleh persegi panjang dan susunan titik yang ditentukan.
Matrix(RectangleF, PointF[])Menginisialisasi instance baru dariMatrix kelas ke transformasi geometris yang ditentukan oleh persegi panjang dan susunan titik yang ditentukan.
Matrix(float, float, float, float, float, float)Menginisialisasi instance baru dariMatrix kelas.

Properti

NamaKeterangan
Elements { get; }Mendapat array nilai floating-point yang mewakili elemen iniMatrix .
M11 { get; }Mendapat elemen matriks pada baris pertama kolom pertama. Merupakan skala sepanjang sumbu X.
M12 { get; }Mendapat elemen matriks pada baris pertama kolom kedua. Merupakan geser sepanjang sumbu Y.
M21 { get; }Mendapat elemen matriks pada baris kedua kolom pertama. Merupakan geser sepanjang sumbu X.
M22 { get; }Mendapat elemen matriks pada baris kedua kolom kedua. Merupakan skala sepanjang sumbu Y.
M31 { get; }Mendapat elemen matriks pada baris ketiga kolom pertama. Mewakili terjemahan sepanjang sumbu X.
M32 { get; }Mendapat elemen matriks pada baris ketiga kolom pertama. Merupakan terjemahan sepanjang sumbu Y.

Metode

NamaKeterangan
override Equals(object)Menentukan apakah yang ditentukanObject sama dengan instance ini.
GetElements()Mendapat salinan elemen matriks.
override GetHashCode()Mengembalikan kode hash untuk instance ini.
Multiply(Matrix)Mengalikan Matriks ini dengan matriks yang ditentukan dalam parameter matriks menggunakan (default) Prepend order.
Multiply(Matrix, MatrixOrder)Mengalikan Matriks ini dengan matriks yang ditentukan dalam parameter matriks, dan dalam urutan yang ditentukan dalam parameter urutan.
Reset()Mereset Matriks ini agar memiliki elemen matriks identitas.
Rotate(float)Menerapkan rotasi searah jarum jam dari jumlah yang ditentukan dalam parameter sudut, di sekitar titik asal (koordinat nol x dan y) untuk Matriks ini dalam urutan default (Awali).
Rotate(float, MatrixOrder)Menerapkan rotasi searah jarum jam dari jumlah yang ditentukan dalam parameter sudut, di sekitar titik asal (koordinat nol x dan y) untuk Matriks ini dalam urutan yang ditentukan.
RotateAt(float, PointF)Menerapkan rotasi searah jarum jam di sekitar titik yang ditentukan ke Matriks ini dalam urutan default (Awali).
RotateAt(float, PointF, MatrixOrder)Menerapkan rotasi searah jarum jam di sekitar titik yang ditentukan ke Matriks ini dalam urutan yang ditentukan.
Scale(float, float)Menerapkan vektor skala yang ditentukan (scaleX dan scaleY) ke Matriks ini menggunakan (default) Prepend order.
Scale(float, float, MatrixOrder)Menerapkan vektor skala yang ditentukan (scaleX dan scaleY) untuk iniMatrix menggunakan urutan yang ditentukan.
override ToString()Mengembalikan aString yang mewakili instance ini.
TransformPoints(PointF[])Menerapkan transformasi geometris yang diwakili oleh iniMatrix ke array poin tertentu.
Translate(float, float)Menerapkan vektor terjemahan yang ditentukan untuk iniMatrix menggunakan (default) Prepend order.
Translate(float, float, MatrixOrder)Menerapkan vektor terjemahan yang ditentukan ke Matriks ini dalam urutan yang ditentukan.
static Equals(Matrix, Matrix)Menentukan apakah dua matriks sama.

Bidang

NamaKeterangan
const TypeFlipBit bendera ini menunjukkan bahwa transformasi yang ditentukan oleh objek ini melakukan pembalikan gambar cermin di sekitar beberapa sumbu yang mengubah sistem koordinat tangan kanan yang biasanya menjadi sistem tangan kiri selain konversi yang ditunjukkan oleh bit bendera lainnya. Sistem koordinat tangan kanan adalah salah satu di mana sumbu X positif berputar berlawanan arah jarum jam untuk melapisi sumbu Y positif mirip dengan arah jari-jari di tangan kanan melengkung ketika Anda menatap ujung ibu jari Anda. Sistem koordinat tangan kiri adalah sistem di mana sumbu X positif berputar searah jarum jam untuk melapisi sumbu Y positif yang serupa ke arah jari-jari di tangan kiri Anda melengkung. Tidak ada cara matematis untuk menentukan sudut transformasi pembalikan asli atau pencerminan karena semua sudut pembalikan identik dengan rotasi penyesuaian yang sesuai. CATATAN: TypeFlip ditambahkan setelah GENERAL_TRANSFORM berada dalam sirkulasi public dan bit bendera tidak lagi dapat dengan mudah dinomori ulang tanpa memperkenalkan ketidakcocokan biner di kode luar.
const TypeGeneralRotationBit bendera ini menunjukkan bahwa transformasi yang ditentukan oleh objek ini melakukan rotasi dengan sudut sembarang selain konversi yang ditunjukkan oleh bit bendera lain. Rotasi mengubah sudut vektor dengan jumlah yang sama terlepas dari arah awal vektor dan tanpa mengubah panjang vektor. Bit flag ini saling eksklusif dengan the
const TypeGeneralScaleSkala umum mengalikan panjang vektor dengan jumlah yang berbeda dalam arah x dan y tanpa mengubah sudut antara vektor tegak lurus. Bit flag ini saling eksklusif dengan flag TypeUniformScale.
const TypeGeneralTransformKonstanta ini menunjukkan bahwa transformasi yang ditentukan oleh objek ini melakukan konversi sewenang-wenang dari koordinat input. Jika transformasi ini dapat diklasifikasikan oleh salah satu konstanta di atas, tipenya akan berupa konstanta TypeIdentity atau kombinasi a dari flag yang sesuai bit untuk berbagai konversi koordinat yang dilakukan transformasi ini.
const TypeIdentityTransformasi identitas adalah transformasi yang koordinat outputnya selalu sama dengan koordinat input. Jika transformasi ini selain transformasi identitas, jenisnya adalah konstanta GENERAL_TRANSFORM atau a kombinasi dari bit flag yang sesuai untuk berbagai konversi koordinat yang dilakukan transformasi ini.
const TypeMaskRotationKonstanta ini adalah topeng bit untuk salah satu bit bendera rotasi.
const TypeMaskScaleKonstanta ini adalah topeng bit untuk salah satu bit bendera skala.
const TypeQuadrantRotationBit bendera ini menunjukkan bahwa transformasi yang ditentukan oleh objek ini melakukan rotasi kuadran dengan kelipatan 90 derajat di selain konversi yang ditunjukkan oleh bit bendera lainnya. Rotasi mengubah sudut vektor dengan jumlah yang sama terlepas dari arah aslinya vektor dan tanpa mengubah panjang vektor. Bit bendera ini saling eksklusif dengan bendera TypeGeneralRotation.
const TypeTranslationSuatu translasi memindahkan koordinat dengan jumlah konstan di x dan y tanpa mengubah panjang atau sudut vektor.
const TypeUniformScaleSkala seragam mengalikan panjang vektor dengan jumlah yang sama pada arah x dan y tanpa mengubah sudut antara vektor. Bit flag ini saling eksklusif dengan flag TypeGeneralScale.

Perkataan

Sebagian besar algoritme diambil dari Sun’s AffineTransform.java. Nama Java untuk elemen matriks yang digunakan secara internal. Peta nama java ke yang .net ke deskripsi: m00 Skala M11 X m10 M12 Geser Y m01 M21 Geser X m11 Skala M22d_ m3 Y_x002 Terjemahkan X m12 M32 Terjemahkan Y

Lihat juga