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

  1. Program TPDemo2;
  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.   YVals : array[1..10] of double;
  48.   MaxY : double;
  49.  
  50. begin
  51.   DXFFileName := 'TPDEMO2.DXF';
  52.   Writeln('Testing TURBODXF DLL. Creating DXF file: ',DXFFileName);
  53.  
  54.   MaxY := 0;
  55.  
  56.  
  57.   DXFOpen(DXFFileName);
  58.  
  59.   DXFHeader(1,1,10,10);
  60.  
  61.   DXFStartTables(3);
  62.  
  63.   DXFADDLayer('TITLE',3);
  64.   DXFADDLayer('BARS',7);
  65.   DXFADDLayer('AXES',1);
  66.  
  67.   DXFStartViewTable(0);
  68.  
  69.   DXFEndTables;
  70.  
  71.   for I := 0 to 9 do
  72.   begin
  73.       write('Enter the Y value for point number ',I,' ');
  74.       readln(YVals[I]);
  75.         if YVals[I] > MaxY then MaxY := YVals[I];
  76.         DXFAddBar(I,0,1,YVals[I],'BARS');   {X1=I; Y1=0; Width=1; Height = user entry}
  77.   end;
  78.  
  79.   DXFAddXAxis(0,0,10,10,'AXES');      {Axis from 0,0 to 10,0 with 10 ticks}
  80.  
  81.   DXFAddYAxis(0,0,MaxY,10,'AXES');    {Axis from 0,0 to 0,MaxY with 10 ticks}
  82.  
  83.   DXFAddText10(2,Maxy+1,0,0.25,0,'TurboDXF Bar Chart Demo','TITLE');
  84.  
  85.   DXFClose;
  86.  
  87.   Writeln('Test Complete. DXF file closed.');
  88.   writeln('Use Corel Draw, Micrografx Designer etc to view.');
  89.  
  90. end.
  91.  
  92.