home *** CD-ROM | disk | FTP | other *** search
- (*-------------------------------------------------------------*)
- (* LINEOBJ2.PAS *)
- (* Anpassung, um LINEOBJ.PAS aus der Folge IV der Grafikserie *)
- (* trotz 3D-Transformations-Routinen auch noch fuer zwei- *)
- (* dimensionale Darstellungen verwenden zu können. *)
-
- PROCEDURE TransformLinienObjekt( TransMat : tMatrix;
- VAR Objekt : LinienObjekt;
- n : INTEGER );
-
- VAR i : ObjektIndex;
-
- BEGIN
- FOR i := 1 TO n DO
- WITH Objekt[i] DO BEGIN
- Vektor1[3] := 0; (* Vektoren liegen in der X-Y-Ebene *)
- Vektor2[3] := 0;
- Vektor1[xMatDim] := 1; (* Vektoren erweitern *)
- Vektor2[xMatDim] := 1;
- VektorTrans(Vektor1,TransMat);
- VektorTrans(Vektor2,TransMat);
- END
- END;
-
-
- PROCEDURE ZeigeLinienObjekt(TransMat : tMatrix;
- VAR Objekt : LinienObjekt; n : INTEGER);
-
- VAR i : INTEGER;
-
- BEGIN
- TransformLinienObjekt(TransMat,Objekt,n);
- FOR i := 1 TO n DO
- WITH Objekt[i] DO
- ClipLine(Vektor1[1],Vektor1[2],Vektor2[1],Vektor2[2])
- END;
-
-
- PROCEDURE LoescheLinienObjekt(Objekt : LinienObjekt; n : INTEGER);
-
- VAR i : INTEGER;
-
- BEGIN
- Set_Pen_Color(0);
- FOR i := 1 TO n DO
- WITH Objekt[i] DO
- ClipLine(Vektor1[1],Vektor1[2],Vektor2[1],Vektor2[2]);
- Set_Pen_Color(15)
- END;
-
- (*-------------------------------------------------------------*)
- (* Ende LINEOBJ2.PAS *)