|
![](/i/fill.gif) |
Hi,
try this:
#declare mid=function(x,y,z){min(max(x,y),max(x,z),max(y,z))}
#declare maxlevel=5;//set to what you like
#declare level=0;
#while(level<maxlevel)
Parse_String(concat("#declare sponge",str(level,0,0)))=function(x,y,z){
select(
(l&mid(abs(x),abs(y),abs(z))>1/3)-0.5
,
mid(abs(x),abs(y),abs(z))-1/3
,
Parse_String(concat("sponge",str(level,0,0)))(abs(3*x)-2,abs(3*y)-2,abs(3*z)-2)
)
}
#set l=l+1;
#end
isosurface{
function{concat("sponge",str(maxlevel,0,0))(x,y,z)}
material{m_concrete}
scale 5
}
Post a reply to this message
|
![](/i/fill.gif) |