|
blob20 |
|
The blob in all its glory:
Twirl with your mouse
start of a two handled case.
| Click on the snapshot to download the blob's stl file. |
|
clf;
xmin = -10;
xmax = 10;
ymin = -10;
ymax = 10;
zmin = -2;
zmax = 2;
xn = 150;
yn = 150;
zn = 50;
[x,y,z] = meshgrid (xmin:(xmax-xmin)/(xn-1):xmax,
ymin:(ymax-ymin)/(yn-1):ymax,
zmin:(zmax-zmin)/(zn-1):zmax);
p1x = 2; p1y = 3; p1z = 4;
p2x = -1; p2y = 1; p2z = -2;
p3x = -2; p3y = -3; p3z = 4;
p4x = -1; p4y = 1; p4z = -2;
fx=(x+y)/50;
fy=(x-y)/50;
fz=z/25;
# r = (fx.^2.*(1 - fx.^2) - fy.^2).^2 + 0.5*fz.^2 - 0.025*(1 - 0.1*(fx.^2 + fy.^2 + fz.^2));
k2 = 4 ;
r = 1.0./(0.2 + (x/2.5).^2 + (y/5).^12 + (z/1).^2) - 1./(0.2 + ((x/1.5).^4 + ((y - 3)/01).^4).^4 + z.^2) - 1./(0.1 + ((x/1.5).^k2 + ((y + 3)/01).^k2).^4 + z.^2);
[f3,v3]=isosurface (x, y, z, r,1.0);
clf;
axis equal;
hold on;
patch("Faces",f3,"Vertices",v3,"facecolor","y");
# from http://iso2mesh.sourceforge.net
savestl(v3,f3,["blob20_1.stl"]);
GNU Octave