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 */
    }
  • 相关阅读:
    CentOS7 安装 Mysql 服务
    git 第一次 push 遇到问题
    为什么PHP(CLI)同一个错误信息会打印两次?
    python密码输入模块getpass
    Linux安装JDK详细步骤
    嘿嘿嘿,开始自学mysql
    Bable实现由ES6转译为ES5
    AJAX
    模板层
    lshw查看系统硬件信息
  • 原文地址:https://www.cnblogs.com/len3d/p/646935.html
Copyright © 2011-2022 走看看