![]() |
#local fn_A=function(x){abs(x)-.5}; #local fn_B=function{abs(z)-3/16/2}; #local fn_C=function{abs(y)-.5}; #local N=.25; #local fn_Smooth=function(x){x*x*x*(10+x*(6*x-15))}; #local fn_twistY=function{z*sin(fn_Smooth(x)*2*pi*N) + y*cos(fn_Smooth(x)*2*pi*N)}; #local fn_twistZ=function{z*cos(fn_Smooth(x)*2*pi*N) - y*sin(fn_Smooth(x)*2*pi*N)}; #local fn_twist_Box=function{max( fn_A(x-.5), fn_B(x,fn_twistY(x,y,z),fn_twistZ(x,y,z)), fn_C(x,fn_twistY(x,y,z),fn_twistZ(x,y,z))) }; isosurface { function { fn_twist_Box(x-.5,y,z) } contained_by {box{<.5,-.5,-.5>,<1.5,.5,.5>}} threshold 0 accuracy 0.001 max_gradient 1.58 max_trace 5 } |
Twist_90degree_iso.zip
5kb Twist_90degree_iso.mdl |
![]() |
#local H=1; #local fn_A=function{sqrt(x*x+ y*y) - 1}; isosurface { function { max( fn_A(x,y,z), z-f_th(x,z,y)*H/pi, -fn_A(x*1.5,y*1.5,z) ) } contained_by {box{<-1,-1,-1>,<1,1,1>}} threshold 0 accuracy 0.01 max_gradient 399 max_trace 5 } |
Cylindrical_ramp.zip 5kb Cylindrical_ramp.mdl |