org.geotools.axis
Class DateGraduation

java.lang.Object
  extended byorg.geotools.axis.AbstractGraduation
      extended byorg.geotools.axis.DateGraduation
All Implemented Interfaces:
Graduation, java.io.Serializable

public class DateGraduation
extends AbstractGraduation

A graduation using dates on a linear axis.

Version:
$Id: DateGraduation.java 11002 2005-02-02 03:45:45Z desruisseaux $
Author:
Martin Desruisseaux
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.geotools.axis.AbstractGraduation
listenerList
 
Fields inherited from interface org.geotools.axis.Graduation
AXIS_TITLE_FONT, TICK_LABEL_FONT, VISUAL_AXIS_LENGTH, VISUAL_TICK_SPACING
 
Constructor Summary
DateGraduation(java.util.TimeZone timezone)
          Construct a graduation with the supplied time zone.
DateGraduation(java.util.TimeZone timezone, Unit unit)
          Construct a graduation with the supplied time zone and unit.
 
Method Summary
 boolean equals(java.lang.Object object)
          Compare this graduation with the specified object for equality.
 java.text.Format getFormat()
          Returns the format to use for formatting labels.
 double getMaximum()
          Returns the maximal value for this graduation.
 double getMinimum()
          Returns the minimal value for this graduation.
 double getRange()
          Returns the graduation's range.
 TickIterator getTickIterator(java.awt.RenderingHints hints, TickIterator reuse)
          Returns an iterator object that iterates along the graduation ticks and provides access to the graduation values.
 java.util.TimeZone getTimeZone()
          Returns the timezone for this graduation.
 int hashCode()
          Returns a hash value for this graduation.
 boolean setMaximum(java.util.Date time)
          Set the maximum value for this graduation.
 boolean setMaximum(double value)
          Set the maximum value as a real number.
 boolean setMinimum(java.util.Date time)
          Set the minimum value for this graduation.
 boolean setMinimum(double value)
          Set the minimum value as a real number.
 void setTimeZone(java.util.TimeZone timezone)
          Sets the time zone for this graduation.
 void setUnit(Unit unit)
          Changes the graduation's units.
 
Methods inherited from class org.geotools.axis.AbstractGraduation
addPropertyChangeListener, getLocale, getTitle, getUnit, removePropertyChangeListener, setLocale, setTitle
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DateGraduation

public DateGraduation(java.util.TimeZone timezone)
Construct a graduation with the supplied time zone. Unit default to millisecond.

Parameters:
timezone - The timezone.

DateGraduation

public DateGraduation(java.util.TimeZone timezone,
                      Unit unit)
               throws UnitException
Construct a graduation with the supplied time zone and unit.

Parameters:
timezone - The timezone.
unit - The unit. Must be compatible with Unit.MILLISECOND.
Throws:
UnitException - if the supplied unit is not a time unit.
Method Detail

setMinimum

public boolean setMinimum(java.util.Date time)
Set the minimum value for this graduation. If the new minimum is greater than the current maximum, then the maximum will also be set to a value greater than or equals to the minimum.

Parameters:
time - The new minimum.
Returns:
true if the state of this graduation changed as a result of this call, or false if the new value is identical to the previous one.
See Also:
setMaximum(Date)

setMaximum

public boolean setMaximum(java.util.Date time)
Set the maximum value for this graduation. If the new maximum is less than the current minimum, then the minimum will also be set to a value less than or equals to the maximum.

Parameters:
time - The new maximum.
Returns:
true if the state of this graduation changed as a result of this call, or false if the new value is identical to the previous one.
See Also:
setMinimum(Date)

setMinimum

public final boolean setMinimum(double value)
Set the minimum value as a real number. This method converts the value to milliseconds and invokes setMinimum(Date).

Specified by:
setMinimum in class AbstractGraduation
Parameters:
value - The new minimum in AbstractGraduation.getUnit() units.
Returns:
true if the state of this graduation changed as a result of this call, or false if the new value is identical to the previous one.
See Also:
Graduation.getMinimum(), AbstractGraduation.setMaximum(double)

setMaximum

public final boolean setMaximum(double value)
Set the maximum value as a real number. This method converts the value to milliseconds and invokes setMaximum(Date).

Specified by:
setMaximum in class AbstractGraduation
Parameters:
value - The new maximum in AbstractGraduation.getUnit() units.
Returns:
true if the state of this graduation changed as a result of this call, or false if the new value is identical to the previous one.
See Also:
Graduation.getMaximum(), AbstractGraduation.setMinimum(double)

getMinimum

public double getMinimum()
Returns the minimal value for this graduation. The value is in units of AbstractGraduation.getUnit(). By default, it is the number of millisecondes ellapsed since January 1st, 1970 at 00:00 UTC.

Returns:
The minimal value in Graduation.getUnit() units.
See Also:
setMinimum(double), getMaximum(), getRange()

getMaximum

public double getMaximum()
Returns the maximal value for this graduation. The value is in units of AbstractGraduation.getUnit(). By default, it is the number of millisecondes ellapsed since January 1st, 1970 at 00:00 UTC.

Returns:
The maximal value in Graduation.getUnit() units.
See Also:
setMaximum(double), getMinimum(), getRange()

getRange

public double getRange()
Returns the graduation's range. This is equivalents to computing getMaximum()-getMinimum(), but using integer arithmetic.


getTimeZone

public java.util.TimeZone getTimeZone()
Returns the timezone for this graduation.


setTimeZone

public void setTimeZone(java.util.TimeZone timezone)
Sets the time zone for this graduation. This affect only the way labels are displayed.


setUnit

public void setUnit(Unit unit)
             throws UnitException
Changes the graduation's units. This method will automatically convert minimum and maximum values from the old units to the new one.

Overrides:
setUnit in class AbstractGraduation
Parameters:
unit - The new units, or null if unknow. If null, minimum and maximum values are not converted.
Throws:
UnitException - if the specified unit is not a time unit.

getFormat

public java.text.Format getFormat()
Returns the format to use for formatting labels. The format really used by TickIterator.currentLabel() may not be the same. For example, some iterators may choose to show or hide hours, minutes and seconds.


getTickIterator

public TickIterator getTickIterator(java.awt.RenderingHints hints,
                                    TickIterator reuse)
Returns an iterator object that iterates along the graduation ticks and provides access to the graduation values. If an optional RenderingHints is specified, tick locations are adjusted according values for Graduation.VISUAL_AXIS_LENGTH and Graduation.VISUAL_TICK_SPACING keys.

Parameters:
hints - Rendering hints, or null for the default hints.
reuse - An iterator to reuse if possible, or null to create a new one. A non-null object may help to reduce the number of object garbage-collected when rendering the axis.
Returns:
A iterator to use for iterating through the graduation. This iterator may or may not be the reuse object.

equals

public boolean equals(java.lang.Object object)
Compare this graduation with the specified object for equality. This method do not compare registered listeners.

Overrides:
equals in class AbstractGraduation

hashCode

public int hashCode()
Returns a hash value for this graduation.

Overrides:
hashCode in class AbstractGraduation


Copyright © GeoTools. All Rights Reserved.