//-------------------------------------------------------------------------- #declare fn_A = function { sqrt(y*y + z*z) - 0.8 } #declare fn_B = function { abs(x)+abs(y)-1 } #declare Blob_threshold=0.125; isosurface { //------------------------------------------------------------- function { (1+Blob_threshold) -pow(Blob_threshold,fn_A(x,y,z)) -pow(Blob_threshold,fn_B(x,y,z)) } max_gradient 4 contained_by { box { <-4,-2,-3>, <4,2,3> } } texture{ pigment{ color rgb<1,0.3,0.4>} finish { phong 1}} scale 0.5 rotate<0,20,0>rotate<-45,0,0> translate <0, 1.5, 0.2> } // end of isosurface -----------------------------------------------------