home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / dos / bits / bitblit / hilberta.c < prev    next >
Encoding:
Text File  |  1985-06-10  |  1.0 KB  |  43 lines

  1. /*
  2.  * NAME:         A
  3.  *
  4.  * DESCRIPTION: RECURSIVE PROCEDURE USED TO DRAW HILBERT CURVES.
  5.  *
  6.  * SYNOPSIS:     A (I, H, OLD, CUR)
  7.  *              INT      I;
  8.  *              INT      H;
  9.  *              STRUCT POINT    *CUR;
  10.  *              STRUCT POINT    *OLD;
  11.  *
  12.  * GLOBALS:      NONE.
  13.  *
  14.  * CALLS:        D        (HILBERT.C)
  15.  *              DO_PLOT   (HILBERT.C)
  16.  *              A         (HILBERT.C)
  17.  *              B         (HILBERT.C)
  18.  *
  19.  * CALLED BY:    HILBERT.C  (HILBERT.C)
  20.  *              A           (HILBERT.C)
  21.  *              B           (HILBERT.C)
  22.  *              D           (HILBERT.C)
  23.  */
  24. A (I, H, OLD, CUR)
  25. INT    I;
  26. INT    H;
  27. STRUCT POINT  *CUR;
  28. STRUCT POINT  *OLD;
  29. {
  30.    IF (I > 0) {
  31.         D (I - 1, H, OLD, CUR);
  32.        CUR -> X -= H;
  33.        DO_PLOT (OLD, CUR);
  34.         A (I - 1, H, OLD, CUR);
  35.        CUR -> Y -= H;
  36.        DO_PLOT (OLD, CUR);
  37.         A (I - 1, H, OLD, CUR);
  38.        CUR -> X += H;
  39.        DO_PLOT (OLD, CUR);
  40.         B (I - 1, H, OLD, CUR);
  41.    }
  42. }
  43.