-- Air Twist
my_model(x[3], a[1])
{
array p[3], center[3], m[3];
center = [0, 0, 0];
p[1] = x[1]/6;
p[2] = x[2]/6;
p[3] = x[3]/6;
futa = 64 - (x[3])^2;
hontai = hfEllipsoid(p,center,1.5,0.6,0.7);
center = [-0.1, 0, -0.2];
hane = hfEllipsoid(p,center,0.6,1.7,0.2);
futa2 = 81 - (x[1])^2;
center = [0,0,0];
prop1 = hfEllCylX(p,center,0.1,0.1);
x1 = x[1]+9.0;
z1 = -10;
z2 = 10;
s1 = 1;
s2 = 1;
t = (p[3]-z1)/(z2-z1);
theta1 = 1;
theta2 = 120;
theta = (1-t)*theta1 + t*theta2;
x2 =x1*cos(theta)+x[2]*sin(theta);
y2 =-x1*sin(theta)+x[2]*cos(theta);
ellispsoid2 = 1-((x2-0.4)/0.8)^(2/0.5)-(y2/0.5)^(2/0.5)-(p[3]/5)^(2/0.5);
center = [1.6,0.6,0];
en1 = hfSphere(p,center,0.25);
center = [1.6,-0.6,0];
en2 = hfSphere(p,center,0.25);
f1=en1;
f2=en2;
a0=0.6;
a1=0.3;
a2=0.3;
blend =f1+f2 +sqrt(f1^2 + f2^2)+a0/(1+(f1/a1)^2+(f2/a2)^2);
center = [-0.1,0.0,0.0];
torus = hfTorusZ(x,center,5.5,0.6);
center = [-1.4,0,0];
prop2 = hfEllipsoid(p,center,0.1,1.6,0.1);
center = [-0.8,0.3,0.4];
en3 = hfSphere(p,center,0.2);
center = [-0.8,-0.3,0.4];
en4 = hfSphere(p,center,0.2);
my_model = (hontai\en3\en4)|hane|(prop1&futa2)|(ellispsoid2&futa)|blend|torus|prop2;
}