ไซน์และโคไซน์ของ t ตามลำดับพิกัด y และ x ของจุดบนวงกลมที่ทำมุม t กับแกน x ไม่จำเป็นต้องทำในสี่เหลี่ยมผืนผ้า! สี่เหลี่ยมผืนผ้าประกอบด้วยสี่บรรทัด หากt
ไปจาก0
ถึง1
ก็ไปถึงจุด(px,py)
ที่t==0
และไป(qx,qy)
ที่t==1
กับสายที่กำหนดโดย:
(l(x),l(y)) = (t*qx + (1-t)*px, t*qy + (1-t)*py)
ถ้าแทน0
และ1
คุณเวลาผ่านไปจากt0
การt1
ที่คุณสามารถทำให้ปกติเวลาแรกและจากนั้นให้ใช้สูตรข้างต้น
(l(x),l(y)) = ( ((t-t0)/(t1-t0))*qx + ((t1-t)/(t1-t0))*px, ((t-t0)/(t1-t0))*qy + ((t1-t)/(t1-t0))*py )
ทีนี้สำหรับสี่เหลี่ยมของคุณให้แบ่งเป็นสี่กรณีด้วยif
สำหรับแต่ละขอบที่ครอบคลุมหนึ่งช่วงเวลาและใช้การเคลื่อนที่ของเส้น
โปรดสังเกตว่าถ้าสี่เหลี่ยมผืนผ้าของคุณอยู่ในแนวแกนคุณจะมีค่า x หรือค่า y ซึ่งคงที่เสมอ ตัวอย่างเช่นสำหรับ t ระหว่าง0
และa/4
(และสมมติว่า (X, Y) อยู่ด้านล่างซ้าย)
(l(x),l(y)) = ((4*t/a)*(X+Width) + (1-4*t/a)*(X), Y+Height)
ซึ่งก็เท่ากับ:
(l(x),l(y)) = (X + (1-4*t/a)*(Width), Y+Height)