Blob Farm

blob49

The blob in all its glory:

Twirl with your mouse

This was tweaked to have a flattish spot on the front for a display and two arms for controls.

Click on the snapshot to download the blob's stl file. ../snapshots/blob49.png
Octave Code:
  # name of the blob
  project = "blob49";  
   
  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
#    w = (x.^2+y.^2+z.^2)-1; 

   w = (-0.168747E0)+(-0.104064E-1).*x+0.142448E-3.*x.^2+(-0.13291E-5).* ...
       x.^3+0.346527E-7.*x.^4+(-0.106246E-9).*x.^5+0.227807E-11.*x.^6+( ...
       -0.966656E-14).*x.^7+0.4096E-16.*x.^8+0.724991E-5.*y.^2+ ...  
       0.504406E-6.*x.*y.^2+0.416582E-7.*x.^2.*y.^2+(-0.159729E-9).* ...  
       x.^3.*y.^2+0.274835E-11.*x.^4.*y.^2+(-0.90624E-14).*x.^5.*y.^2+ ...  
       0.512E-16.*x.^6.*y.^2+0.134519E-7.*y.^4+(-0.395395E-10).*x.*y.^4+ ...
       0.105032E-11.*x.^2.*y.^4+(-0.2832E-14).*x.^3.*y.^4+0.24E-16.* ...  
       x.^4.*y.^4+0.129351E-12.*y.^6+(-0.295E-15).*x.*y.^6+0.5E-17.* ...  
       x.^2.*y.^6+0.390625E-18.*y.^8+(-0.611221E-2).*z+0.39366E-3.*x.*z+( ...
       -0.598985E-5).*x.^2.*z+0.34754E-8.*x.^3.*z+(-0.587341E-9).*x.^4.* ...
       z+0.362496E-11.*x.^5.*z+(-0.2048E-13).*x.^6.*z+(-0.248302E-5).* ...
       y.^2.*z+0.127516E-7.*x.*y.^2.*z+(-0.520253E-9).*x.^2.*y.^2.*z+ ... 
       0.22656E-11.*x.^3.*y.^2.*z+(-0.192E-13).*x.^4.*y.^2.*z+( ...  
       -0.105222E-9).*y.^4.*z+0.354E-12.*x.*y.^4.*z+(-0.6E-14).*x.^2.* ...  
       y.^4.*z+(-0.625E-15).*y.^6.*z+0.440908E-3.*z.^2+0.122567E-5.*x.* ... 
       z.^2+0.400506E-7.*x.^2.*z.^2+(-0.45312E-9).*x.^3.*z.^2+0.384E-11.* ...
       x.^4.*z.^2+0.220886E-7.*y.^2.*z.^2+(-0.1416E-9).*x.*y.^2.*z.^2+ ...
       0.24E-11.*x.^2.*y.^2.*z.^2+0.375E-12.*y.^4.*z.^2+(-0.27848E-6).* ...
       z.^3+0.1888E-7.*x.*z.^3+(-0.32E-9).*x.^2.*z.^3+(-0.1E-9).*y.^2.* ...
       z.^3+0.1E-7.*z.^4;
   endfunction;

   c_outer = [0,0,0]; # center of ellipsoid for outer surface
   r_outer = [1,1,1];# x,y,z radii for ellipsoid for outer surface
   step = 2;  # grid pitch in mm  start with 4mm to see the shape quickly.  Once you have it just right, change to 2mm for printing

  source("../octave/func2stl_v01.m");  # do all the calculations 
GNU Octave