Class TimeFormat

java.lang.Object
uk.ac.starlink.ttools.plot2.geom.TimeFormat

@Equality public abstract class TimeFormat extends Object
Formats numeric values to strings to provide axis ticks and user-viewable coordinate readouts.
Since:
12 Jul 2013
Author:
Mark Taylor
  • Field Details

    • ISO8601

      public static final TimeFormat ISO8601
      Time format for ISO-8601 dates.
    • DECIMAL_YEAR

      public static final TimeFormat DECIMAL_YEAR
      Time format for year decimal year.
    • MJD

      public static final TimeFormat MJD
      Time format for Modified Julian Date.
    • UNIX_SECONDS

      public static final TimeFormat UNIX_SECONDS
      Time format for seconds since the Unix epoch.
  • Constructor Details

    • TimeFormat

      protected TimeFormat(String name, String description)
      Constructor.
      Parameters:
      name - format name
      description - short description
  • Method Details

    • formatTime

      public abstract String formatTime(double unixSec, double secPrecision)
      Formats a time value to a given precision.
      Parameters:
      unixSec - time value in unix seconds
      secPrecision - precision of formatted string in seconds
      Returns:
      formatted time value
    • parseTime

      public abstract double parseTime(String timeStr)
      Turns a formatted time string into the equivalent value in unix seconds. This is the inverse of formatTime.
      Parameters:
      timeStr - formatted time value
      Returns:
      time in unix seconds
      Throws:
      NumberFormatException - if timeStr cannot be parsed to a time in this format
    • getTicker

      public abstract Ticker getTicker()
      Returns an object for generating ticks to label the time axis.
      Returns:
      tick calculator
    • getFormatName

      public String getFormatName()
      Returns the name of this format.
      Returns:
      format name
    • getFormatDescription

      public String getFormatDescription()
      Returns a short description of this format.
      Returns:
      format description
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getKnownFormats

      public static TimeFormat[] getKnownFormats()
      Returns a list of all the known implementations of this class.
      Returns:
      known time formats
    • unixSecondsToDecimalYear

      public static double unixSecondsToDecimalYear(double unixSec)
      Converts unix seconds to decimal year.
      Parameters:
      unixSec - seconds since the Unix epoch
      Returns:
      years since 0 AD
    • decimalYearToUnixSeconds

      public static double decimalYearToUnixSeconds(double decYear)
      Converts decimal years to unix seconds.
      Parameters:
      decYear - years since 0 AD
      Returns:
      seconds since the Unix epoch