home *** CD-ROM | disk | FTP | other *** search
- (*-------------------------------------------------------------------------*)
- (* POLYDEMO.PAS *)
- (* Demonstriert das Zeichenmakro "DrawPoly" *)
- (* durch wiederholtes Zeichnen eines Dreiecks *)
- (*-------------------------------------------------------------------------*)
- PROGRAM PolyDemo;
-
- CONST
- (*$I GRAFCONS.PAS *)
-
- TYPE
- (*$I GRAFTYPE.PAS *)
-
- VAR
- (*$I GRAFVAR.PAS *)
- Feld: Polygon;
- i, j: INTEGER;
-
- (*$I GRAPH.P *)
- (* Dieses Include ist bei Turbo Pascal unter MS-Dos fuer die erweiterte
- Grafik notwendig, da die Pixeltest-Funktion 'GetDotColor'benoetigt! *)
-
- (*$I GRAFSYS.PAS *)
- (*$I INTDDA.PAS *)
- (*$I LINE.PAS *)
- (*$I RELGRAF.PAS *)
- (*$I POLYLINE.PAS *)
-
- BEGIN
- Enter_Graphic;
- Feld[1].x := ScreenXmax DIV 2; (* Die folgenden Variablenzuweisungen *)
- Feld[1].y := ScreenYmax DIV 4; (* definieren ein Dreieck. *)
- Feld[2].x := ScreenXmax DIV 5 * 3;
- Feld[2].y := ScreenYmax DIV 6 * 3;
- Feld[3].x := ScreenXmax DIV 5 * 2;
- Feld[3].y := Feld[2].y;
- Feld[4].x := Feld[1].x; (* Das Dreieck muss geschlossen werden, *)
- Feld[4].y := Feld[1].y; (* daher der 4. Punkt, der sich mit dem *)
- (* ersten deckt. *)
- (* Dreieck wiederholt zeichnen und dabei verschieben: *)
- FOR i := 0 TO ScreenYmax DIV 16 DO
- BEGIN
- FOR j := 1 TO 4 DO
- Feld[j].y := Feld[j].y + 4; (* Kleine Translations-Transformation *)
- PolyLine(Feld,4) (* Sprich: Verschiebung nach oben ! *)
- END;
- REPEAT UNTIL KeyPressed; (* auf Tastendruck warten *)
- Exit_Graphic
- END.
- (*-------------------------------------------------------------------------*)
- (* Ende POLYDEMO.PAS *)