blob49 |
The blob in all its glory:
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. |
# 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 calculationsGNU Octave