Пример #1
0
        private string GetWindDirectionString(Common.eDirection d)
        {
            string s   = d.ToString();
            string ret = R.ResourceManager.GetString(s, R.Culture);

            return(ret);
        }
Пример #2
0
        private static string Get(Common.eDirection eDirection)
        {
            string ret =
                R.ResourceManager.GetString(eDirection.ToString(), R.Culture);

            return(ret);
        }
Пример #3
0
 /// <summary>
 /// Sets distance in meters with direction specification.
 /// </summary>
 /// <param name="distance">Distance</param>
 /// <param name="way">Direction specification.</param>
 public void SetMeters(int distance, Common.eDirection way)
 {
     SetMeters(distance, way, null, null);
 }
Пример #4
0
 /// <summary>
 /// Sets distance in meters with direction specification.
 /// </summary>
 /// <param name="distance">Distance</param>
 /// <param name="way">Direction specification.</param>
 /// <param name="secondDistance">Other visibility</param>
 /// <param name="secondWay">Other visibility direction</param>
 public void SetMeters(int distance, Common.eDirection way, int secondDistance, Common.eDirection secondWay)
 {
     SetMeters(distance, way, secondDistance, secondWay);
 }
Пример #5
0
        public void Guide(GuideDirections Direction, long Duration)
        {
#if DEBUG
            if (!PerformanceWindow.Visible)
            {
                PerformanceWindow.Show();
            }
#endif
            Common.eFixedRate Rate  = Common.eFixedRate.Rate1;
            Common.eDeviceId  DevId = 0;
            Common.eDirection Dir   = 0;
            switch (Direction)
            {
            // Dec
            case GuideDirections.guideNorth:
                DevId = Common.eDeviceId.ALT;
                Dir   = Common.eDirection.Positive;
                break;

            case GuideDirections.guideSouth:
                DevId = Common.eDeviceId.ALT;
                Dir   = Common.eDirection.Negitve;
                break;

            // Ra
            case GuideDirections.guideEast:
                DevId = Common.eDeviceId.AZM;
                switch (Scope.TrackingMode)
                {
                case Common.eTrackingMode.EQNORTH:
                    Dir = Common.eDirection.Negitve;
                    break;

                case Common.eTrackingMode.EQSOUTH:
                    Dir = Common.eDirection.Positive;
                    break;
                }
                break;

            case GuideDirections.guideWest:
                DevId = Common.eDeviceId.AZM;
                switch (Scope.TrackingMode)
                {
                case Common.eTrackingMode.EQNORTH:
                    Dir = Common.eDirection.Positive;
                    break;

                case Common.eTrackingMode.EQSOUTH:
                    Dir = Common.eDirection.Negitve;
                    break;
                }
                break;

            default:
                Common.Log.LogMessage(Common.DriverId, "Guide() : invalid guide direction " + Direction.ToString());
                throw new ASCOM.InvalidValueException(Common.DriverId + ": Guide() : invalid guide direction " + Direction.ToString());
            }
            // guide Dec
            switch (DevId)
            {
            case Common.eDeviceId.ALT:
                if (Duration > 0 && GuideEnabled)
                {
                    Scope.isGuiding   = true;
                    DecTimer.Interval = Duration;
                    Common.SlewFixedRate(DevId, Dir, Rate);
#if DEBUG
                    DecStopWatch.Reset();
                    DecStopWatch.Start();
#endif
                    DecTimer.Start();
#if DEBUG
                    DecIntvlUpdt(Duration);
                    DecIntvl = Duration;
#endif
                }
                else
                {
                    Common.SlewFixedRate(DevId, Dir, Common.eFixedRate.Rate0);
                }
                break;

            // guide Ra
            case Common.eDeviceId.AZM:
                if (Duration > 0 && GuideEnabled)
                {
                    Scope.isGuiding  = true;
                    RaTimer.Interval = Duration;
                    Common.SlewFixedRate(DevId, Dir, Rate);
#if DEBUG
                    RaStopWatch.Reset();
                    RaStopWatch.Start();
#endif
                    RaTimer.Start();
#if DEBUG
                    RaIntvlUpdt(Duration);
                    RaIntvl = Duration;
#endif
                }
                else
                {
                    Common.SlewFixedRate(DevId, Dir, Common.eFixedRate.Rate0);
                }
                break;
            }
        }