home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1987 / 11 / grafik8 / lineobj2.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1987-09-04  |  1.5 KB  |  53 lines

  1. (*-------------------------------------------------------------*)
  2. (*                    LINEOBJ2.PAS                             *)
  3. (* Anpassung, um LINEOBJ.PAS aus der Folge IV der Grafikserie  *)
  4. (* trotz 3D-Transformations-Routinen auch noch fuer zwei-      *)
  5. (* dimensionale Darstellungen verwenden zu können.             *)
  6.  
  7. PROCEDURE TransformLinienObjekt( TransMat : tMatrix;
  8.                                  VAR Objekt : LinienObjekt;
  9.                                  n : INTEGER             );
  10.  
  11. VAR i : ObjektIndex;
  12.  
  13. BEGIN
  14.   FOR i := 1 TO n DO
  15.     WITH Objekt[i] DO BEGIN
  16.       Vektor1[3] := 0;  (* Vektoren liegen in der X-Y-Ebene *)
  17.       Vektor2[3] := 0;
  18.       Vektor1[xMatDim] := 1;  (* Vektoren erweitern *)
  19.       Vektor2[xMatDim] := 1;
  20.       VektorTrans(Vektor1,TransMat);
  21.       VektorTrans(Vektor2,TransMat);
  22.     END
  23. END;
  24.  
  25.  
  26. PROCEDURE ZeigeLinienObjekt(TransMat : tMatrix;
  27.                             VAR Objekt : LinienObjekt; n : INTEGER);
  28.  
  29. VAR i : INTEGER;
  30.  
  31. BEGIN
  32.   TransformLinienObjekt(TransMat,Objekt,n);
  33.   FOR i := 1 TO n DO
  34.     WITH Objekt[i] DO
  35.       ClipLine(Vektor1[1],Vektor1[2],Vektor2[1],Vektor2[2])
  36. END;
  37.  
  38.  
  39. PROCEDURE LoescheLinienObjekt(Objekt : LinienObjekt; n : INTEGER);
  40.  
  41. VAR i : INTEGER;
  42.  
  43. BEGIN
  44.   Set_Pen_Color(0);
  45.   FOR i := 1 TO n DO
  46.     WITH Objekt[i] DO
  47.       ClipLine(Vektor1[1],Vektor1[2],Vektor2[1],Vektor2[2]);
  48.   Set_Pen_Color(15)
  49. END;
  50.  
  51. (*-------------------------------------------------------------*)
  52. (*                    Ende LINEOBJ2.PAS                        *)
  53.