home *** CD-ROM | disk | FTP | other *** search
/ Programming Tool Box / SIMS_2.iso / vb_code1 / dxf_dll / tpdemo1.pas < prev    next >
Pascal/Delphi Source File  |  1992-02-10  |  4KB  |  108 lines

  1. Program TPDemo1;
  2. uses WinCrt;
  3.  
  4. Procedure DXFOpen(FileName:PChar); far; external 'TURBODXF' index 1;
  5. Procedure DXFHeader(X1,Y1,X2,Y2:double); far; external 'TURBODXF' index 2;
  6. Procedure DXFStartTables(NumLayers : integer); far; external 'TURBODXF' index 3;
  7. Procedure DXFAddLayer(LayerName : PChar; LayerColor : integer); far; external 'TURBODXF' index 4;
  8. Procedure DXFStartViewTable(NumViews:integer); far; external 'TURBODXF' index 5;
  9. Procedure DXFAddView(ViewName: PChar;
  10.             Height,Width,CentreX,CentreY : double);far; external 'TURBODXF' index 6;
  11. Procedure DXFEndTables; far; external 'TURBODXF' index 7;
  12. Procedure DXFAddText10(X1,Y1,Z1,Height,Rotate : double; Txt,LayerName : PChar); far; external 'TURBODXF'index 9;
  13. Procedure DXFAddPoint(X1,Y1,Z1 : double; Layer : PChar); far; external 'TURBODXF' index 10;
  14. Procedure DXFAddArc( X1,Y1,Z1,Radius,StartAngle,EndAngle : double;Layer : PChar); far; external 'TURBODXF' index 11;
  15. Procedure DXFAddSolid( X1,Y1,Z1,
  16.                        X2,Y2,Z2,
  17.                        X3,Y3,Z3,
  18.                        X4,Y4,Z4 : double;
  19.                        Layer : PChar);far; external 'TURBODXF' index 12;
  20.  
  21. Procedure DXFAddLine(X1,Y1,Z1,X2,Y2,Z2: double;LayerName : PChar); far; external 'TURBODXF' index 13;
  22.  
  23. Procedure DXFAddPoly(Layer : PChar);far; external 'TURBODXF' index 14;
  24.  
  25. Procedure DXFAddVertex( X1, Y1, Z1, StartWidth, EndWidth : double;
  26.                         Layer : PChar);far; external 'TURBODXF' index 15;
  27.  
  28. Procedure DXFEndPoly; far; external 'TURBODXF' index 16;
  29.  
  30. procedure DXFAdd3DFace(X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3,X4,Y4,Z4:double;
  31.            Layer:PChar);far; external 'TURBODXF' index 17;
  32.  
  33. Procedure DXFAddCircle(X1,Y1,Z1,Radius,Extrusion:double; LayerName:PChar); far; external 'TURBODXF' index 18;
  34.  
  35. Procedure DXFClose; far; external 'TURBODXF' index 19;
  36.  
  37. Procedure DXFAddBar(X1,Y1,Width,Height:double; Layer:PChar);far; external 'TURBODXF' index 20;
  38.  
  39. Procedure DXFAddXAxis(X1,Y1,X2:double;NumTicks:integer;Layer:PChar);far; external 'TURBODXF' index 21;
  40.  
  41. Procedure DXFAddYAxis(X1,Y1,Y2:double;NumTicks:integer;Layer:PChar);far; external 'TURBODXF' index 22;
  42. {=========================================================================================}
  43.  
  44. var
  45.   i : integer;
  46.   DXFFileName : PChar;
  47.  
  48. begin
  49.   DXFFileName := 'TPDEMO1.DXF';
  50.   Writeln('Testing TURBODXF DLL. Creating DXF file: ',DXFFileName);
  51.   DXFOpen(DXFFileName);
  52.  
  53.   DXFHeader(1,1,10,10);
  54.  
  55.   DXFStartTables(5);
  56.  
  57.   DXFADDLayer('LINES',1);
  58.   DXFADDLayer('TEXT',7);
  59.   DXFADDLayer('ARC',1);
  60.   DXFADDLayer('SOLID',5);
  61.   DXFADDLayer('POLY',7);
  62.  
  63.   DXFStartViewTable(0);
  64.  
  65.   DXFEndTables;
  66.  
  67.   DXFAddBar(-2,-2,15,16,'POLY');
  68.  
  69.   for I := 1 to 5 do
  70.       DXFAddBar(I*2,1,1,I*2,'SOLID');
  71.  
  72.   for I := 1 to 5 do
  73.       DXFAddBar(I*2-1,1,1,I*2-1,'LINES');
  74.  
  75.   DXFAddPoly('POLY');
  76.    DXFAddVertex(3,1,0,0.5,0.25,'POLY');
  77.    DXFAddVertex(4,3,0,0.35,0.5,'POLY');
  78.    DXFAddVertex(5,3,0,0.75,0.15,'POLY');
  79.    DXFAddVertex(7,5,0,0.25,0.25,'POLY');
  80.   DXFEndPoly;
  81.  
  82.   DXFAddLine(0,0.5,0,10,0.5,0,'LINES');
  83.  
  84.   DXFAddLine(0,0.5,0,0,8,0,'LINES');
  85.  
  86.   DXFAddText10(2,12,0,0.5,0,'TurboDXF! from Ideal','TEXT');
  87.  
  88.   DXFAddCircle(3,3,0,2,0,'ARC');
  89.  
  90.   for I := 1 to 8 do
  91.     DXFAddText10(3,7,0,0.25,I*45,'TurboDXF!','TEXT');
  92.  
  93.   DXFAddArc(6,5,0,5,-10,110,'ARC');
  94.  
  95.   DXFAddSolid(7.5,1,0,9.5,1,0,9.5,6,0,7.5,3,0,'TEXT');
  96.  
  97.   DXFAddXAxis(0,0,10,10,'TEXT');
  98.  
  99.   DXFAddYAxis(0,0,10,10,'TEXT');
  100.  
  101.   DXFClose;
  102.  
  103.   Writeln('Test Complete. DXF file closed.');
  104.   writeln('Use Corel Draw, Micrografx Designer etc to view.');
  105.  
  106. end.
  107.  
  108.