Recursion and Fractals
Fractals(分形)
分形: 一个自相似的数学集合,通常可以绘制为一个重复出现的图形模式。
- 同样形状或图案的较小实例在模式中出现。就像雪花一样
- 当在计算机屏幕上显示时,可以实现对分形的无限放大或缩小。
Examples of Fractals:
- Sierpinski Triangle(谢尔宾斯基三角形)
- Koch Snowflake(科赫雪花)
coding a fractal
使用递归函数来绘制分形。
但是在绘制之前,我们必须知道如何绘制
Stanford graphics lib
include "gwindow.h"
gw.drawline(x1, y1, x2, y2)
画一条线在两点之间gw.drawPolarLine(x,y,r,t)
从 (x,y) 以角度 t 绘制长度为 r 的线段;返回线段的终点作为一个 Gpoint。gw.getPixel(x,y)
返回 (x,y) 处的颜色值。gw.setColor("color")
设置颜色,你可以使用颜色名称或者 RGB 值。gw.setPixel
设置 (x,y) 处的颜色值。gw.drawOval(x,y,w,h)
画一个椭圆。gw.fillOval(x,y,w,h)
填充一个椭圆。 .......
实例
c++
#include <iostream>
#include "gwindow.h"
using namespace std;
int main()
{
GWindow gw(300,200);
gw.setTitle("bobo's GWindow");
gw.setColor("red");
gw.drawLine(20,20,100,100);
return 0;
}