TD=OPENIN "RectanglesData" INPUT#TD,N DIM TN(N): DIM A(N): DIM B(N): DIM W(N): DIM H(N) PRINT N FOR I=1 TO N INPUT#TD,TN(I),A(I),B(I),W(I),H(I) PRINT TN(I)", ";A(I);", ";B(I);", ";W(I);", ";H(I) NEXT I CLOSE#TD òFrameSize(2,1.5,24,18) òAxesStyle("MathsAxes") òAxesScalesStyle("MathsScales") òAxes`(0,120,0,90) òAxesScales(24,5,18,5) òWidth(0.25) FOR I=1 TO N òRectangle(A(I),B(I),W(I),H(I)) NEXT I òNewDrawing PROCdoublesize END DEF FNMathsAxes(axis) CASE axis OF WHEN x_axis,y_axis òWidth(0.5) òTriangularEndCaps(6,15) =TRUE ENDCASE DEF FNMathsScales(axis,scale) LOCAL result CASE scale OF WHEN major CASE axis OF WHEN x_axis,y_axis òWidth(0.25) pipslength=10 pips=centre result=TRUE ENDCASE WHEN minor CASE axis OF WHEN x_axis,y_axis òWidth(0.25) pipslength=8 pips=centre result=FALSE ENDCASE ENDCASE =result DEF PROCdoublesize FOR I=1 TO N A(I) = 2*A(I): B(I) = 2*B(I): W(I) = 2*W(I): H(I) = 2*H(I) NEXT I TD = OPENOUT "RectanglesOut" PRINT#TD,N FOR I=1 TO N PRINT#TD,TN(I),A(I),B(I),W(I),H(I) NEXT I CLOSE#TD òFrameSize(2,1.5,24,18) òAxesStyle("MathsAxes") òAxesScalesStyle("MathsScales") òAxes`(0,120,0,90) òAxesScales(24,5,18,5) òWidth(0.25): òColour(&00000000) FOR I=1 TO N òRectangle(A(I),B(I),W(I),H(I)) NEXT I TD=OPENIN "RectanglesOut" INPUT#TD,N PRINT N FOR I=1 TO N INPUT#TD,TN(I),A(I),B(I),W(I),H(I) PRINT TN(I)", ";A(I);", ";B(I);", ";W(I);", ";H(I) NEXT I CLOSE#TD ENDPROC