C SUBROUTINE draw(x1,y1,x2,y2,n) IMPLICIT NONE REAL*8 dx, dy, x1n, x2n, xmid, y1n, y2n, ymid, x1, y1, x2, y2 INTEGER IR_, n IF(n .GT. 0) THEN dx = (x2 - x1)/3 dy = (y2 - y1)/3 x1n = x1 + dx y1n = y1 + dy x2n = x1 + 2*dx y2n = y1 + 2*dy * xmid = 0.5D0*dx - 0.866D0*dy + x1n ymid = 0.5D0*dy + 0.866D0*dx + y1n CALL draw(x1,y1,x1n,y1n,n-1) CALL draw(x1n,y1n,xmid,ymid,n-1) CALL draw(xmid,ymid,x2n,y2n,n-1) CALL draw(x2n,y2n,x2,y2,n-1) ELSE CALL GWline(IR_, REAL(x1), REAL(y1), REAL(x2), REAL(y2)) END IF END