Beispiel #1
0
            public override double calc_position(ref move m, double move_time)
            {
                Vector3d c = m.get_coord(move_time);
                double   dx = tower_x - c.X, dy = tower_y - c.Y;

                return(Math.Sqrt(arm2 - dx * dx - dy * dy) + c.Z);
            }
Beispiel #2
0
            public override double calc_position(ref move m, double move_time)
            {
                Vector3d c = m.get_coord(move_time);
                double   dx = anchor.X - c.X, dy = anchor.Y - c.Y;
                double   dz = anchor.Z - c.Z;

                return(Math.Sqrt(dx * dx + dy * dy + dz * dz));
            }
Beispiel #3
0
            public override double calc_position(ref move m, double move_time)
            {
                Vector3d c = m.get_coord(move_time);

                // XXX - handle x==y==0
                // XXX - handle angle wrapping
                return(Math.Atan2(c.Y, c.X));
            }
Beispiel #4
0
 public override double calc_position(ref move m, double move_time)
 {
     return(m.get_coord(move_time).Z);
 }
Beispiel #5
0
            public override double calc_position(ref move m, double move_time)
            {
                Vector3d c = m.get_coord(move_time);

                return(c.X - c.Y);
            }
Beispiel #6
0
            public override double calc_position(ref move m, double move_time)
            {
                Vector3d c = m.get_coord(move_time);

                return(Math.Sqrt(c.X * c.X + c.Y * c.Y));
            }