O*d
3 楼
用OpenGL画的图,主要用OpenGL的alpha blending来产生明暗。颜色是随机的,每次运
行都不一样。函数如下,但要有一些setup.
void drawMandlebrot()
{
double zx, zy, zx1, m;
GLfloat *buffer;
if(sizeChanged)
{
buffer = new GLfloat [currentWidth * currentHeight * 4];
if(buffer)
{
int halfWidth = currentWidth / 2;
int halfHeight = currentHeight / 2;
double x, y;
float alpha;
double fx = ZOOM / (double)halfWidth;
行都不一样。函数如下,但要有一些setup.
void drawMandlebrot()
{
double zx, zy, zx1, m;
GLfloat *buffer;
if(sizeChanged)
{
buffer = new GLfloat [currentWidth * currentHeight * 4];
if(buffer)
{
int halfWidth = currentWidth / 2;
int halfHeight = currentHeight / 2;
double x, y;
float alpha;
double fx = ZOOM / (double)halfWidth;
O*d
5 楼
上边函数用到的几个参数
const unsigned int WIDTH = 1500U;
const unsigned int HEIGHT = 1000U;
const double RATIO = (double)HEIGHT /(double)WIDTH;
/* zoom is calibrated to width 1000 */
const double ZOOM = 0.000000001 * (double)WIDTH / 1000.0 ;
const double ZOOM_Y = ZOOM * RATIO;
const int MAX_ITER = 1800;
/* x and y center of the image */
double xOffset = -0.713;
double yOffset = 0.34;
const unsigned int WIDTH = 1500U;
const unsigned int HEIGHT = 1000U;
const double RATIO = (double)HEIGHT /(double)WIDTH;
/* zoom is calibrated to width 1000 */
const double ZOOM = 0.000000001 * (double)WIDTH / 1000.0 ;
const double ZOOM_Y = ZOOM * RATIO;
const int MAX_ITER = 1800;
/* x and y center of the image */
double xOffset = -0.713;
double yOffset = 0.34;
O*d
9 楼
计算时间大部分都花在 for(k = 0; k < MAX_ITER; ++k)
O*d
11 楼
放大倍数越高,计算时间需要越长。因为Mandelbrot的边缘处于发散和收敛的临界,放
大倍数越高,计算时要求的iteration次数就要越多才能比较精确确定是发散还是收敛
。 现在基本上还没有理论解决怎样不用反复计算的方法来确定一个点是不是在
Mandelbrot set之内。
大倍数越高,计算时要求的iteration次数就要越多才能比较精确确定是发散还是收敛
。 现在基本上还没有理论解决怎样不用反复计算的方法来确定一个点是不是在
Mandelbrot set之内。
相关阅读
Nature文章PICK UP PYTHON大家每年给公司check in大概多少行的代码?node.js 0.12 is releasingLaravel 5.0 released最expressive的三大语言刚看完C++ Primer,和一个网络教程我对新技术的态度是:不到万不得已绝对不主动学习我老婆是大学教授,教编程入门课,学生普遍难以理解变量从争论中的一点思考java substring这货竟然不是subString.快被python搞死了入了一本java8后悔了106个热门mid-sized it公司推荐 (转载)Third-party Node.js Foundation takes over jurisdiction ofIntelliJ怎么配Java8?AppGyver Supersonic 真不错clojure和common lisp区别大么,语法上。请问如何才能获得一个公司如何运转的各方面知识和经验java里的corba是干嘛的 还有人用么?Python 2015年1月楼