private void teachpoint2_process_Click(object sender, EventArgs e)
        {
            teachPoint2 = grbl.posMarker;
            double angle1 = teachPoint1.AngleTo(teachPoint2);
            double dist1  = teachPoint1.DistanceTo(teachPoint2);
            double angle2 = teachPoint1.AngleTo((xyPoint)grbl.posWork);
            double dist2  = teachPoint1.DistanceTo((xyPoint)grbl.posWork);
            double angle  = angle1 - angle2;

            lblAngle.Text = String.Format("{0:0.00}°", angle);

            OnRaiseXYEvent(new XYEventArgs(angle, dist2 / dist1, teachPoint1, "a"));       // rotate arround TP1
        }
 private void pictureBoxVideo_MouseUp(object sender, MouseEventArgs e)
 {
     if (e.Button == MouseButtons.Right)
     {
         measureAngleStop = (xyPoint)pictureBoxVideo.PointToClient(MousePosition);
         angle            = (float)measureAngleStart.AngleTo(measureAngleStop);
         measureAngle     = false;
         lblAngle.Text    = String.Format("{0:0.00}°", angle);
         if (angle != 0)
         {
             cmsPictureBox.Visible = false;
         }
         else
         {
             cmsPictureBox.Visible = true;
         }
     }
 }