سلام
من کد پایین که مربوط به رسم مربع هست رو می خوام به رسم لوزی تبدیل کنم
start_pnt = new Point(e.X, e.Y);
g.DrawRectangle(p, new Rectangle(start_pnt_X, start_pnt_Y, width, height));
break
لطفا راهنمایی بفرمایید.
سلام
من کد پایین که مربوط به رسم مربع هست رو می خوام به رسم لوزی تبدیل کنم
start_pnt = new Point(e.X, e.Y);
g.DrawRectangle(p, new Rectangle(start_pnt_X, start_pnt_Y, width, height));
break
لطفا راهنمایی بفرمایید.
سلام
دوست عزیز مشکل شما اینه که می خواین دو تا شکل که هیچ ربطی به هم ندارند رو به هم تبدیل کنید.
مربع مربع است و لوزی لوزی.
برای رسم لوزی (به انگلیسی میشه Diamond ) شما کافی یک مثلث متساوی الساقین (مثلثی که دو ضلع آن با هم برابر است ) رسم کنید سپس آنرا روی قاعده ی اصلی قرینه کنید و یک کپی از آن تهییه کنید.
توجه کنید اگر روی یکی از ساقها قرینه و کپی کنید به متوازی الاضلاع می رسین.
یک پانل به اندازه 300X300 بر روی فرم قرار دهید.یک باتن هم قرار بده و توی ایونت کلیکش این قطعه کد رو بنویسید:
Pen myPen = new Pen(Color.Blue);
Point[] myPointArray = { new Point(0, 30), new Point(50, 10), new Point(50, 50) };
Matrix mtx = new Matrix();
Graphics myGraphics = panel1.CreateGraphics();
myGraphics.DrawPolygon(myPen, myPointArray);
mtx.RotateAt(180, new PointF(50, 30));
mtx.TransformPoints(myPointArray);
myGraphics.DrawPolygon(myPen, myPointArray);
myPen.Dispose();
آخرین ویرایش به وسیله Saeed.Masoumi : چهارشنبه 26 خرداد 1389 در 00:31 صبح دلیل: myPen.Dispose() بازهم یادم رفت :دی
آقا دمت گرم
خیلی ممنون
من در واقع می خواستم کدی رو که گذاشته بودم یه جوری تغییر بدم که به لوزی برسم
اگه مربع یکمی چرخش بخوره شاید به شکل لوزی در بیاد.
من دیدم که کسی جواب نمیده،گفتم شاید نحوه سوال پرسیدن من اشتباه باشه،در نتیجه اومدم و سوالاتم رو جزئی تر کردم.
ولی این چیزی که شما گفتین خیلی کامله و من سعی می کنم از این برای سایر قسمت های پروژه اصلیم استفاده کنم.
به هر جهت خیلی خیلی ممنون که وقت گذاشتید.