JulianDate Structure |
Namespace: AGI.Foundation.Time
The JulianDate type exposes the following members.
Name | Description | |
---|---|---|
![]() | JulianDate(DateTime) | |
![]() | JulianDate(Double) |
Initializes a JulianDate from a double expressing the complete astronomical Julian Date.
The time standard will be International Atomic Time (TAI).
|
![]() | JulianDate(GregorianDate) |
Initializes a JulianDate from a GregorianDate.
The time standard will be CoordinatedUniversalTime (UTC),
except when the gregorianDate represents time during a leap second.
During a leap second, the JulianDate will be in the
InternationalAtomicTime (TAI) standard.
|
![]() | JulianDate(DateTime, TimeStandard) |
Initializes a JulianDate from a DateTime and specified time standard.
|
![]() | JulianDate(Double, TimeStandard) |
Initializes a JulianDate from a double expressing the complete astronomical Julian Date.
|
![]() | JulianDate(GregorianDate, TimeStandard) |
Initializes a JulianDate from a GregorianDate where the GregorianDate
is expressed in the given TimeStandard.
If the date is during a leap second, the JulianDate will be
expressed in InternationalAtomicTime (TAI).
|
![]() | JulianDate(Int32, Double) |
Initializes a JulianDate from the provided values.
The values will be normalized so that the SecondsOfDay
property is less than the length of a day.
The time standard will be International Atomic Time (TAI).
|
![]() | JulianDate(Int32, Double, TimeStandard) |
Initializes a JulianDate from the provided values.
The values will be normalized so that the SecondsOfDay
property is less than the length of the day.
|
Name | Description | |
---|---|---|
![]() | Day |
Gets the integer portion of the Julian Date (or astronomical Julian day number).
|
![]() ![]() | MaxValue |
Gets the largest possible value of JulianDate.
This date is in InternationalAtomicTime and may not be representable in other time standards.
|
![]() ![]() | MinValue |
Gets the smallest value possible of JulianDate.
This date is in InternationalAtomicTime and may not be representable in other time standards.
|
![]() ![]() | Now |
Gets the JulianDate that represents the current system date and time.
The time standard will be CoordinatedUniversalTime (UTC).
|
![]() | SecondsOfDay |
Gets the number of seconds past noon on the whole-number Julian Day.
|
![]() | Standard |
Gets the TimeStandard that this astronomical Julian date is based upon.
|
![]() | TotalDays |
Gets the total number of whole and fractional days represented by this astronomical Julian date.
|
Name | Description | |
---|---|---|
![]() | Add |
Adds a Duration to this Julian date, producing a new JulianDate.
|
![]() | AddClamped |
Adds a Duration to this Julian date, producing a new JulianDate.
Unlike Add(Duration), this method will clamp the result to the valid range
of values for JulianDate rather than throwing an exception.
In most cases, Add(Duration) should be used instead.
|
![]() | AddDays |
Adds the specified number of days to this date and returns the new date.
|
![]() | AddHours |
Adds the specified number of hours to this date and returns the new date.
|
![]() | AddMinutes |
Adds the specified number of minutes to this date and returns the new date.
|
![]() | AddSeconds |
Adds the specified number of seconds to this date and returns the new date.
|
![]() | CompareTo(JulianDate) |
Compares this instance with another instance of the same type.
|
![]() | CompareTo(Object) |
Compares this instance with another instance of the same type.
|
![]() | DaysDifference |
Computes the number of days that have elapsed from this Julian date to the
other Julian date.
|
![]() | Equals(JulianDate) |
Returns true if this date exactly equals another date.
To be considered equal, Day and SecondsOfDay
must be identical when converted to a common time standard.
It is highly recommended that you use EqualsEpsilon(JulianDate, Double) or
IsIdentical(JulianDate) instead of this method.
|
![]() | Equals(Object) |
Returns true if this date exactly equals another date.
To be considered equal, Day and SecondsOfDay
must be identical when converted to a common time standard.
It is highly recommended that you use EqualsEpsilon(JulianDate, Double) or
IsIdentical(JulianDate) instead of this method.
(Overrides ValueType.Equals(Object).) |
![]() | EqualsEpsilon |
Returns true if this date is within epsilon seconds of the specified date.
That is, in order for the dates to be considered equal (and for
this function to return true), the absolute value of the difference between them,
in seconds, must be less than or equal to epsilon.
|
![]() ![]() | GetCenterOfWindow |
Divides time into windows, each of length windowLength seconds,
with the first window centered on referenceEpoch.
Then, identifies which window contains date
and returns the date that is at the center of that window.
This is helpful for computing a discrete value for a range of Julian dates.
|
![]() | GetHashCode |
Returns a hash code for this instance, which is suitable for use in hashing algorithms and data structures like a hash table.
(Overrides ValueType.GetHashCode().) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | IsIdentical |
Returns true if this date is identical to another date.
Unlike Equals(JulianDate), this method will
consider two dates with different time standards to be different,
even if the dates represent the same moment when expressed in the same time standard.
|
![]() ![]() | JulianDateToYearFraction |
Computes the fraction of the year corresponding to the given Julian date.
|
![]() | MinutesDifference |
Computes the number of minutes that have elapsed from this Julian date to the
other Julian date.
|
![]() | SecondsDifference |
Computes the number of seconds that have elapsed from this Julian date to the
other Julian date.
|
![]() | Subtract(Duration) |
Subtracts a Duration from this Julian date, producing a new JulianDate.
|
![]() | Subtract(JulianDate) |
Subtracts another Julian date from this Julian date.
|
![]() | SubtractDays |
Subtracts the specified number of days from this date and returns the new date.
|
![]() | SubtractHours |
Subtracts the specified number of hours from this date and returns the new date.
|
![]() | SubtractMinutes |
Subtracts the specified number of minutes from this date and returns the new date.
|
![]() | SubtractSeconds |
Subtracts the specified number of seconds to this date and returns the new
date.
|
![]() | ToDateTime() |
Converts this JulianDate to a DateTime
with a default time standard of CoordinatedUniversalTime (UTC).
|
![]() | ToDateTime(TimeStandard) |
Converts this JulianDate to a DateTime
expressed in the specified time standard.
|
![]() | ToGregorianDate() |
Converts this JulianDate to a GregorianDate
with a default time standard of CoordinatedUniversalTime (UTC).
|
![]() | ToGregorianDate(TimeStandard) |
Converts this JulianDate to a GregorianDate
expressed in the specified time standard.
|
![]() | ToString |
Returns the value of this JulianDate in the standard format.
(Overrides ValueType.ToString().) |
![]() | ToTimeStandard |
Converts this JulianDate to the specified time standard.
|
![]() | TryConvertTimeStandard |
Try to convert this JulianDate to the specified
TimeStandard, if the specified TimeStandard is
capable of representing this time.
|
Name | Description | |
---|---|---|
![]() ![]() | Addition | |
![]() ![]() | Equality |
Returns true if two dates are exactly equal.
To be considered equal, Day and SecondsOfDay
must be identical when converted to a common time standard.
It is highly recommended that you use EqualsEpsilon(JulianDate, Double) or
IsIdentical(JulianDate) instead of this method.
|
![]() ![]() | GreaterThan |
Returns true if left occurs after right.
|
![]() ![]() | GreaterThanOrEqual |
Returns true if left occurs after or at the same time as right.
|
![]() ![]() | Inequality |
Returns true if two dates are NOT exactly equal.
To be considered equal, Day and SecondsOfDay
must be identical when converted to a common time standard.
It is highly recommended that you use EqualsEpsilon(JulianDate, Double) or
IsIdentical(JulianDate) instead of this method.
|
![]() ![]() | LessThan |
Returns true if left occurs before right.
|
![]() ![]() | LessThanOrEqual |
Returns true if left occurs before or at the same time as right.
|
![]() ![]() | Subtraction(JulianDate, Duration) |
Subtracts a Duration from a Julian date, producing a new JulianDate.
|
![]() ![]() | Subtraction(JulianDate, JulianDate) |
Subtracts a Julian date from another Julian date, producing a Duration.
|
This type assumes that days always have SecondsPerDay (86400.0) seconds. When using a JulianDate with the CoordinatedUniversalTime (UTC) time standard, a day with a leap second actually has 86401.0 seconds. The end result is that JulianDate cannot represent the moment of a leap second in the UTC time standard. However, it CAN represent the moment of a leap second in InternationalAtomicTime (TAI). Also, subtracting two UTC dates that are on opposite sides of a leap second will correctly take the leap second into account.