مشاهده نسخه کامل
: کمک فوری<<<<<>؟؟؟؟پاسکال
shahnameh
24-05-2008, 01:01
من میخوام بدونم این 3 دستور چه کار میکنه توضیحش کافیه
setfillstyle
setfillpatern
setaspectratio
لطفا شکل کلی برنامه را بنویسید
دستم به دامنتون
:19:
shahnameh
28-05-2008, 19:47
بابا یکی به داد ما برسه
سلام
دستور اولی رو می دونم
شکل کلی دستور◄ setfillstyle(patern,color)
patern◄الگوی که شکل باید باهاش پر بشه(شکل هاشور زدن).
مقادیر patern می تونه از 0 شروع بشه تا 11.(هر شماره نمایانگر یه الگو هستش)
color◄رنگ هاشور چی باشه.
یه مثال کلی از دستور بالا
می خواهیم یه دایره رسم کنیم و اونو با هاشور پر کنیم:
دستور بالی رو که بهت گفتم ولی باید این دستور رو هم بدونی چون دستور بالا با این دستور با هم کار می کنند :
شکل کلی دستور:
floodfill(x,y,color)
xوy مختصات نقطعه ای هستش که می خواهی با حالت patern که بالا تعریف کردی پر کنی و دستور color تو این دستور محدوده که باید هاشور زده بشه رو مشخص می کنه.
این برنامه رو تو محیط پاسکال اجرا کن البته پاسکال شما باید گرافیک ساپورت باش, اون مسیری که تو برنامه دادم محل فایل های گرافیکی پاسکالت هستش ، اگه مسیر نصب پاسکالت جای دیگه هست تغییرش بده.:
program test;
uses crt,graph;
var
driver,mode:integer;
begin
initgraph(driver,mode,'c:\tp\bgi');
circle(300,200,50);
setfillstyle(11,red);
floodfill(300,200,white);
readln;
closegraph;
end.
داخل دستور floodfill نوشتم 300و200 چرا چون داخل دایره رو مشخص می کنم و بهش می گم تا به خط سفید نرسیدی هاشور بزن.
اگه پاسکالت گرافیک ساپورت نیست بگو تا واست گرافیک ساپورت رو برات آپ کنم.
اگه کاری داشتی در خدمتم.
آخ مردم که تایپیدم!
اینم برای دستور سومی(setaspectratio) : ◄
program test;
uses crt,graph;
const R = 50;
var
Driver, Mode: Integer;
Xasp, Yasp: Word;
begin
DirectVideo := False;
initgraph(driver,mode,'c:\tp\bgi');
if GraphResult < 0 then
Halt(1);
GetAspectRatio(Xasp, Yasp); { Get default aspect ratio }
if Xasp = Yasp then
{ Adjust for VGA and 8514. They have 1:1 aspect }
Yasp := 5 * Xasp;
while (Xasp < Yasp) and not KeyPressed do
{ Keep modifying aspect ratio until 1:1 or key is pressed }
begin
SetAspectRatio(Xasp, Yasp);
Circle(GetMaxX div 2, GetMaxY div 2, R);
Inc(Xasp, 20);
end;
SetTextJustify(CenterText, CenterText);
OutTextXY(GetMaxX div 2, GetMaxY div 2, 'p30world!');
Readln;
CloseGraph;
end.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.