一些帮助渲染Mandelbrot集 [英] Some help rendering the Mandelbrot set

查看:130
本文介绍了一些帮助渲染Mandelbrot集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我并没有在寻找一个完整的解决方案(自然地),我'如果我有一个给定的 Complex 数字,派生自复杂平面上的一个点。我现在需要根据轨道是否增加几个数量级来迭代它的轨道序列和绘图点。

如何收集复数的轨道?任何指导都非常感激(链接等)。测试轨道序列所需的Math函数上的任何指针,例如 Math.pow()



我使用的是Java,但这不是特别相关。 b
$ b

再次感谢
Alex当你显示Mandelbrot集合时,你只需将真实平面和虚拟平面分别转换为x和y坐标。

例如,复数 4.5 + 0.27i

code>转化为 x = 4.5,y = 0.27



Mandelbrot集合方程 Z =Z²+ C 绝不会达到其中| Z |的值> = 2,但实际上在特定的迭代次数内包含值不超过2的所有点,例如1000.要获得您通常看到的色彩渲染,可以为外部点指定不同的颜色这个集合取决于它们到达极限的速度。

因为它是复数,所以方程实际上是 Zr + Zi =(Zr + Zi) ²+ Cr + Ci 。你可以将它分成两个等式,一个用于真实平面,另一个用于虚拟平面,然后它只是简单的代数。 C是你想测试点的坐标,Z的初始值是零。

下面是我的多线程Mandelbrot生成器的图像:)




I have been given some work to do with the fractal visualisation of the Mandelbrot set.

I'm not looking for a complete solution (naturally), I'm asking for help with regard to the orbits of complex numbers.

Say I have a given Complex number derived from a point on the complex plane. I now need to iterate over its orbit sequence and plot points according to whether the orbits increase by orders of magnitude or not.

How do I gather the orbits of a complex number? Any guidance is much appreciated (links etc). Any pointers on Math functions needed to test the orbit sequence e.g. Math.pow()

I'm using Java but that's not particularly relevant here.

Thanks again, Alex

解决方案

When you display the Mandelbrot set, you simply translate the real and imaginaty planes into x and y coordinates, respectively.

So, for example the complex number 4.5 + 0.27i translates into x = 4.5, y = 0.27.

The Mandelbrot set is all points where the equation Z = Z² + C never reaches a value where |Z| >= 2, but in practice you include all points where the value doesn't exceed 2 within a specific number of iterations, for example 1000. To get the colorful renderings that you usually see of the set, you assign different colors to points outside the set depending on how fast they reach the limit.

As it's complex numbers, the equation is actually Zr + Zi = (Zr + Zi)² + Cr + Ci. You would divide that into two equations, one for the real plane and one for the imaginary plane, and then it's just plain algebra. C is the coordinate of the point that you want to test, and the initial value of Z is zero.

Here's an image from my multi-threaded Mandelbrot generator :)

这篇关于一些帮助渲染Mandelbrot集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆