public interface TickSelector
Provides standard tick sizes and formatting for numerical axes.
Conceptually, the selector maintains a list of standard tick sizes (ordered
by size), and a pointer to the current (selected) tick size. Clients of
the selector will initialise the pointer by calling the
select(double) method with a reference value (a guess, based on
context, of the largest usable tick size - for example, one half of the
axis length) then, as required, move the pointer to a smaller or larger
tick size (using the next() and previous() methods) to
find the most appropriate standard size to use.
The NumberTickSelector class provides a standard implementation,
but you can create your own if necessary.
| Modifier and Type | Method and Description |
|---|---|
java.text.Format |
getCurrentTickLabelFormat()
Returns the tick formatter associated with the tick size that the
cursor is currently referencing.
|
double |
getCurrentTickSize()
Returns the tick size that the cursor is currently referencing.
|
boolean |
next()
Move the cursor to the next (larger) tick size, if there is one.
|
boolean |
previous()
Move the cursor to the previous (smaller) tick size, if there is one.
|
double |
select(double reference)
Selects and returns a standard tick size that is greater than or equal to
the specified reference value and, ideally, as close to it as possible
(to minimise the number of iterations used by axes to determine the tick
size to use).
|
double select(double reference)
getCurrentTickSize() method should return the selected tick
size (there is a "cursor" that points to this tick size), the
next() method should move the pointer to the next (larger)
standard tick size, and the previous() method should move the
pointer to the previous (smaller) standard tick size.reference - the reference value (must be positive and finite).boolean next()
true in the case that the cursor is moved, and
false where there are a finite number of tick sizes and the
current tick size is the largest available.boolean previous()
true in the case that the cursor is moved, and
false where there are a finite number of tick sizes and the
current tick size is the smallest available.double getCurrentTickSize()
java.text.Format getCurrentTickLabelFormat()