Example #1
0
        private void xyControl_KinematicSolved()
        {
            var angles = new RobotAngles()
            {
                A1 = rotControl.Angle1, A2 = xyControl.Angle1, A3 = xyControl.Angle2
            };

            mArm.SetAngles(angles);

            UpdateAnglesLabels();

            int length = (int)xyControl.TargetPosition.X;

            rotControl.Length1 = length / 2;
            rotControl.Length2 = rotControl.Length1;
        }
Example #2
0
        private void rotControl_KinematicSolved()
        {
            var x = rotControl.TargetPosition.X;
            var y = rotControl.TargetPosition.Y;

            int length = (int)Math.Sqrt(x * x + y * y);

            double a1, a2;

            xyControl_InverseKinematicsSolver(length, (int)xyControl.TargetPosition.Y, xyControl.Length1, xyControl.Length2, out a1, out a2);

            var angles = new RobotAngles()
            {
                A1 = rotControl.Angle1, A2 = a1, A3 = a2
            };

            mArm.SetAngles(angles);

            UpdateAnglesLabels();

            xyControl.Angle1 = a1;
            xyControl.Angle2 = a2;
        }