PDA

نسخه کامل مشاهده نسخه کامل : دوران مربع



shahinparsa1328
22-10-2012, 22:36
با سلام
می شود لطفا درمورد چگونگی چرخش مربع توضیح کامل بدهید.
لطفا کمک کنید.
Point[] pp = new Point[5];
pp[0] = new Point(0, 0);
pp[1] = new Point(20, 0);
pp[2] = new Point(20, 20);
pp[3] = new Point(0, 20);


Graphics G1 = pictureBox1.CreateGraphics();

G1.RotateTransform(i);
G1.DrawPolygon(Pens.Black, pp);
با تشکر

_H2_
28-10-2012, 01:56
سلام
جابجایی و بزرگنمایی و چرخش و... در محیط دو بعدی و سه بعدی همواره از اصول نگاشت نقطه-ماتریس در ریاضی پیروی میکنند......
که در خصوص کاربرد مدنظر شما میتوان گفت، چرخش همواره حول مرکز مختصات (0,0) انجام خواهد شد که در دنیای دوبعدی رایانه معمولاً در محل بالا-چپ قرار دارد.

حال اگر شما نیاز به چرخش حول نقطه دیگری داشته باشید میتوانید این عمل را با دو انتقال انجام دهید.
یعنی اول تصویر را به محل مختصات حرکت دهید و بچرخانید و مجدد به محل اصلی باز گردانید!
شاید بنظرتان عجیب برسد و کمی دوباره کاری باشد ولی در واقع این توصیف من برای درک شما است و اینچنین نیست.
با دادن فرامین فوق یک ماتریس نگاست تولید میشود که شامل تمام عملیات های فوق خواهد بود همانطورکه برای انتقال و دوران و بزرگنمایی عادی ماتریس نگاشتی خواهیم داشت ...


کد زیر را (در رویداد Paint) آزمایش کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

شب خوش.