// 直方体を xy-平面上に描く 5b
// x 軸の正の方向に移動させながら、x 軸の回り, y 軸の回り, 原点の回りに回転させる

import java.applet.Applet;
import java.awt.*;

public class cuboid5b extends Applet {
    public void paint(Graphics g) {
        int d_x = 20;             // 平行移動距離(x 軸方向)の初期値
        int d_y = 20;             // 平行移動距離(y 軸方向)の初期値
        int d_z = 20;             // 平行移動距離(z 軸方向)の初期値
        char axis1 ='z';
        char axis2 ='y';
        char axis3 ='x';
        double theta1 = 10;       // axis1 軸回りの回転角度
        double theta2 = 20;       // axis2 軸回りの回転角度
        double theta3 = 30;       // axis3 軸回りの回転角度
        double scale = 0.6;       // 大きさ
        double inc_x = 30;        // x 軸方向の平行移動の増分
        double inc_y = 0;         // y 軸方向の平行移動の増分
        double inc_z = 0;         // z 軸方向の平行移動の増分
        double inc_theta_x = 20;  // x 軸の回りの回転角度の増分
        double inc_theta_y = 0;   // y 軸の回りの回転角度の増分
        double inc_theta_z = 0;   // z 軸の回りの回転角度の増分
        int i,n;

        n = 360/(int)inc_theta_x;
        for (i=0; i<n; i++) { 
            cuboid4c.paint(g,d_x,d_y,d_z,axis1,theta1,axis2,theta2,axis3,theta3,scale);
            d_x += inc_x;
            d_y += inc_y;
            d_z += inc_z;
            theta1 += inc_theta_z;
            theta2 += inc_theta_y;
            theta3 += inc_theta_x;
        }
    }
}