public void StopTracking() { if (TrackingState != TrackingStates.Tracking) { return; } // stop platform tracking if (SharedResources.s_switch != null) { SharedResources.s_switch.SetSwitch(SharedResources.s_switchIdx, false); } // stop the tracking timer m_swatch.Stop(); // start mount tracking SharedResources.s_mount.Tracking = true; // assume RA and Dec stay fixed during equatorial tracking, sync mount to starting RA/Dec SharedResources.s_mount.SyncToCoordinates(m_ra, m_dec); m_state = TrackingStates.Stopped; Server.MainForm.UpdateState(); }
public void Init() { m_state = TrackingStates.AtStart; using (Settings settings = new Settings()) { string s = settings.Get("strokeDegrees", "22.0"); double val = 22.0; Double.TryParse(s, out val); StrokeDegrees = val; } m_swatch.Reset(); }
public void Reset() { if (m_state == TrackingStates.AtStart) { return; } double ra, dec; if (m_state == TrackingStates.Stopped) { // mount is tracking, grab RA and dec from the mount ra = SharedResources.s_mount.RightAscension; dec = SharedResources.s_mount.Declination; } else { // platform is tracking, use the saved coordinates ra = m_ra; dec = m_dec; // stop platform tracking if (SharedResources.s_switch != null) { SharedResources.s_switch.SetSwitch(SharedResources.s_switchIdx, false); } // start mount tracking SharedResources.s_mount.Tracking = true; } m_swatch.Stop(); double delta_ra = m_swatch.ElapsedMilliseconds / 1000.0 * SIDEREAL_DEGREES_PER_SECOND * 24.0 / 360.0; SharedResources.s_mount.SyncToCoordinates(norm_ra(ra - delta_ra), dec); // reset the tracking timer m_swatch.Reset(); m_state = TrackingStates.AtStart; Server.MainForm.UpdateState(); }
private void DoStart() { // grab the starting coordinates m_ra = SharedResources.s_mount.RightAscension; m_dec = SharedResources.s_mount.Declination; // stop mount tracking SharedResources.s_mount.Tracking = false; // start platform tracking if (SharedResources.s_switch != null) { SharedResources.s_switch.SetSwitch(SharedResources.s_switchIdx, true); } // start the tracking timer m_swatch.Start(); m_state = TrackingStates.Tracking; }