Also, wen ich es richtig verstande habe,
muss ich immer den Winkel rurücksetzen [z.B.dreheUm(-90);] !?
Aber wen ich vorhabe etwas größeres mit vielen Linien zu zeichnen,
wie sieht es da aus ? Muss ich da auch immer dann den Winkel zurücksetzen ?
Beim Strichmenchen wars ja nicht so viel
Delphi-Quellcode:
program Menchen;
uses
mSum, Windows;
var
derBildschirm : Bildschirm;
meinStift : Stift;
meinBuntstift8 : Buntstift;
meinBuntstift7 : Buntstift;
meinBuntstift6 : Buntstift;
meinBuntstift5 : Buntstift;
meinBuntstift4 : Buntstift;
meinBuntstift3 : Buntstift;
meinBuntstift2 : Buntstift;
meinBuntstift : Buntstift;
meineMaus : Maus;
Koordinaten : Integer;
procedure Mittelstrich(Koordinaten: Integer);
begin
with meinBuntstift do
begin
hoch;
bewegeBis(Koordinaten,425);
dreheUm(-90);
runter;
bewegeUm(75);
dreheUm(90);
end;
end;
procedure Beinlinks(Koordinaten: Integer);
begin
with meinBuntstift2 do
begin
hoch;
bewegeBis(Koordinaten,500);
dreheUm(-45);
runter;
bewegeUm(50);
dreheUm(45);
end;
end;
procedure Beinrechts(Koordinaten: Integer);
begin
with meinBuntstift3 do
begin
hoch;
bewegeBis(Koordinaten,500);
dreheUm(-135);
runter;
bewegeUm(50);
dreheUm(135);
end;
end;
procedure Armlinks(Koordinaten: Integer);
begin
with meinBuntstift4 do
begin
hoch;
bewegeBis(Koordinaten,450);
dreheUm(-135);
runter;
bewegeUm(40);
dreheUm(135);
end;
end;
procedure Armrechts(Koordinaten: Integer);
begin
with meinBuntstift5 do
begin
hoch;
bewegeBis(Koordinaten,450);
dreheUm(-45);
runter;
bewegeUm(40);
dreheUm(45);
end;
end;
procedure Augelinks(Koordinaten: Integer);
begin
with meinBuntstift6 do
begin
hoch;
bewegeBis(Koordinaten-12.5,400);
runter;
zeichneKreis(4);
end;
end;
procedure Augerechts(Koordinaten: Integer);
begin
with meinBuntstift7 do
begin
hoch;
bewegeBis(Koordinaten+12.5,400);
runter;
zeichneKreis(4);
end;
end;
procedure Mund(Koordinaten: Integer);
begin
with meinBuntstift8 do
begin
hoch;
bewegeBis(Koordinaten-7,412);
runter;
bewegeUm(14);
end;
end;
begin
derBildschirm := Bildschirm.init;
meinStift := Stift.init;
meinBuntstift8 := Buntstift.init;
meinBuntstift7 := Buntstift.init;
meinBuntstift6 := Buntstift.init;
meinBuntstift5 := Buntstift.init;
meinBuntstift4 := Buntstift.init;
meinBuntstift3 := Buntstift.init;
meinBuntstift2 := Buntstift.init;
meinBuntstift := Buntstift.init;
meineMaus := Maus.init;
for Koordinaten:= 200 to 400 do
begin
Mittelstrich(Koordinaten);
Beinlinks(Koordinaten);
Beinrechts(Koordinaten);
Armlinks(Koordinaten);
Armrechts(Koordinaten);
Augelinks(Koordinaten);
Augerechts(Koordinaten);
Mund(Koordinaten);
with meinstift do
begin
// Kopf
hoch;
bewegeBis(Koordinaten,400);
runter;
zeichneKreis(25);
warte(10);
repeat
until meineMaus.istGedrueckt;
with derBildschirm do
begin
loescheAlles;
end;
end;
end;
meinBuntstift5.gibFrei;
meinBuntstift4.gibFrei;
meinBuntstift3.gibFrei;
meinBuntstift.gibFrei;
meinBuntstift2.gibFrei;
meinStift.gibFrei;
derBildschirm.gibFrei;
meineMaus.gibFrei;
end.