Class HyperbolicTransformer
java.lang.Object
edu.uci.ics.jung.visualization.transform.MutableTransformerDecorator
edu.uci.ics.jung.visualization.transform.LensTransformer
edu.uci.ics.jung.visualization.transform.HyperbolicTransformer
- All Implemented Interfaces:
BidirectionalTransformer
,MutableTransformer
,ShapeTransformer
,ChangeEventSupport
- Direct Known Subclasses:
HyperbolicShapeTransformer
HyperbolicTransformer wraps a MutableAffineTransformer and modifies
the transform and inverseTransform methods so that they create a
fisheye projection of the graph points, with points near the
center spread out and points near the edges collapsed onto the
circumference of an ellipse.
HyperbolicTransformer is not an affine transform, but it uses an
affine transform to cause translation, scaling, rotation, and shearing
while applying a non-affine hyperbolic filter in its transform and
inverseTransform methods.
-
Nested Class Summary
Nested classes/interfaces inherited from class edu.uci.ics.jung.visualization.transform.LensTransformer
LensTransformer.ComponentListenerImpl
-
Field Summary
Fields inherited from class edu.uci.ics.jung.visualization.transform.LensTransformer
lensShape, magnification
Fields inherited from class edu.uci.ics.jung.visualization.transform.MutableTransformerDecorator
delegate
-
Constructor Summary
ConstructorsConstructorDescriptionHyperbolicTransformer
(Component component) create an instance, setting values from the passed component and registering to listen for size changes on the componentHyperbolicTransformer
(Component component, MutableTransformer delegate) Create an instance with a possibly shared transform. -
Method Summary
Methods inherited from class edu.uci.ics.jung.visualization.transform.LensTransformer
getDistanceFromCenter, getLensShape, getMagnification, getRatio, getViewCenter, getViewRadius, inverseTransform, setLensShape, setMagnification, setToIdentity, setViewCenter, setViewRadius, transform
Methods inherited from class edu.uci.ics.jung.visualization.transform.MutableTransformerDecorator
addChangeListener, concatenate, fireStateChanged, getChangeListeners, getDelegate, getRotation, getScale, getScaleX, getScaleY, getShearX, getShearY, getTransform, getTranslateX, getTranslateY, preConcatenate, removeChangeListener, rotate, rotate, scale, setDelegate, setScale, setTranslate, shear, translate
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface edu.uci.ics.jung.visualization.util.ChangeEventSupport
addChangeListener, fireStateChanged, getChangeListeners, removeChangeListener
Methods inherited from interface edu.uci.ics.jung.visualization.transform.MutableTransformer
concatenate, getRotation, getScale, getScaleX, getScaleY, getShearX, getShearY, getTransform, getTranslateX, getTranslateY, preConcatenate, rotate, rotate, scale, setScale, setToIdentity, setTranslate, shear, translate
Methods inherited from interface edu.uci.ics.jung.visualization.transform.shape.ShapeTransformer
inverseTransform, transform
-
Constructor Details
-
HyperbolicTransformer
create an instance, setting values from the passed component and registering to listen for size changes on the component- Parameters:
component
- the component used for rendering
-
HyperbolicTransformer
Create an instance with a possibly shared transform.- Parameters:
component
- the component used for renderingdelegate
- the transformer to use
-
-
Method Details
-
transform
override base class transform to project the fisheye effect- Specified by:
transform
in interfaceBidirectionalTransformer
- Specified by:
transform
in classLensTransformer
- Parameters:
graphPoint
- graph point to convert- Returns:
- screen point
-
inverseTransform
override base class to un-project the fisheye effect- Specified by:
inverseTransform
in interfaceBidirectionalTransformer
- Specified by:
inverseTransform
in classLensTransformer
- Parameters:
viewPoint
- screen point to convert- Returns:
- the graph point
-