مشخصات این فایل
عنوان: پیاده سازی گرافیکی هشت وزیر با C#
فرمت فایل : word( قابل ویرایش)
تعداد صفحات: 18
این مقاله درمورد پیاده سازی گرافیکی هشت وزیر با C# می باشد.
بخشی از تیترها به همراه مختصری از توضیحات هر تیتر از مقاله پیاده سازی گرافیکی هشت وزیر با C#
گام نخست : پیاده سازی مهره و کاشی بازی
مهره نشان دهنده وزیر
را ایجاد کنید.eight_queen ای به نام Windows Application برنامه Visual C# را اجرا کنید و از قسمت Visual Studio
SquareControl.cs به نام User Control یک Add new item بر روی پروژه یتان کلیک راست کنید و از قسمت
کاشی صفحه شطرنج ما را می سازدUser control را ایجاد کنید.در واقع این
این کنترل را به 32, 32 تغییر می دهیم.حالا کاشی تخته یمان آماده شد!size
تخته یمان که به شکل دایره است می رسد(Discs)نوبت به طراحی مهره های
این مهره ها را می توان به 2 صورت پیاده سازی کرد:
با قرار دادن عکس وزیر درون کاشی های شطرنج .1
با کشیدن دایره درون کاشی های شطرنج. .2
که در این مقاله راه دوم را برگزیدیم.یعنی با کد زیر دایره ای با رنگ سفید یا سیاه درون کاشی هایمان رسم می کنیم.
e.Graphics.DrawEllipse(SquareControl.pen, left, top, width, height);
را حذف کردیم و آنرا به گام های بعدی محول کرده ایم.shadow و animationدر این گام ما قسمت .....(ادامه دارد)
گام هشتم : تعریف متغییر های تخته بازی
در پیاده سازی بازی هشت وزیر از متغییر های زیر استفاده شده است :
private Board board;
private eightQueen queen;
private Boolean[, ,] memory;
private Int32 moveNumber;
در اینجا کلاس eighteQueen در واقع نشان دهنده کلاسی است که الگوریتم بازی در آن نوشته شده است.
آرایه سه بعدی memory هم نشان دهنده مکان 8 وزیر در 92 حالت ممکن است.اندیس اول و دوم این آرایه مختص ردیف و ستون بازی می باشد و اندیس سوم این آرایه برای نگه داری 92 حالت ممکن بازی می باشد.این آرایه به صورت Boolean نمایش داده شده است.به این معنا که محتویات این ارایه می تواند True یا False باشد.در صورتی که مهره ای درون صفحه نباشد،مقدار این متغییر False میشود و در صورتی که بر اساس الگوریتم،مهره وزیری در این مکان وجود داشته باشد،مقدار این متغییر True می شود .....(ادامه دارد)
گام پنجم : چیدن مهره ها در صفحه شطرنج
حالا به مهم ترین قسمت طراحیمان که همان طراحی مهره ها می باشد میرسیم.در این مرحله ما باید هر دفعه که
ما فراخوانی می شود، مهرهایمان ها را بچینیم.
می باشد. SquareControl_Paint ای که می توانیم برای اینکار فراخوانی کنیم،eventبهترین
ما فراخوانی میشود. کد های درونUser controlحالا با قرار دادن کدهایمان درون این تابع هربار که
آن اجرا می شود.
برای اینکه ما بهترین حالت نمایش مهره هایمان را داشته باشیم،باید قطعه کدی را بنویسیم که به رایانه بگوییم هدف ما یک گرافیک خوب می باشد نه یک طراحی سریع و یا بدون لرزش. قطعه کد زیر اختیاری است به این معنی که اگر قطعه کد زیر را وارد نکینم، باز هم برنامه ما اجرا می شود ولی گرافیک برنامه ما پایین می آید:
// Set drawing options.
e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
حالا ما با دستور شرطی حالتی را میسنجیم که در صورت برقرار بودن هر یک از 2 شرط زیر دستور مربوطه اجرا شود:
1. کاشی ما در حال حاضر دارای هیچ مهر ای نباشد
2. محتویات جدید کاشی ما مهره سیاه باشد.
if (this.Contents != Board.Empty)
در مرحله بعد،باید مکان مهره را درون صفحه شطرنج مشخص کنیم. همانگونه که از قبل به یاد دارید مهره های ما بصورت یک دایره بوسیله کد زیر روی کاشی هایمان رسم
رسم میکنیم:
e.Graphics.FillEllipse(SquareControl.solidBrush, left, top, width, height);
) مهره هایمان روی کاشی از کد زیر استفاده می کنیمpositionخوب،برای تعیین مکان (
// Get size and position parameters based on the control size.
Int size = (int) (this.Width * (0.80));
int offset = (int) ((this.Width – size) / 2);
int thickness = (int) (size * 0.08);
int width = size;
int height = size;
int left = offset;
int top = offset + (int) Math.Round((double) (size – height) / 2.0);
حالا درون شرط بالا، شرط دیگری را اضافه میکنیم.در این شرط بررسی می کنیم که .....(ادامه دارد)
فهرست مطالب مقاله پیاده سازی گرافیکی هشت وزیر با C#
مقدمه 3
معرفی نویسنده اثر 3
درباره این مقاله 3
مخاطبان این مقاله 3
هدف از نوشتن این مقاله 3
فصل اول : طراحی 4
گام نخست : پیاده سازی مهره و کاشی بازی 4
گام دوم : تعریف پارامترها و نام دامنه برای User Control ها 5
گام سوم : تابع تنظیم ردیف و ستون 6
گام چهارم : ایجاد و نابود سازی User Control ها 7
گام پنجم : چیدن مهره ها در صفحه شطرنج 8
گام ششم : کشیدن حاشیه بین کاشی ها 10
گام هفتم : نگاه کلی بر کلاس SquareControl 11
فصل دوم : پیاده سازی محیط بازی 12
گام هشتم : تعریف متغییر های تخته بازی 12
گام نهم : پیاده سازی تابع سازنده تخته بازی 13
گام دهم : ذخیره 92 حالت مختلف 14
فصل سوم : الگوریتم هشت وزیر به روش غیر بازگشتی 15
گام یازدهم : معرفی الگوریتم 15
گام دوازدهم : روش بررسی صحّت قرار گیری مهره 16
فصل چهارم : الگوریتم هشت وزیر به روش بازگشتی 17
گام سیزدهم : معرفی الگوریتم 17
گام چهاردهم : روش بررسی صحّت قرارگیری مهره 17
دانلود مقاله پیاده سازی گرافیکی هشت وزیر با C#