Оқулық Қазақстан Республикасы Білім жəне ғылым министрлігі бекіткен Алматы, 2011 1


Ellipse процедурасы эллипстік доға сызады. Тақырыбы: Procedure



бет113/210
Дата06.01.2022
өлшемі4,42 Mb.
#16437
түріОқулық
1   ...   109   110   111   112   113   114   115   116   ...   210
Байланысты:
boribaev-algoritmdeu

Ellipse процедурасы эллипстік доға сызады. Тақырыбы:
Procedure Ellipse(X,Y: Integer;BegA,endA,RX,RY: Word);


196

мұндағы X, Y – центр координатасы; ВеgА, endA – сəйкесінше, доғаның бастапқы жəне соңғы бұрыштары; RX, RY – эллипстің пикселмен берілген көлденең жəне тік радиусы.
Эллипстік доғаны сызғанда, Circle процедурасындағы тү-зуге қатысты келісімдер мен Arc процедурасындағы бұрышқа қатысты келісімдер қолданылады. Егер радиустарды CetAspec-tRatio масштабтық коэффициентті ескере отырып алсақ, дұрыс дөңгелек сызылады.
Келесі программада радиус қатынастары əр түрлі үш эллипс-тік доға сызылады (7.8-сурет). Экран мүмкіндігі неғұрлым жо-ғары болса, соғұрлым жақтаулар арасындағы қатынас бірге жақын жəне бірінші графиктің үшінші графиктен айырмашылығы аз болады.
Uses Graph, CRT;



7.8-сурет. Эллипстік доғалар

var
d,r,e: Integer;


xa,ya: Word;
begin
{Графиканы іске қосамыз}


197

d:=Detect;InitGraph(d,r,'');
e:=GraphResult;
if e <> grOK then
WriteLn(GraphErrorMsg(e))
else
begin
{Бірінші график}
OutTextXY(5 0,4 0,'RX = RY');{Жазу} Line (0,100,160,100);{Ось X} Line (80,55,80,145);{Ось Y}

Ellipse (80,100,180,90,40,40);


{Екінші график}
OutTextXY(260,40,'RX = 5*RY');
Line (190,100,410,100);
Line (300,55,300,145);
Ellipse (300,100,0,359,100,20);
{Үшінші график}
OutTextXY(465,40,'Aspect Ratio');
Line (440,100,600,100);
Line (520,55,520,145);
GetAspectRatio(xa, ya);
Ellipse (520,100,0,270,40,round(40*(xa/ ya)));
if ReadKey=#0 then
d:=ord(ReadKey);
CloseGraph
end
end.


Достарыңызбен бөлісу:
1   ...   109   110   111   112   113   114   115   116   ...   210




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет