// Last edited on DATE TIME by USER
// Processed by remove-cam-lights

#include "colors.inc"
#include "textures.inc"
#include "stones.inc"
#include "finish.inc"

#declare bz_name = "Asas"

#declare A11 = <0, 0,   0>;
#declare A12 = <0, 0.5, 1>;
#declare A13 = <0, 1,   1>;
#declare A14 = <0, 1.5, 0>;

#declare A21 = <2.5, -0.5, 0>;
#declare A22 = <2.5,  0.5, 1>;
#declare A23 = <2.5,    1, 1>;
#declare A24 = <2.5,  1.5, 0>;

#declare A31 = <5, -0.5, 0>;
#declare A32 = <5,  0.5, 1>;
#declare A33 = <5,    1, 1>;
#declare A34 = <5,  1.5, 0>;

#declare A41 = <7.5, -0.5, 0>;
#declare A42 = <7.8,  0.5, 1>;
#declare A43 = <8.2,    1, 1>;
#declare A44 = <8.5,  1.5, 0>;

#declare B11 = A11;
#declare B12 = <0, 0.5, -1>;
#declare B13 = <0,   1, -1>;
#declare B14 = A14;

#declare B21 = A21;
#declare B22 = <2.5, 0.5, -1>;
#declare B23 = <2.5,   1, -1>;
#declare B24 = A24;

#declare B31 = A31;
#declare B32 = <5, 0.5, -1>;
#declare B33 = <5,   1, -1>;
#declare B34 = A34;

#declare B41 = A41;
#declare B42 = <7.8, 0.5, -1>;
#declare B43 = <8.2,   1, -1>;
#declare B44 = A44;

#declare C11 = A41;
#declare C12 = A42;
#declare C13 = A43;
#declare C14 = A44;

#declare C21 = <8,  -1,   0>;
#declare C22 = <8.5, 0,   1>;
#declare C23 = <9,   0.3, 1>;
#declare C24 = <9.5, 0.5, 0>;

#declare C31 = <8.5, -2, 0>;
#declare C32 = <9.5, -1, 1>;
#declare C33 = <10.5, 0, 1>;
#declare C34 = <11.5, 0.3  0>;

#declare C41 = <9.5,  -2.5, 0>;
#declare C42 = <10.5, -2.4, 0.2>;
#declare C43 = <11.5, -2.3, 0.2>;
#declare C44 = <12.5, -2.1, 0>;

#declare D11 = C11;
#declare D12 = <7.8, 0.5, -1>;
#declare D13 = <8.2,   1, -1>;
#declare D14 = C14;

#declare D21 = C21;
#declare D22 = <8.5,   0, -1>;
#declare D23 = <  9, 0.3, -1>;
#declare D24 = C24;

#declare D31 = C31;
#declare D32 = < 9.5, -1, -1>;
#declare D33 = <10.5,  0, -1>;
#declare D34 = C34;

#declare D41 = C41;
#declare D42 = <10.5, -2.4, 0.3>;
#declare D43 = <11.5, -2.3, 0.3>;
#declare D44 = C44;

#declare bz_scale = 0.35;
#include "bz-things.inc"

#declare parte1 =
  union{
    bicubic_patch {
      type 0
      flatness 0
      u_steps 3
      v_steps 3
      A11, A12, A13 , A14,
      A21, A22, A23 , A24,
      A31, A32, A33 , A34,
      A41, A42, A43 , A44
      texture { bz_tx_A }
    }

  }

#declare parte2 =
  union{
    bicubic_patch {
      type 0
      flatness 0
      u_steps 3
      v_steps 3
      B11, B12, B13 , B14,
      B21, B22, B23 , B24,
      B31, B32, B33 , B34,
      B41, B42, B43 , B44
      texture { bz_tx_B }
    }

  }

#declare parte3 =
  union{
    bicubic_patch {
      type 0
      flatness 0
      u_steps 3
      v_steps 3
      C11, C12, C13 , C14,
      C21, C22, C23 , C24,
      C31, C32, C33 , C34,
      C41, C42, C43 , C44
      texture { bz_tx_C }
    }

  }

#declare parte4 =
  union{
    bicubic_patch {
      type 0
      flatness 0
      u_steps 3
      v_steps 3
      D11, D12, D13 , D14,
      D21, D22, D23 , D24,
      D31, D32, D33 , D34,
      D41, D42, D43 , D44
      texture { bz_tx_D }
    }

  }

#declare corpo =
 cylinder { <-6,0,0>,<6,0,0>,1 pigment { Blue } rotate 90*z }

object { bz_checker_bg }
union {
 object { parte1 }
 object { parte1 scale <-1,1,1> }
 object { parte2 }
 object { parte2 scale <-1,1,1> }
 object { parte3 }
 object { parte3 scale <-1,1,1> }
 object { parte4 }
 object { parte4 scale <-1,1,1> }
 object { corpo }
 rotate 90*x translate <3,0,0>
}