دانلود مقاله آموزش محیط گرافیکی در توربو پاسکال 7

  • Code: # 18508

  • تعداد صفحات: 15
  • فرمت فایل: Word
  • سال: مشخص نشده
  • مقطع: مشخص نشده
  • دسته بندی: کامپیوتر - IT
قیمت جدید: ۷,۰۰۰ تومان
۱۱,۰۰۰ تومان
دانلود
  • خلاصه
  • فهرست
  • خلاصه دانلود مقاله آموزش محیط گرافیکی در توربو پاسکال 7

    برای برنامه نویسی در محیط گرافیکی نیاز به مقدماتی برای ورود به محیط گرافیک است .

    اولین خط هر برنامه گرافیکی بعد از دستور Program ، فرمان زیر است :
    Uses graph ;
    با استفاده از دستور uses برنامه شما می تواند از پیمانه ها و ثوابت توربو پاسکال استفاده کند .

    این ثوابت و پیمانه ها در فایلی که یک unit نامیده می شود جای می گیرند .

    کدی که در حالت گرافیکی توسط کامپیوتر تولید می شود ، به نوع کامپیوتر بستگی دارد .

    بنابراین نوع سخت افزار گرافیکی که در اختیار سیستم است باید به توربو پاسکال اعلام شود .

    برای این کار از دو متغیر Driver و Mode بصورت زیر استفاده می شود :
    Var
    Driver , Mode : Integer ;
    محتوای این دو متغیر نوع سخت افزارهای گرافیکی سیستم را مشخص می کند .

    برای تعیین حالت گرافیکی از دستور زیر استفاده می شود :
    InitGraph (Driver, Mode, ‘…….’) ;
    رویه InitGraph سیستم گرافیکی شما را بررسی کرده و سپس در متغیرهای Driver و Mode مقادیر مناسب را قرار می دهد .

    پارامتر رشته ای ‘……’ شاخه ای را مشخص می کند که در آن نرم افزار کنترل سیستم گرافیکی شما وجود دارد .

    رشته ای که بدون کاراکتر است ‘ ‘ به این معناست که این نرم افزار در شاخه جاری قرار دارد .


    این نرم افزار همواره در شاخه BGI قرار دارد و معمولا در محلی است که برنامه توربو پاسکال نصب شده است .

    بنابراین باید آدرس شاخه BGI را بجای این رشته بنویسیم .

    برای انعطاف پذیر شدن برنامه و قابلیت اجرای آن روی سیستم های مختلف معمولا یک نسخه از شاخه BGI را در شاخه ای که برنامه در آن قرار دارد ، کپی می کنیم .
    صفحه نمایشی که مانند یک صفحه مختصات است :
    در برنامه نویسی گرافیکی موقعیت هر خط یا هر شکلی را که روی صفحه نمایش رسم می کنید ، باید کنترل کنید .

    صفحه نمایش را در محیط گرافیکی بصورت مختصات X-Y تعدادی نقطه می توان در نظر گرفت .

    در اکثر نمایشگرها ابعاد متداول عبارتند از : 200×320 ، 350×640 ، 480×640 .

    که معمولا تعداد نقاط در محور X ها بیشتر است .
    توابع GetMaxX و GetMaxY در توربو پاسکال، به ترتیب حداکثر تعداد نقاط در Xها و Yها را برمی گردانند .

    بنابراین برای بدست آوردن ابعاد واقعی نمایشگر خود می توانید از این توابع بصورت زیر استفاده کنید :
    MaxX := GetMaxX ; MaxY := GetMaxY ;
    مختصات گوشه های صفحه نمایش به صورت زیر است.

    برای برگرداندن برنامه به حالت متنی از دستور زیراستفاده می کنیم .


    CloseGraph ;
    رنگ زمینه و متن :
    بطور پیش فرض برای رنگ های زمینه و متن ، به ترتیب از سیاه و سفید استفاده می شود .

    دستورات زیر امکان تغییر رنگ زمینه و متن را فراهم می کنند .


    SetBkColor (….) ; تعیین رنگ زمینه SetColor (….) ; تعیین رنگ متن برای انتخاب رنگها از ثوابت رنگی یا معادل عددی رنگها طبق جدول زیر استفاده می شود : خلاصه ای از توابع و رویه های گرافیکی : · Line (X1, Y1, X2, Y2) ; بین نقاط (X1,Y1) و (X2,Y2) خطی رسم می شود .

    · Rectangle (X1, Y1, X2, Y2) ; مستطیلی که قطر آن بین نقاط (X1,Y1) و (X2,Y2) است می کشد .

    · Circle (X, Y, R) ; دایره به مرکز (X,Y) و شعاع R رسم می کند .

    · Arc (X, Y, Angle1, Angle2, R) ; کمانی از زاویه Angle1 تا Angle2 و به مرکز (X,Y) و شعاع R رسم می کند .

    · SetFillStyle (FilPat, FilCol ) ; برای رنگ آمیزی قسمتهایی از صفحه نمایش با رنگهای مختلف از این رویه استفاده می شود تا نوع رنگ و نحوه رنگ آمیزی مشخص شود .

    الگوهای رنگ آمیزی و رنگها با توجه به جدول زیر انتخاب می شوند ، در این رویه هم از نام ثابت و هم از معادل عددی می توانید استفاده کنید .

    تا زمانیکه بار دیگر این رویه را فراخوانی نکنید ، این حالت فعال خواهد بود .

    · FloodFill (X, Y, Border) ; محدوده ای را که حاوی نقطه (X,Y) است و با خطوطی به رنگ Border محصور شده است ، با الگوی جاری رنگ آمیزی می کند .

    · Bar (X1, Y1, X2, Y2) ; مستطیلی توپر می کشد که قطر آن بین نقاط (X1,Y1) و (X2,Y2) است .

    · PieSlice (X, Y, Angle1, Angle2, R) ; یک برش دایره توپر می کشد که از زاویه Angle1 شروع شده و به Angle2 ختم می شود و دارای مرکز (X,Y) و شعاع R می باشد .

    · OutTextXY (X, Y, TextString) ; در نقطه (X,Y) کاراکترهای رشته TextString را چاپ می کند .

    v برنامه زیر یک نمونه از برنامه نویسی ساده گرافیکی را نشان می دهد .

    uses graph; procedure HappyFace(MidX,MidY:integer); var HeadRadius:integer; begin HeadRadius:=GetMaxY div 4; Circle (MidX, MidY, HeadRadius); end; var Driver,Mode,MidX,MidY:integer; begin InitGraph (Driver, Mode, ' '); MidX:=GetMaxX div 2; MidY:=GetMaxY div 2; HappyFace(MidX,MidY); OutTextXY(230, 400, '!!!

    Press Any Key !!!'); readln; CloseGraph; end.

    نقاشی متحرک گرافیکی : اگر یک رویه گرافیکی دارای پارامتر باشد ، می توان موقعیت یک شکل را تغییر داد و یا آن شکل را در چند نقطه از صفحه نمایش رسم کرد .

    علاوه بر این می توان یک شکل را متحرک ساخت .

    این کار به این صورت انجام می شود که ابتدا شکلی در نقطه خاصی از صفحه نمایش رسم می شود ، سپس از آن نقطه پاک شده و در محل دیگری رسم می شود .

    با تکرار این عمل شکل مورد نظر متحرک به نظر می رسد .

    برای تعیین سرعت حرکت از یک تأخیر زمانی بین دفعات رسم شکل استفاده می کنیم .

    برای ایجاد این تأخیر می توان از رویه Delay (DelayTime) استفاده کرد .

    عدد DelayTime بر اساس میلی ثانیه بیان می شود و البته برای استفاده از این تابع باید واحد Crt را با فرمان uses Crt در ابتدای برنامه فراخوانی کنید .

    v در مثال بعد با استفاده از روش گفته شده ، شکل رسم شده در مثال قبل را متحرک می کنیم.

    var Driver,Mode,MidX,MidY:integer; begin InitGraph (Driver, Mode, ' '); MidX:=0; MidY:=0; while ((MidX begin HappyFace(MidX,MidY); MidX:=MidX+50; MidY:=MidY+50; Delay(50); SetFillStyle(3,4); Bar(0,0,639,479); end; OutTextXY(230, 400, '!!!

    دستور کار (1 ) در محیط گرافیک توربو پاسکال برنامه ای بنویسید که اشکال زیر را در خروجی رسم کند .

    سعی کنید توابع را طوری بنویسید که با دریافت مختصات یک نقطه از شکل مثلا" مرکز آن ، تمام شکل را رسم کند .

    (مانند مثال مطرح شده در جزوه) سعی کنید تمام مختصات لازم برای رسم اشکال را با فرمول بدست آورید و تا حد امکان از استفاده مستقیم از اعداد خودداری کنید .

    دستور کار (2 ) در محیط گرافیک توربو پاسکال برنامه ای بنویسید تا اشکال زیر را به ترتیب و بصورت متحرک نمایش دهد.

    سرعت حرکت آدمک باید به گونه ای باشد که بین مرحله اول تا آخر 2 ثانیه طول بکشد.

    نیازی به جابجایی خانه ها وجود ندارد ، برنامه را طوری بنویسید که آدمک از یک خانه بیرون بیاید و دوباره در همان خانه فرو برود .

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

    دستور کار (3 ) برنامه ای بنویسید که پنجره زیر را رسم کند .

    برای طرح پنجره ها و رنگها به دلخواه تصمیم بگیرید.

    دستور کار (4 ) با استفاده از تابعی که در دستور کار (2) نوشته اید ، برنامه ای بنویسید که آدمک را به طور تصادفی در خانه های پنجره شماره یک ظاهر کند .

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

    این کار باید تا زمانی ادامه پیدا کند که 10 بار آدمک در خانه های مختلف ظاهر و سپس ناپدید شود .

    تابع حرکت آدمک را بدون استفاده از Delay بنویسید .

    برای ایجاد حالت متحرک بعد از هر بار رسم آدمک پنجره شماره 1 باید مجددا" رسم شود .

    دستور کار (5 ) برنامه ای بنویسید که ماوس را در پنجره شماره 2 فعال کند و محل کلیک کردن ماوس را مشخص کند .

    بطوریکه اگر کاربر در هر محلی از یک خانه کلیک کند برنامه شماره آن خانه را بعنوان خروجی برگرداند .

    مثلا" اگر کاربر در هر نقطه ای از خانه شماره 1 کلیک کند برنامه عدد یک را بعنوان خروجی برگرداند .

    دستور کار (6 ) برنامه ای را که در دستور کار (4) نوشته اید طوری تغییر دهید که اگر در زمان حرکت آدمک ، کاربر ماوس را در هر کدام از خانه های پنجره شماره 2 کلیک کند ، آدمک بعدی ظاهر شود .

    یعنی با هر بار کلیک ماوس بازی به مرحله بعدی برود .

    دستور کار (7 ) برنامه دستور کار (6) را به گونه ای تغییر دهید که تشخیص دهد آیا شماره خانه ای که ماوس در آن کلیک شده ، با شماره خانه ای که آدمک در آن حرکت می کرده یکسان است یا نه ؟

    در صورت یکسان بودن شماره ها یک امتیاز مثبت و در صورت یکسان نبودن یک امتیاز منفی به کاربر بدهید .

    پروژه نهایی : بازی کامپیوتری طراحی شده در طول ترم را تکمیل کنید به نحوی که بعد از هر بازی امتیاز کاربر را نمایش دهد .

    امکانات اضافی : 1- استفاده از طرحها و رنگهای متنوع در طراحی پنجره ها ، خانه ها و آدمکهای بازی .

    2- ایجاد پنجره ای مخصوص نمایش امتیاز کاربر در هر مرحله و در انتهای بازی .

    3- استفاده از امکانات صوتی در مراحل مختلف بازی مثل شروع بازی ، پایان بازی ، انتخاب خانه صحیح ، انتخاب خانه غلط ، ظاهر شدن آدمک جدید ، ناپدید شدن آدمک متحرک .

    4- طراحی صفحه متحرک برای شروع و پایان بازی .

    5- ...

    ثابتمقدارثابتمقدارBlack0DarkGray8Blue1LightBlue9Green2LightGreen10Cyan3LightCyan11Red4LightRed12Magenta5LightMagenta13Brown6Yellow14LightGray7White15 ثابتمعادل عددیالگوی رنگ آمیزیثابتمعادل عددیالگوی رنگ آمیزیEmptyFill20رنگ زمینهLtBkSlashFill6\ \ \ \ (بافاصله)SolidFill1بصورت توپرHatchFill7هاشورLineFill2- - - -XhatchFill8متقاطعItSlashFill3/ / / / (بافاصله)InterLeaveFill9خط در میانSlashFill4//// (بدون فاصله)WidDotFill10نفطه ای (بافاصله)BslashFill5\\\\ (بدون فاصله)CloseDotFill11نقطه ای(بدون فاصله)

  • فهرست دانلود مقاله آموزش محیط گرافیکی در توربو پاسکال 7

  • ثبت سفارش
    عنوان محصول
    قیمت