Turbo Pascal, сетка и фигура
:tehnari_ru_837:как процедуру добавить, чтобы данная фигура была на этой сетке,не внутри и на поверхности на самой сетке. вот сетка:
вот фигура:
:tehnari_ru_837:как процедуру добавить, чтобы данная фигура была на этой сетке,не внутри и на поверхности на самой сетке. вот сетка:
Код:
uses Graph;
var i: byte;
Ys: string;
x0,y0:integer;
dx,dy:integer;
h,w:integer;
x,y:integer;
lx,ly:real;
dlx,dly:real;
st:string;
cross:integer;
dcross:integer;
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;
begin
grDriver:=VGA;
grMode:=VGAHi;
InitGraph(grDriver, grMode,'c:\tp7\bin');
ErrCode := GraphResult;
if ErrCode <> grOk then Halt(1);
x0:=50; y0:=450;
dx:=40; dy:=40;
dcross:=3;
dlx:=0.5;
dly:=1;
h:=500;
w:=600;
lx:=0;
ly:=0;
cross:=dcross+1;
Line(x0,y0,x0,y0-h);
Line(x0,y0,x0+w,y0);
x:=x0;
repeat
line(x,y0-3,x,y0+3);
cross:=cross-1;
if cross = 0
then
begin
Str(lx:0:1,st);
OutTextXY(x-8,y0+5,st);
cross:=dcross;
end;
lx:=lx+dlx;
SetLineStyle(DottedLn, 0, NormWidth);
Line(x,y0-3,x,y0-h);
SetLineStyle(SolidLn, 0, NormWidth);
x:=x+dx;
until (x>x0+w);
y:=y0;
repeat
line(x0-3,y,x0+3,y);
Str(ly:0:1,st);
OutTextXY(x0-40,y,st);
ly:=ly+dly;
SetLineStyle(DottedLn, 0, NormWidth);
Line(x0+3,y,x0+w,y);
SetLineStyle(SolidLn, 0, NormWidth);
y:=y-dy;
until (y<y0-h);
Readln;
CloseGraph;
end.
вот фигура:
Код:
Circle(x+165,y+164,30);
Rectangle(x+115,y+115,x+215,y+215);
Line(x+230,y+230,x+100,y+100);
LineTo(x+100,y+230);
LineTo(x+230,y+100);
Rectangle(x+230,y+230,x+100,y+100);
Circle(x+165,y+117,18);
Circle(x+118,y+162,18);
Circle(x+213,y+162,18);
Circle(x+167,y+212,18);