zoukankan      html  css  js  c++  java
  • Drawing Hilbert Curve

    enum {
      UP,
      LEFT,
      DOWN,
      RIGHT,
    };

    void hilbert(int level,int direction=UP)
    {
      if (level==1) {
        switch (direction) {
        case LEFT:
          move(RIGHT);      /* move() could draw a line in... */
          move(DOWN);       /* ...the indicated direction */
          move(LEFT);
          break;
        case RIGHT:
          move(LEFT);
          move(UP);
          move(RIGHT);
          break;
        case UP:
          move(DOWN);
          move(RIGHT);
          move(UP);
          break;
        case DOWN:
          move(UP);
          move(LEFT);
          move(DOWN);
          break;
        } /* switch */
      } else {
        switch (direction) {
        case LEFT:
          hilbert_level(level-1,UP);
          move(RIGHT);
          hilbert_level(level-1,LEFT);
          move(DOWN);
          hilbert_level(level-1,LEFT);
          move(LEFT);
          hilbert_level(level-1,DOWN);
          break;
        case RIGHT:
          hilbert_level(level-1,DOWN);
          move(LEFT);
          hilbert_level(level-1,RIGHT);
          move(UP);
          hilbert_level(level-1,RIGHT);
          move(RIGHT);
          hilbert_level(level-1,UP);
          break;
        case UP:
          hilbert_level(level-1,LEFT);
          move(DOWN);
          hilbert_level(level-1,UP);
          move(RIGHT);
          hilbert_level(level-1,UP);
          move(UP);
          hilbert_level(level-1,RIGHT);
          break;
        case DOWN:
          hilbert_level(level-1,RIGHT);
          move(UP);
          hilbert_level(level-1,DOWN);
          move(LEFT);
          hilbert_level(level-1,DOWN);
          move(DOWN);
          hilbert_level(level-1,LEFT);
          break;
        } /* switch */
      } /* if */
    }
  • 相关阅读:
    codevs 1031 质数环
    codevs 1005 生日礼物
    codevs 1004 四子连棋
    codevs 2292 图灵机游戏
    1439 统计素数个数
    1675 大质数 2
    codevs 1462 素数和
    [NOIp2012提高组]借教室
    [NOIp2007提高组]矩阵取数游戏
    [TJOI2017]城市
  • 原文地址:https://www.cnblogs.com/len3d/p/646935.html
Copyright © 2011-2022 走看看