返回列表 回复 发帖
这个特效更绝:

Fractal1.jpg (36.81 KB)

Fractal1.jpg

41# xiaongxp


可以用几何画板的图层合并来完成:

捕获2.JPG (39.55 KB)

捕获2.JPG

49# dyk


与UF一样,就是你之前的多张图片重叠的方法。底层设置不透明,重在上面的设置不同的透明程度。一条扫描线扫两幅图也可以但效果不佳。
53# 柳烟


放大图的小M有变化吗?
58# 柳烟


不要查了,UF中也没有,我就是觉得奇怪。
64# xiaongxp


HilbertCurve(BOTH) {
; By Samuel Monnier, 2.9.00
init:
  z = 0
  int i = 0
  int ttype = 0
  float d = -1e20
loop:
  
final:
  
  z = #z/2
  z = abs(z) - (.5,.5)
  while i < @niter
    i = i + 1
    if ttype == 0
      if real(z) < 0 && imag(z) < 0
        z = 2*z + (.5,.5)
        z = -conj(z)
      elseif real(z) > 0 && imag(z) < 0
        z = 2*z + (-.5,.5)
        z = 1i*z
      elseif real(z) > 0 && imag(z) > 0
        z = 2*z + (-.5,-.5)
        z = 1i*conj(z)
      elseif real(z) < 0 && imag(z) > 0
        z = 2*z + (.5,-.5)
        ttype = 1
      endif
    else
      if real(z) < 0 && imag(z) < 0
        z = 2*z + (.5,.5)
        z = 1i*z
        ttype = 0
      elseif real(z) > 0 && imag(z) < 0
        z = 2*z + (-.5,.5)
        z = -1i*conj(z)
        ttype = 0
      elseif real(z) > 0 && imag(z) > 0
        z = 2*z + (-.5,-.5)
        ttype = 0
      elseif real(z) < 0 && imag(z) > 0
        z = 2*z + (.5,-.5)
        z = -conj(z)
        ttype = 0
      endif
    endif  
  endwhile
  
  if @style == 0
    z = z + (1,1)
    if ttype == 0
      if abs(real(z))-1 > d
        d = abs(real(z))-1
      endif
     if abs(imag(z))-1 > d
        d = abs(imag(z))-1
      endif
    else
      d = imag(z)-1
    endif
  elseif @style == 1 || @style == 2
    if ttype == 0
      d = cabs(z+(.5,.5))-.5
    else
      if @style == 1
        d = imag(z)
      else
        d = imag(z) - (real(z)^2-.25)^2*3
      endif
    endif
  elseif @style == 3
   
    if ttype == 0
      z = z + (.5,.5)
      d = abs(real(z)) + abs(imag(z)) - .5
    else
      ;d = imag(z)-.5
      d = abs(real(z)) - imag(z) - .5
    endif
  endif
   
  #index = abs(d)^@power
  
default:
  title = "Hilbert Curve"
  helpfile = "sam-help/hilbert.htm"
  
  param style
    caption = "Style"
    default = 0
    enum = "Square" "Round I" "Round II" "Diagonal"
  endparam  
  
  param power
    caption = "Thickness"
    default = .1
  endparam
  
  param niter
    caption = "Number of Iterations"
    default = 4
  endparam
}
79# 柳烟


第9图的那个参数好象有误。
92# 柳烟


这个逃逸区有趣。
87# 柳烟
我最怕的就是着色中有对数函数,几何画板有个缺陷:if n=A else n=B我们通常是用sgn来处理的,它必须A与B都有意义才能计算,即它不是真正的判断函数,这与编程软件是有区别的。

dmj-Lyapunov-2.JPG (59.05 KB)

dmj-Lyapunov-2.JPG

96# 柳烟


这个着色没有特殊的方法啊,你做的结果应该是正确的,把颜色调淡些试试。
返回列表