Class BiModalRenderer<V,​E>

  • Type Parameters:
    V - the vertex type
    E - the edge type
    All Implemented Interfaces:
    EventListener, ChangeListener, ModalRenderer<V,​E>, Renderer<V,​E>
    Direct Known Subclasses:
    BiModalSelectionRenderer, DefaultModalRenderer

    public class BiModalRenderer<V,​E>
    extends Object
    implements ModalRenderer<V,​E>, ChangeListener
    A Renderer that delegates to either a HeavyweightRenderer or a LightweightRenderer depending on the results of a count Predicate and a scale Predicate

    The count predicate defaults to a comparison of the vertex count with the lightweightCountThreshold.

    The scale predicate defaults to a comparison of the VIEW transform scale with the lightweightScaleThreshold. Note that the VIEW transform scale range is 0 < VIEW transform scale <= 1.0

    The following conditions apply:

    1. vertex count < lightweightCountThreshold: Always draw with HeavyweightRenderer
    2. lightweightScaleThreshold > 1.0: Always draw with LightweightRenderer (unless 1 is true)
    3. If neither 1 nor 2 are true:
      • the static graph will be rendered with the HeavyweightRenderer when VIEW transform scale > lightweightScaleThreshold. Otherwise, the static graph will be rendered with the LightweightRenderer
      • While the graph is being manipulated with mouse gestures (zoom/pan, etc) the graph will be rendered with the LightweightRenderer