- UID
- 4723
- 帖子
- 752
- 精华
- 5
- 积分
- 1778
|
605# xiaongxp
我把我的思路说说,共探讨。
我在开始分形上色时(全屏),发现上彩的区分度不大,基本都在同一个色段,我仔细观察扫描时的数据变化,发现基本上都是在小数点后几位变动,开始我就在参数面板设置一个小区间做为上色的起点和终点。就像这样[0.00012,0.00014],但是我很快发现终点象的坐标太难确定。后来我就想如果能把数据放大,让数据强烈的波动起来,用数据波动的峰值去对应颜色。以突出显示那些颜色,电脑自动去完成。我在上色时用到了三个距离:
1.初象距离:r0=sqrt(x^2+y^2)或sqrt((x-xn)^2+(y-yn)^2)(如果有类似极限点的时候)
2.终点象距离 dist=sqrt(xn^2+yn^2)
3.逃逸距离(边界距离)esc=sqrt(x^2+y^2)-2
接着我依据sin(1/x),cos(1/x),等在原点附近会震荡,震荡的结果就会有很多峰值产生,
比如说RGB取
f(x)=tan(1/x),R=tan(f(r0))'
h(x)=sin(π/x)+sin(3π/x),G=h(esc)
u(x)=sin(6/x),B=u(dist)
.,反正可以产生震荡的函数很多如三角级数取前几项,负幂级数与周期函数嵌套等等。
震荡的结果就是把终点象的数据快速放大,从而产生夸张的色彩。
简单的讲究是用象声波那样的函数去对应颜色。你研究过weierstrass函数,你不妨把它作为一参数上色看看。
另外在上色时可以绘制f,h,u的图形,当看到象声波一样的图形就对了,而且看着声波,把声波上,下平移,可以再一定程度上方便控制颜色。
函数图象的y轴就知道颜面面板的设置值,我把函数f,h,u的值域与颜面面板上的设置的颜色宽度的交集叫主值区间,这个区间是主要参考的区间。值域超过着个区间的部分就不再变化(常色)。上下平移波形时就是反复和主值区间对比,以实现调试色彩。 |
|