-- Bar: apple, Tatsushi Someya, graduate school, Hosei University, 2004 apple(x[3], a[1]) { array center01[3]; array center02[3]; array vertex01[3]; array xt01[3]; xt01[1]=x[1]; xt01[2]=x[2]; xt01[3]=x[3]; tmp = hfScale3D(xt01, 1, 1.8, 1); tmp = hfTaperY(xt01,-3,1,0.8,1); center01=[0, 0, 0]; obj01 = hfTorusY(xt01,center01,2.4,2.4) + hfNoiseG(xt01, 0.6, 1.0, 1.4); center02=[18, 0, 0]; obj02 = hfTorusZ(x,center02,18,0.4); vertex01 = [-3, 0, -3]; obj03 = hfBlock(x, vertex01, 6, 7, 6); apple = obj01 | (obj02 & obj03); }