/// <summary>
        /// 计算旋转后位置
        /// </summary>
        /// <param name="usingPlatform">哪边</param>
        /// <param name="X">相机中心位置</param>
        /// <param name="Y"></param>
        /// <param name="Sx">焊头位置</param>
        /// <param name="Sy"></param>
        /// <param name="Sr"></param>
        /// <param name="Ang"></param>
        /// <param name="Tx"></param>
        /// <param name="Ty"></param>
        public static void Transorm(int ID, float X, float Y, float Sx, float Sy, float Ang, out float Tx, out float Ty)
        {
            TeachingMechinePra mechinePra = new TeachingMechinePra();

            PointF rotateCur = new PointF();

            rotateCur.X = Sx;
            rotateCur.Y = Sy;              //装换前的角度和位置

            PointF rotateC = new PointF(); //旋转中心
            double r       = 0;

            mechinePra = ProjectData.Instance.SaveData.SolderPlatform[ID].teachingMechine;
            r          = Ang;

            rotateC.X = X - mechinePra.RotatePstionCameraSize.X;
            rotateC.Y = Y - mechinePra.RotatePstionCameraSize.Y;

            double radius = mechinePra.Radius;//圆心半径
            Circle circle = new Circle(rotateC, (float)radius);

            PointF pos = circle.Rotate(rotateCur, r);

            Tx = pos.X;
            Ty = pos.Y;
        }
示例#2
0
        public Frm_Machine(BoardCtrllerManager movedriverZm, TeachingMechinePra TeachingMechinePra, UsingPlatformSelect usingPlatform)
        {
            InitializeComponent();


            this.movedriverZm    = movedriverZm;
            this.TeachingMechine = TeachingMechinePra;
            if (usingPlatform == UsingPlatformSelect.Left)
            {
                this.xID = (int)AxisDef.AxX1;
                this.yID = (int)AxisDef.AxY1;
                this.zID = (int)AxisDef.AxZ1;
                this.rID = (int)AxisDef.AxR1;
                this.tID = (int)AxisDef.AxT1;
                _id      = 0;
                SafeZ    = FormMain.RunProcess.LogicData.slaverData.basics.Safe_ZL;
            }
            else
            {
                this.xID = (int)AxisDef.AxX2;
                this.yID = (int)AxisDef.AxY2;
                this.zID = (int)AxisDef.AxZ2;
                this.rID = (int)AxisDef.AxR2;
                this.tID = (int)AxisDef.AxT2;
                _id      = 1;
                SafeZ    = FormMain.RunProcess.LogicData.slaverData.basics.Safe_ZR;
            }
            Binding();
        }
 public SolderPlatformPara()
 {
     machineSolder       = new PointF2();
     machineSoldercamera = new PointF2();
     ResetPos            = new PointF4();
     EndPos          = new PointF4();
     teachingMechine = new TeachingMechinePra();
     UseR            = false;
     PerTimesClean   = 1;
 }