代码之美-2[转]
来源:互联网 发布:c语言pow函数 编辑:程序博客网 时间:2024/05/25 05:37
太极图。
// NOTE: compile with g++ filename.cpp -std=c++11 #include <iostream> #include <cmath> #include <cstdlib> #define DIM 1024 #define DM1 (DIM-1) #define _sq(x) ((x)*(x)) // square #define _cb(x) abs((x)*(x)*(x)) // absolute value of cube #define _cr(x) (unsigned char)(pow((x),1.0/3.0)) // cube root unsigned char GR(int,int); unsigned char BL(int,int); unsigned char RD(int i,int j){ // YOUR CODE HERE#define LEFT (i < DIM/2)#define C1 C(DIM/2, DIM/2, DIM/2)#define C2 C(DIM/2, DIM/4, DIM/4) return BL(i, j); } unsigned char GR(int i,int j){ // YOUR CODE HERE#define C3 C(DIM/2, 3*DIM/4, DIM/4)#define C4 C(DIM/2, DIM/4, DIM/16)#define C5 C(DIM/2, 3*DIM/4, DIM/16) return BL(i, j); } unsigned char BL(int i,int j){ // YOUR CODE HERE#define C(x, y, r) (_sq(i - (x)) + _sq(j - (y)) < _sq((r))) return !C1 ? 127 : C2 ? C4 ? 255 : 0 : C3 ? C5 ? 0: 255 : LEFT ? 0 :255; } void pixel_write(int,int); FILE *fp; int main(){ fp = fopen("taiji.ppm","wb"); fprintf(fp, "P6\n%d %d\n255\n", DIM, DIM); for(int j=0;j<DIM;j++) for(int i=0;i<DIM;i++) pixel_write(i,j); fclose(fp); return 0; } void pixel_write(int i, int j){ static unsigned char color[3]; color[0] = RD(i,j)&255; color[1] = GR(i,j)&255; color[2] = BL(i,j)&255; fwrite(color, 1, 3, fp); }
0 0
- 代码之美-2[转]
- 代码之美-1[转]
- 代码之美
- 代码之美-简洁
- 代码之美
- 说说代码之美
- 说说代码之美
- 《代码之美》记录
- _代码之美
- [ 前端 ] 代码之美!
- 数学之美,C++之美,代码之美
- 熊节-享受代码之美
- 徐继哲-享受代码之美
- 代码之美Beautiful Code
- 开始《代码之美》学习
- LINQ 代码简略之美
- 代码之美:正则表达式
- 代码之美:美丽测试
- DB9针型:RS485输出信号及接线端子引脚分配
- 快速滚动滑块(Fast ScrollThumb)的实现
- day10
- UESTC 94 Bracket Sequence(线段树的区间更新)
- Notification自定义界面
- 代码之美-2[转]
- html基础1
- 《深入浅出struts2》--第七章,类型转换-支持与Map一起使用
- PAT (Advanced Level) 1056. Mice and Rice (25) 模拟比赛,用queue辅助
- webapp
- mysql编码设置
- spring中@value注解需要注意
- jQuery判断浏览器是移动端还是电脑端自动跳转
- 安卓自定义View实现图片上传进度显示(仿QQ)