Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah cara saya Memutar Titik 2D Di Sekitar Titik Lain?
Memusingkan Titik tentang Titik Lain (2D)
Untuk menentukan titik yang mentakrifkan bentuk untuk pengesanan perlanggaran, adalah perlu untuk memutar titik di sekeliling titik pangsi. Dalam kes ini, titik pangsi ialah pusat bentuk.
Untuk memutarkan titik p mengelilingi titik lain (cx, cy) dengan sudut sudut dalam radian, ikut langkah berikut:
Terjemahkan titik kembali kepada asal dengan menolak (cx, cy):
p.x -= cx; p.y -= cy;
Putar titik melawan arah jam:
float xnew = p.x * cos(angle) - p.y * sin(angle); float ynew = p.x * sin(angle) + p.y * cos(angle);
Terjemahkan kembali titik dengan menambah (cx, cy ):
p.x = xnew + cx; p.y = ynew + cy;
Menggunakan kaedah ini, anda boleh memutar mana-mana titik di sekeliling mana-mana titik lain titik dan tentukan bentuk objek untuk pengesanan perlanggaran.
Atas ialah kandungan terperinci Bagaimanakah cara saya Memutar Titik 2D Di Sekitar Titik Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!