آشنایی با گرافیک در زبان سی شارپ #C

آشنایی با گرافیک در زبان سی شارپ #C
در این پست با گرافیک آشنا شده و پردازش آنها را در زبان C# خواهید آموخت. هر کسی که با سی شارپ کار کند باید با این مفاهیم نیز آشنایی داشته باشد زیرا عملکرد C# را با کنترل های موجود در آن نشان میدهد. بحث راجع به برنامه نویسی گرافیکی حقایق مهمی راجع به کنترل ها ارائه میکند.
ویندوز در حالت گرافیکی کار میکند. کسانی که با Dos یا یونیکس کار میکنند ممکن است به تفاوت محیط گرافیکی و متنی پی نبرند. علاوه بر این جذابیت محیط گرافیکی بهتر است. با این که محیط گرافیکی از محیط متنی کندتر است، اغلب افراد به محیط گرافیکی علاقه بیشتری دارند. محیط متنی از 25*80 کاراکتر تشکیل شده است در حالیکه صفحه گرافیکی 640*480 پیکسل است. کوچکترین واحد گرافیکی را پیکسل گویند. دقت صفحه گرافیکی از دقت صفحه متنی بیشتر است، لذا جذابیت تصاویر در آن نیز زیاد است.
فضاهای نام مربوط به گرافیک در زبان C#
برای استفاده از امکانات گرافیک باید فضای نام مربوط به گرافیک را به برنامه اضافه کرد. برخی از این فضاهای نام عبارتنداز:
► فضای نام System.Drawing : کلاس های گرافیکی از قبیل BitMap، Font، Brushes، Image، Icon و غیره در این فضای نام قرار دارند.
► فضای نام System.Drawing.Text : کلاسهای پشتیبانی چاپ متن در این فضای نام قرار دارند.
► فضای نام System.Drawing.Image : کلاسهای اصلی پردازش تصاویر در این فضای نام قرار دارند.
► فضای نام System.Drawing. Drawing2D : کلاسهای گرافیک دو بعدی پیشرفته و گرافیک برداری در این فضای نام قرار دارند.
برای استفاده از کلاسهای مربوط به گرافیک، باید فضای نامی که کلاس را پشتیبانی میکند، به برنامه اضافه شود. این کار با دستور using انجام میشود.
انواع اشیای GDI
قبل از اینکه به گرافیک بپردازیم، باید به اشیایی که برای ترسیم به کار میروند بپردازیم. بعضی از اشیا GDI+ مهم که با DC به کار میروند، عبارتنداز:
► شیء Pen : برای رسم خطوط به کا میرود. با استفاده از این شی میتوان نوع خط، رنگ و ضخامت آن را تعیین کرد.
► شی Brush : برای رنگ آمیزی و پر کردن سطوح به کار میرود. شی Brush معمولا برای پر کردن یک شکل بسته به کار میرود. برای رنگ آمیزی اشکال، ابتدا باید آن شی را با Pen رسم کرد.
► شی Bitmap : برای نمایش تصاویر بیتی به کار میرود.
► شی Font برای تعیین نوع فونت، ضخامت آن و غیره به کار میرود.
ایجاد اشیای گرافیکی
برای رسم اشکال گرافیکی در فرم یا کنترل مراحل زیر را انجام دهید:
1. تعریف متغیری از نوع Graphics
2. ایجاد شی گرافیک با متد CreateGraphics
دستورات زیر را ببینید:
Graphics objGraph1;
Graphics objGraph2;
objGraph1 = textbox1. CreateGraphics();
objGraph2 = label1. CreateGraphics();
اولین و دومین دستور دو متغیر به نامهای objGraph1 و objGraph2 را ازنوع Graphics معرفی میکنند. سومین دستور کنترل textbox1 را بعنوان محیط رسم گرافیک مربوط به متغیر objGraph1 انتخاب میکند و چهارمین دستور کنترل label1 را محیط ترسیم اشکال گرافیکی مربوط به متغیر objGraph2 انتخاب خواهد کرد.
نوع PointF
پایه رسم اشکال گرافیکی، نقطه است. زیرا اشکال از قبیل خط، دایره ،بیضی و غیره از چند نقطه تشکیل شده اند. هر متغیر در صفحه با دو خاصیت x و y تعیین میشود. برای تعریف یک نقطه در صفحه باید، 1. متغیری از نوع PointF تعریف کنید و 2. خواص x و y مربوط به نقطه را مقداردهی کنید.
روش دیگر تعریف نقطه بصوت زیر است :
PointF PointVar = new PointF (y,x);
نوع Rectangle
این نوع، برای تعریف ابعاد چهارگوش به کار میرود. در این نوع میتوان نقطه شروع، طول و عرض چهارگوش را تعیین کرد. برای تعرف نوع Ractangle مراحل زیر را انجام دهید:
1. نمونه ای از نوع Ractangle تعریف کنید :
Ractangle ractangleVar;
2. خواص نمونه ایجاد شده را مقدار دهی کنید. از جمله خواص : x، y، Height، Width، Bottom، Top، Left، Right و Inflat.
انتخاب فونت
هر کنترل خاصیتی به نام Font دارد که با استفاده از آن میتوان فونت متن ها را تعیین کرد. در ترسیم اشکال گرافیکی برای نمایش متن میتوان فونت متن را تعیین نمود. برای این منظور نیز این مراحل را باید انجام دهید: 1. متغیری از نوع Font تعریف کنید. 2. خواص متغیر تعریف شده را مقداردهی کنید.
استفاده از رنگها
یکی از امکانات جالب سیستم های عامل گرافیکی تنوع انتخاب رنگ میباشد. رنگی را که در سیستم عامل میتوانید تعیین کنید، رنگهای سیستم نام دارند.
سلام مرسی بابت این سایت خوب.من باید یه بازی مثل pacman بنویسم ولی بلد نیستم میشه کمکم کنید ؟؟واقعا نیاز دارم ممنون
با عرض سلام ، شما میتونید پروژتون رو در بخش تماس با ما سفارش بدید ، با تشکر.
سلام داداش تو اینترنت پر آموزش رسم اشکال گرافیکی بیت مپیه اما من دنبال رسم اشکال برداری تو سی شارمم لطفا در دایمیلم منو راهنمایی کنید مرسی خیلی آقایی ! :-)
هدف اصلیم اینه که بتونم خروجی نرم افزار کورل درا که برای ترسیم برداری اسفاده میشرو بخونم توی فرمم نمایش بدم ایکسو وای همهی نقاط اون خط یا شکل رو داشته باشم لطفا برام جوابتون رو به ایمیلم ارسال کنید مرسی
بسیار عالی
بسیار عالی فقط چطوری باید جزوش رو دانلود کرد
این دستراتی را که شما آموزش دادید خوبه ولی اگر بخواهیم که رسم درخت انجام بشه اونم به صورت مرحله به مرحله باید چیکار کنیم؟؟لطفا در این زمینه بنده راهنمایی کنید.