com.jsyn.swing
Class ExponentialRangeModel
java.lang.Object
javax.swing.DefaultBoundedRangeModel
com.jsyn.swing.DoubleBoundedRangeModel
com.jsyn.swing.ExponentialRangeModel
- All Implemented Interfaces:
- java.io.Serializable, javax.swing.BoundedRangeModel
public class ExponentialRangeModel
- extends DoubleBoundedRangeModel
Maps integer range info to a double value along an exponential scale.
x = ival / resolution
f(x) = a*(rootˆcx) + b
f(0.0) = dmin
f(1.0) = dmax
b = dmin - a
a = (dmax - dmin) / (rootˆc - 1)
Inverse function:
x = log( (y-b)/a ) / log(root)
- See Also:
- Serialized Form
Constructor Summary |
ExponentialRangeModel(java.lang.String name,
int resolution,
double dmin,
double dmax,
double dval)
Use default root of 10.0 and span of 1.0. |
Methods inherited from class javax.swing.DefaultBoundedRangeModel |
addChangeListener, getChangeListeners, getExtent, getListeners, getMaximum, getMinimum, getValue, getValueIsAdjusting, removeChangeListener, setExtent, setMaximum, setMinimum, setRangeProperties, setValue, setValueIsAdjusting, toString |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ExponentialRangeModel
public ExponentialRangeModel(java.lang.String name,
int resolution,
double dmin,
double dmax,
double dval)
- Use default root of 10.0 and span of 1.0.
getRoot
public double getRoot()
setSpan
public void setSpan(double c)
getSpan
public double getSpan()
getName
public java.lang.String getName()
- Overrides:
getName
in class DoubleBoundedRangeModel
sliderToDouble
public double sliderToDouble(int sliderValue)
- Overrides:
sliderToDouble
in class DoubleBoundedRangeModel
doubleToSlider
public int doubleToSlider(double dval)
- Overrides:
doubleToSlider
in class DoubleBoundedRangeModel
test
public void test(int sliderValue)