Page 697 - 2
P. 697

object[num].y = Y;
                    object[num].z = Z;
            }


            float angle_x(Coordinate point, Vector state)
            {
                    return atan((point.x - state.pos) / point.y) * 180 / PI;
            }


            float angle_y(Coordinate point, Vector state)
            {
                    return atan(point.z / (sqrt(pow(point.x - state.x, 2) + pow(point.y, 2)))) * 180 / PI;
            }


            void focusing(int focus_object)
            {
                    focusing_Enable = 1;


                    if (changing_object_Enable == 0)
                    {
                            speed.x = (angle_x(object[focus_object], state) - state.x) / PERIOD;
                            float temp = angle_y(object[focus_object], state);
                            speed.y = (angle_y(object[focus_object], state) - state.y) / PERIOD;
                    }


                    if (focus_object != selected_object)
                    {
                            changing_object_Enable = 1;
                            changing_coordinate.x = state.pos + sin(state.x*PI / 180);
                            changing_coordinate.y = cos(state.x*PI / 180);
                            changing_coordinate.z = sin(state.y*PI / 180);
                            selected_object = focus_object;


                            float time = change_time - (out / 2) - (in / 2);
                            normal_change_speed.x = (object[focus_object].x - changing_coordinate.x) / time;
                            normal_change_speed.y = (object[focus_object].y - changing_coordinate.y) / time;
                            normal_change_speed.z = (object[focus_object].z - changing_coordinate.z) / time;
                    }
                    if (changing_object_Enable == 1)
                    {
                            if (changing_progress < in)
                            {
                                    float percent = (changing_progress) / (in);
                                    object_speed.x = normal_change_speed.x*percent;
                                    object_speed.y = normal_change_speed.y*percent;


                                                         - 697 -
   692   693   694   695   696   697   698   699   700   701   702