blob06 |
The blob in all its glory:
Click on the snapshot to download the blob's stl file. |
1; # Prevent Octave from thinking that this is a function # though one is defined here function w = f(x2,y2,z2,c,r,e) x = (x2-c(1))/r(1); y = (y2-c(2))/r(2); z = (z2-c(3))/r(3); # function at origin must be <0, and >0 far enough away. w=0 defines the surface th = atan2(x,y); r = sqrt(x.^2+y.^2); phi = th + (r+r.^2)*0.05; w = ((x/70).^4+(y/70).^4+(z/30).^4).^(-8.0); w=w+((1/4)*((x+y+40+134)/(4*1.4))./(1.0+((((x+67)/4).^2+((y+67)/4).^2).^0.5-2).^2))./(1+((z-20)/20).^2); w=w+((1/4)*((x-y+40+134)/(4*1.4))./(1.0+((((x+67)/4).^2+((y-67)/4).^2).^0.5-2).^2))./(1+((z-20)/20).^2); w=w+((1/4)*((-x+y+40+134)/(4*1.4))./(1.0+((((x-67)/4).^2+((y+67)/4).^2).^0.5-2).^2))./(1+((z-20)/20).^2); w=w+((1/4)*((-x-y+40+134)/(4*1.4))./(1.0+((((x-67)/4).^2+((y-67)/4).^2).^0.5-2).^2))./(1+((z-20)/20).^2); w=w-1; endfunction;GNU Octave