uk.ac.starlink.ttools.plot2.geom
Class TimeFormat

java.lang.Object
  extended by 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 Summary
static TimeFormat DECIMAL_YEAR
          Time format for year decimal year.
static TimeFormat ISO8601
          Time format for ISO-8601 dates.
static TimeFormat MJD
          Time format for Modified Julian Date.
static TimeFormat UNIX_SECONDS
          Time format for seconds since the Unix epoch.
 
Constructor Summary
protected TimeFormat(String name, String description)
          Constructor.
 
Method Summary
static double decimalYearToUnixSeconds(double decYear)
          Converts decimal years to unix seconds.
abstract  String formatTime(double unixSec, double secPrecision)
          Formats a time value to a given precision.
 String getFormatDescription()
          Returns a short description of this format.
 String getFormatName()
          Returns the name of this format.
static TimeFormat[] getKnownFormats()
          Returns a list of all the known implementations of this class.
abstract  Ticker getTicker()
          Returns an object for generating ticks to label the time axis.
 String toString()
           
static double unixSecondsToDecimalYear(double unixSec)
          Converts unix seconds to decimal year.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

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 Detail

TimeFormat

protected TimeFormat(String name,
                     String description)
Constructor.

Parameters:
name - format name
description - short description
Method Detail

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

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


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.