PDA

View Full Version : مبتدی: area move circle



esmaeel_realmadrid
پنج شنبه 14 بهمن 1389, 17:51 عصر
سلام
ميخوام دايره اي كه در داخل دايره بزرگتره است در محدوده دايره بزرگتر حركت كنه و از ان خارج نشهيعني دايره A فقط در داخل دايره بزرگتر B حركت كنه واگر به ان برخورد كرد برگردد وبه حركت خود ادامه دهد.واگر دايرهB در اثر برخورد با دايره ديگري از بين رفت دايره A ازاد ميشود و به حركت خود در فرم ادامه مي دهد لطفا كمكك كنيد.كه چطوري اينه بيان كنم. دايره A در داخل دايرهB است .دايره بايد ترسيم شود و عكس نيست
با تشكر

rezatati
پنج شنبه 14 بهمن 1389, 19:47 عصر
اولا شما باید با توابع GDI+ اشنا باشین و بتونین دایره و مثلث و سایر اشکال هندسی را در دات نت رسم کنین که این لینک می تونه کمکتون کنه
http://www.c-sharpcorner.com/uploadfile/mahesh/gdi_plus12092005070041am/gdi_plus.aspx
و اگه لینکهای زیادی خواستی کافی است تو گوگل یک عبارت
GDI+In C# بنویسی یه دنیا لینک میاره

دوما برای کاری که شما می خواهین البته توضیحات شما کافی نیست ولی با این حال شما دایره داخلی را با توجه به جهت و مقداری که می خواهی حرکت میدی و حرکتش هم این طوری هستش که اگه در حال حاضر در نقطه ای دایره ای با رنگ قرمز کشیدی ابتدا باید اونو پاک کنی ببین اگه خود gdi چنین تابعی داره که این کارو با این تابع بکن وگرنه برای پاک کردن این دایره باید دایره ای با بزرگی این دایره و با رنگ پس زمینه در همان جا رسم کنی تا دایره ی قبلی شما پاک بشه و در نقطه ی جدید یک دایره با رنگ قرمز بکشی تا دایره ی شما حرکت کنه و واسه تست حالت برخورد باید تست کنی که فاصله ی مرکز دایره از کمان دایره ی بزرگتر کمتر باشه که این هم یه الگوریتم خودشو داره که امیدوارم دوستان کمک کنن و من الان حضور ذهن ندارم فعلا تا اینجا یک دایره بکش و اونو حرکتش بده تا ببینیم چی میشه اگه نتونستی باز من کمکت می کنم ولی الان وقت ندارم فعلا تو این زمینه ای که گفتم کار کن امیدوارم که موفق باشی