Ejemplo n.º 1
0
 public static string ToString(UnitsOfTime value)
 {
     if (value == UnitsOfTime.S)
     {
         return("s");
     }
     else if (value == UnitsOfTime.Min)
     {
         return("min");
     }
     else if (value == UnitsOfTime.H)
     {
         return("h");
     }
     else if (value == UnitsOfTime.D)
     {
         return("d");
     }
     else if (value == UnitsOfTime.Wk)
     {
         return("wk");
     }
     else if (value == UnitsOfTime.Mo)
     {
         return("mo");
     }
     else if (value == UnitsOfTime.A)
     {
         return("a");
     }
     else
     {
         throw new ArgumentException("Unrecognized UnitsOfTime value: " + value.ToString());
     }
 }
Ejemplo n.º 2
0
        public Velocity(Distance distance, UnitsOfTime units, Angle azimuth) : base(distance, units)
        {
            if (azimuth == null)
            {
                throw new ArgumentNullException(nameof(azimuth));
            }

            Azimuth = new Angle(azimuth);
        }
Ejemplo n.º 3
0
        public Speed(Distance distance, UnitsOfTime units)
        {
            if (distance == null)
            {
                throw new ArgumentNullException(nameof(distance));
            }

            Distance = new Distance(distance);
            Units    = units;
        }
Ejemplo n.º 4
0
        public Speed ConvertTo(UnitsOfTime units)
        {
            if (Units == units)
            {
                return(this);
            }

            // 1. convert current time unit to seconds
            var seconds = 1.0;

            switch (Units)
            {
            case UnitsOfTime.Minute:
                seconds = 60;
                break;

            case UnitsOfTime.Hour:
                seconds = 3600;
                break;

            case UnitsOfTime.Milisecond:
                seconds = 0.001;
                break;

            case UnitsOfTime.Day:
                seconds = 86400;
                break;
            }

            // 2. convert distance/time to distance over seconds
            var rate = Distance.Value / seconds;

            // 3. convert rate to new value
            switch (units)
            {
            case UnitsOfTime.Minute:
                rate = rate * 60;
                break;

            case UnitsOfTime.Hour:
                rate = rate * 3600;
                break;

            case UnitsOfTime.Milisecond:
                rate = rate * 0.001;
                break;

            case UnitsOfTime.Day:
                rate = rate * 86400;
                break;
            }

            return(new Speed(new Distance(rate, Distance.Units), units));
        }
Ejemplo n.º 5
0
            public static bool TryParse(string value, out UnitsOfTime result)
            {
                result = default(UnitsOfTime);

                if (value == "s")
                {
                    result = UnitsOfTime.S;
                }
                else if (value == "min")
                {
                    result = UnitsOfTime.Min;
                }
                else if (value == "h")
                {
                    result = UnitsOfTime.H;
                }
                else if (value == "d")
                {
                    result = UnitsOfTime.D;
                }
                else if (value == "wk")
                {
                    result = UnitsOfTime.Wk;
                }
                else if (value == "mo")
                {
                    result = UnitsOfTime.Mo;
                }
                else if (value == "a")
                {
                    result = UnitsOfTime.A;
                }
                else
                {
                    return(false);
                }

                return(true);
            }
Ejemplo n.º 6
0
        internal DateTime CalculateTimeToRun(int interval, UnitsOfTime unitOfTime)
        {
            DateTime calculatedDateTime;

            switch (_unitOfTime)
            {
            case UnitsOfTime.Seconds:
                calculatedDateTime = CalculateTimeToRunInSeconds(interval, DateTime.Now);
                break;

            case UnitsOfTime.Minutes:
                calculatedDateTime = CalculateTimeToRunInMinutes(interval, DateTime.Now);
                break;

            case UnitsOfTime.Hours:
                calculatedDateTime = CalculateTimeToRunInHours(interval, DateTime.Now);
                break;

            case UnitsOfTime.Days:
                calculatedDateTime = CalculateTimeToRunInDays(interval, DateTime.Now);
                break;

            case UnitsOfTime.Weeks:
                calculatedDateTime = CalculateTimeToRunInWeeks(interval, DateTime.Now);
                break;

            case UnitsOfTime.Months:
                calculatedDateTime = CalculateTimeToRunInMonths(interval, DateTime.Now);
                break;

            case UnitsOfTime.Years:
                calculatedDateTime = CalculateTimeToRunInYears(interval, DateTime.Now);
                break;

            default:
                throw new ArgumentException("The supplied unit of time was not valid!");
            }
            return(calculatedDateTime);
        }
Ejemplo n.º 7
0
            public static bool TryParse(string value, out UnitsOfTime result)
            {
                result = default(UnitsOfTime);

                if( value=="s")
                    result = UnitsOfTime.S;
                else if( value=="min")
                    result = UnitsOfTime.Min;
                else if( value=="h")
                    result = UnitsOfTime.H;
                else if( value=="d")
                    result = UnitsOfTime.D;
                else if( value=="wk")
                    result = UnitsOfTime.Wk;
                else if( value=="mo")
                    result = UnitsOfTime.Mo;
                else if( value=="a")
                    result = UnitsOfTime.A;
                else
                    return false;

                return true;
            }
Ejemplo n.º 8
0
 public static string ToString(UnitsOfTime value)
 {
     if( value==UnitsOfTime.S )
         return "s";
     else if( value==UnitsOfTime.Min )
         return "min";
     else if( value==UnitsOfTime.H )
         return "h";
     else if( value==UnitsOfTime.D )
         return "d";
     else if( value==UnitsOfTime.Wk )
         return "wk";
     else if( value==UnitsOfTime.Mo )
         return "mo";
     else if( value==UnitsOfTime.A )
         return "a";
     else
         throw new ArgumentException("Unrecognized UnitsOfTime value: " + value.ToString());
 }