PDA

View Full Version : دریافت مختصات



r_s1389@yahoo.com
چهارشنبه 26 مهر 1391, 11:40 صبح
سلام دوستان
من میخواستم یه برنامه ای بنویسم که با کلیک کردن در سه نقطه اول مختصات اون ها رو ذخیره کنه بعد یخوام تعداد پیکسل هاش رو بشمرم
اگه میشه تا اونجایی که میدونید کمکم کنید ممنون میشم

Mahmoud Zaad
چهارشنبه 26 مهر 1391, 12:51 عصر
سلام
شما می تونید یه لیست تعریف کنید و نقطه ها رو در اون ذخیره کنید:
List<Point> p = new List<Point>();
کد زیر رو مثلا در رویداد MouseClick بنویسید
p.Add(e.Location);
مثلا اگه یه لیست باکس هم داشته باشید می تونید نقطه هایی رو که اضافه میشن رو ببینید:
listBox1.Items.Add(p[p.Count - 1].X.ToString() + " " + p[p.Count - 1].Y.ToString());
برای خالی شدن لیست هم
p.Clear();

در مورد سوال دوم هم دقیقاً متوجه نشدم یعنی مثلا یه مثلث با این سه نقطه تشکیل بشه و ...؟

r_s1389@yahoo.com
پنج شنبه 27 مهر 1391, 10:37 صبح
سلام
آره دوست عزیز یک مثلث درست بشه
در واقع من میخوام تعداد پیکسل های این مثلث رو که با استفاده از اون نقاط درست شده را بدست اورم

r_s1389@yahoo.com
پنج شنبه 27 مهر 1391, 10:41 صبح
دوست عزیز ممنون که به سوال ما پاسخ میدین
میشه یکم این کد را توضیح بدین
listBox1.Items.Add(p[p.Count - 1].X.ToString() + " " + p[p.Count - 1].Y.ToString());

Mahmoud Zaad
پنج شنبه 27 مهر 1391, 11:02 صبح
در مورد سوال اول (پیدا کردن تعداد پیکسل های محصور در یک مثلث) فکر می کنم یه مقدار کار داره . در واقع باید مساحت مثلث رو به پیکسل حساب کنید. مثلا دو نقطه رو به عنوان قاعده در نظر بگیرید و از راس سوم یه خط فرضی بر قاعده عمود کنید(به عنوان ارتفاع) و اندازه این خط فرضی رو به دست بیارید بعد هم که مساحت رو حساب کنید.
سوال دوم ، زمانی که روی پیکچر باکس کلیک می کنید X و Y اون پیکسل رو توی لیست باکس نشون میده (بیشتر جهت اطلاع خود شماست که دقیقاً کجا کلیک شده )

-------------------------
پ.ن. برای به دست آوردن ارتفاع می تونید از قواعد هندسی برای تعیین فاصله نقطه از خط استفاده کنید.

r_s1389@yahoo.com
پنج شنبه 27 مهر 1391, 22:18 عصر
حالا شما یه کتابی در این مورد ندارین که به کمک ما بیاد؟
در ضمن از لطفتون ممنون