public AXISSTATUS[] AxesStatus = new AXISSTATUS[2]; // 托架的兩軸狀態,應通過AxesStatus[AXIS1]和AxesStatus[AXIS2]引用 public Mount() { mConnection = null; MCVersion = 0; IsEQMount = false; Positions[0] = 0; Positions[1] = 0; TargetPositions[0] = 0; TargetPositions[1] = 0; SlewingSpeed[0] = 0; SlewingSpeed[1] = 0; AxesStatus[0] = new AXISSTATUS { FullStop = false, NotInitialized = true, HighSpeed = false, Slewing = false, SlewingForward = false, SlewingTo = false }; AxesStatus[1] = new AXISSTATUS { FullStop = false, NotInitialized = true, HighSpeed = false, Slewing = false, SlewingForward = false, SlewingTo = false }; }
private static void UpdateStatus() { AxisPos1 = pMount.MCGetAxisPosition(AXISID.AXIS1) / RAD1; AxisPos2 = pMount.MCGetAxisPosition(AXISID.AXIS2) / RAD1; AxisStatus1 = pMount.MCGetAxisStatus(AXISID.AXIS1); AxisStatus2 = pMount.MCGetAxisStatus(AXISID.AXIS2); //EventInvoker.BeginInvoke(StatusUpdated, null, null, null); //StatusUpdated.BeginInvoke(typeof(Controller), null, null, null); StatusUpdated.Invoke(typeof(Controller), null); //System.Diagnostics.Trace.WriteLine(string.Format("Update Status, {0:f2} {1:f2} {2} {3}", AxisPos1, AxisPos2, AxisStatus1.FullStop, AxisStatus2.FullStop),"INFO"); }