樹木曲線によるフラクタル図形をレンダリングしました

参考までに POV-Rayで
樹木曲線によるフラクタル図形(左側) の描画方法を載せておきます
//**********************************************************************************
#macro YSH(Vcl)
#local Y=Vcl.x; #local rHa=radians(139+Vcl.z);
#local CR=Vcl.y*sin(rHa); #local CB=Vcl.y*cos(rHa);
#local R=Y+CR;
#local G=Y-(0.299*CR+0.114*CB)/0.587;
#local B=Y+CB;
#local Cmax=max(R,G,B);
#if(Cmax>1) #local Cvec=<R,G,B>/Cmax; #else #local Cvec=<R,G,B>; #end
rgb Cvec
#end // macro end
//**********************************************************************************
#local Pb = pigment { color YSH(< 0.1 , 0.8 , 290 >) }
//**********************************************************************************
#local Th=90;
#local Bv=<1,Th>; #local Ml=<0.64,Th+25>; #local Mr=<0.56,Th-16>;
#local Pos=Bv.x*<cos(radians(Bv.y)),sin(radians(Bv.y))>;
//
#local L=1;
#local Nmax=10; #local Sc=1.8*26/L; #local Lw=0.125*pow(5/4,Nmax-1);
//
#local N=0;
#local Base =
union { cylinder { 0, L*Pos Lw/Sc } sphere { L*Pos Lw/Sc } }
#local Tree=Base;
//
#local N=1; #while(N<Nmax)
#local Tree =
union {
object { Base }
object { Tree scale (Ml.x) rotate (Ml.y-Th)*z translate L*Pos*0.5 }
object { Tree scale (Ml.x) rotate (Ml.y-Th)*z translate L*Pos }
object { Tree scale (Mr.x) rotate (Mr.y-Th)*z translate L*Pos }
}
#local N=N+1; #end
object { Tree texture { Pb } scale Sc translate -56*y-21*x }
//**********************************************************************************





