Grafis::TransformPoints(CoordinateSpace,CoordinateSpace,PointF*,INT) metode (gdiplusgraphics.h)
Metode Graphics::TransformPoints mengonversi array titik dari satu ruang koordinat ke ruang koordinat lainnya. Konversi didasarkan pada dunia saat ini dan transformasi halaman dari objek Grafis ini.
Sintaks
Status TransformPoints(
[in] CoordinateSpace destSpace,
[in] CoordinateSpace srcSpace,
[in, out] PointF *pts,
[in] INT count
);
Parameter
[in] destSpace
Jenis: CoordinateSpace
Elemen enumerasi CoordinateSpace yang menentukan ruang koordinat tujuan.
[in] srcSpace
Jenis: CoordinateSpace
Elemen enumerasi CoordinateSpace yang menentukan ruang koordinat sumber.
[in, out] pts
Jenis: Titik*
Penunjuk ke array yang, pada input, menahan titik yang akan dikonversi dan, pada output, menyimpan titik yang dikonversi.
[in] count
Jenis: INT
Bilangan bulat yang menentukan jumlah elemen dalam array pts .
Menampilkan nilai
Jenis: Status
Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .
Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status .
Keterangan
Transformasi dunia mengonversi titik dari ruang koordinat dunia ke ruang koordinat halaman. Transformasi halaman mengonversi titik dari ruang koordinat halaman ke ruang koordinat perangkat. Untuk informasi selengkapnya tentang ruang koordinat, lihat Jenis Sistem Koordinat.
Contoh
Contoh berikut membuat objek Grafis dan mengatur transformasi dunianya ke terjemahan 40 unit ke kanan dan 30 unit ke bawah. Kemudian kode membuat array titik dan meneruskan alamat array tersebut ke metode Graphics::TransformPoints dari objek Grafis yang sama. Titik-titik dalam array diubah oleh transformasi dunia objek Grafis . Kode memanggil metode Graphics::D rawLine dua kali: sekali untuk menghubungkan dua titik sebelum transformasi dan sekali untuk menghubungkan dua titik setelah transformasi.
VOID Example_TransformPoints(HDC hdc)
{
Graphics graphics(hdc);
Pen pen(Color(255, 0, 0, 255));
// Create an array of two Point objects.
Point points[2] = {Point(0, 0), Point(100, 50)};
// Draw a line that connects the two points.
// No transformation has been performed yet.
graphics.DrawLine(&pen, points[0], points[1]);
// Set the world transformation of the Graphics object.
graphics.TranslateTransform(40.0f, 30.0f);
// Transform the points in the array from world to page coordinates.
graphics.TransformPoints(
CoordinateSpacePage,
CoordinateSpaceWorld,
points,
2);
// It is the world transformation that takes points from world
// space to page space. Because the world transformation is a
// translation 40 to the right and 30 down, the
// points in the array are now (40, 30) and (140, 80).
// Draw a line that connects the transformed points.
graphics.ResetTransform();
graphics.DrawLine(&pen, points[0], points[1]);
}
Persyaratan
Klien minimum yang didukung | Windows XP, Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | gdiplusgraphics.h (termasuk Gdiplus.h) |
Pustaka | Gdiplus.lib |
DLL | Gdiplus.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk