View Full Version : کشیدن خط
siroosasadi
جمعه 02 مهر 1389, 14:45 عصر
سلام دوستان
میخواستم یه خط بکشم که مثلا نقطه اول (x1,y1(100,100) و طول 10 و زاویه 30 درجه.
حالا باید نقطه دوم رو پیدا کرد ؟
دوستان تا یه جاهایی کار را کردم ولی جواب نداده.
اگه کمک کنین ممنون می شم.
اگه قطعه کدی یا سایتی هم باشه ممنون میشم.
:متفکر:
Felony
جمعه 02 مهر 1389, 15:33 عصر
Canvas.MoveTo(X1, Y1);
Canvas.LineTo(X2, Y2);
SAASTN
جمعه 02 مهر 1389, 15:55 عصر
خوب این که ریاضیه، باید تو فرومای ریاضی دنبالش بگردی!
این سیستم شما سیستم مختصات قطبیه، برای ترسیمش:
Canvas.LineTo(Round(X0 + R * Cos(Alpha), Round(Y0 + R * Sin(Alpha)));
فقط توجه داشته باش که کل محاسبات مثلثاتی بر اساس رادیان انجام میشه، اگه بخای درجه رو تبدیل به رادیان کنی یا بلعکس باید از DegToRad و RadToDeg توی یونیت Math استفاده کنی.
نکته دیگه تفاوت مبدا و جهت محورهای ریاضی با سیستم پیکسلی مونیتوره، اگه بخوای انطباق رو ایجاد کنی موقع ترسیم باید Y تمام نقاط رو منفی و همه X ها رو با نصف عرض صفحه ترسیم و همه Y ها رو با نصف ارتفاع صفحه ترسیم جمع کنی.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.