Class TLcyAsynchronousPaintHint

java.lang.Object
com.luciad.view.gxy.asynchronous.manager.TLcdGXYAsynchronousPaintHint
com.luciad.lucy.map.asynchronous.TLcyAsynchronousPaintHint

public class TLcyAsynchronousPaintHint extends TLcdGXYAsynchronousPaintHint
This class describes asynchronous painting hints. A hint controls paint queue configuration options and paint queue sharing. It must be created and returned by an ILcyAsynchronousPaintHintProvider.
  • Field Details

  • Constructor Details

    • TLcyAsynchronousPaintHint

      public TLcyAsynchronousPaintHint()

      Create a new asynchronous paint hint with an empty properties map.

      The resulting paint hint will have an empty properties map, hence place no restrictions on the corresponding paint queue.

      Such a paint can for example be used for empty ILcdLayerTreeNodes, which do not affect the painting time of a paint queue.

    • TLcyAsynchronousPaintHint

      public TLcyAsynchronousPaintHint(boolean aBodiesOnly, boolean aMerge, String aMergeGroup)
      Creates a new asynchronous paint hint. This convenience constructor is equivalent with calling TLcyAsynchronousPaintHint( aBodiesOnly, aMerge, aMergeGroup, 0, Thread.MIN_PRIORITY - 1 ).
      Parameters:
      aBodiesOnly - if true, only the bodies need to be painted asynchronously
      aMerge - if true, the layer may be painted together with other layers
      aMergeGroup - the paint group the layer belongs to. All layers of this group are painted together. This argument has no meaning when aMerge is false.
      See Also:
    • TLcyAsynchronousPaintHint

      public TLcyAsynchronousPaintHint(boolean aBodiesOnly, boolean aMerge, String aMergeGroup, int aIntermediateUpdateInterval)
      Creates a new asynchronous paint hint with intermediate updating. This convenience constructor is equivalent with calling TLcyAsynchronousPaintHint( aBodiesOnly, aMerge, aMergeGroup, aIntermediateUpdateInterval, Thread.MIN_PRIORITY - 1 ).
      Parameters:
      aBodiesOnly - if true, only the bodies need to be painted asynchronously
      aMerge - if true, the layer may be painted together with other layers
      aMergeGroup - the paint group the layer belongs to. All layers of this group are painted together. This argument has no meaning when aMerge is false.
      aIntermediateUpdateInterval - if not 0, ongoing asynchronous paints are directly shown on the view with the specified refresh rate (in milliseconds)
      See Also:
    • TLcyAsynchronousPaintHint

      public TLcyAsynchronousPaintHint(boolean aBodiesOnly, boolean aMerge, String aMergeGroup, int aIntermediateUpdateInterval, int aMinimumThreadPriority)
      Creates a new asynchronous paint hint with custom thread priority.
      Parameters:
      aBodiesOnly - if true, only the bodies need to be painted asynchronously
      aMerge - if true, the layer may be painted together with other layers
      aMergeGroup - the paint group the layer belongs to. All layers of this group are painted together. This argument has no meaning when aMerge is false.
      aIntermediateUpdateInterval - if not 0, ongoing asynchronous paints are directly shown on the view with the specified refresh rate (in milliseconds)
      aMinimumThreadPriority - the minimum priority of the paint thread, or Thread.MIN_PRIORITY - 1 for the default priority.
  • Method Details

    • isMerge

      public boolean isMerge()

      Returns whether the layer may be painted together with other layers.

      The result of this method is only valid when the properties map is not empty.

      Returns:
      whether the layer may be painted together with other layers
    • getMergeGroup

      public String getMergeGroup()

      Returns the paint group to which the layer belongs.

      The result of this method is only valid when the properties map is not empty.

      Returns:
      the paint group to which the layer belongs
    • isBodiesOnly

      public boolean isBodiesOnly()

      Returns whether only the bodies need to be painted asynchronously.

      The result of this method is only valid when the properties map is not empty.

      Returns:
      whether only the bodies need to be painted asynchronously
    • getIntermediateUpdateInterval

      public int getIntermediateUpdateInterval()

      If not 0, ongoing asynchronous paints are directly shown on the view with the returned refresh rate (in milliseconds)

      The result of this method is only valid when the properties map is not empty.

      Returns:
      if not 0, ongoing asynchronous paints are directly shown on the view with the returned refresh rate (in milliseconds)
    • getMinimumThreadPriority

      public int getMinimumThreadPriority()

      Returns the minimum thread priority of the paint thread.

      The result of this method is only valid when the properties map is not empty.

      Returns:
      the minimum thread priority of the paint thread, or Thread.MIN_PRIORITY - 1 if no priority is specified.