Class TLspDensityPainter

java.lang.Object
com.luciad.view.lightspeed.painter.density.TLspDensityPainter
All Implemented Interfaces:
ILspPaintGroupsChangeListener, ILspEditableStyledPainter, ILspPainter

@Deprecated public class TLspDensityPainter extends Object implements ILspEditableStyledPainter
Deprecated.
The TLspShapePainter can handle density styles. Consult the class javadoc of TLspShapePainter for more information on how to use density styling with a regular shape layer.
Painter that supports density plots for ILcdShape objects. This painter draws objects and computes their density as the count of overlapping primitives. It converts these density values to color values using the provided index color model. Styling of the density plot is performed through the set ILspStyler. This painter only accepts implementations of ALspDensityStyle through the ILspStyler. With these styles the influence region of an object on the density plot can be set both in pixel size and world size. Also the hardness parameter governs the smoothness of the plot, how the influence of an object on the plot decreases with distance. This painter only supports TLspPaintState.REGULAR.
Since:
2012.0
See Also:
  • Constructor Details

    • TLspDensityPainter

      public TLspDensityPainter(TLspIndexColorModelStyle aIndexColorModelStyle, ILspWorldElevationStyle.ElevationMode aElevationMode)
      Deprecated.
      Constructs a density painter that uses the provided index color model to convert density values to colors.
      Parameters:
      aIndexColorModelStyle - the color model style that defines how density values are converted to colors to create a false color image depicting density.
      aElevationMode - the mode that specifies whether this painter will be used with styles that paint above ellipsoid or on the terrain. Only objects with styles with the same elevation mode are painted.
    • TLspDensityPainter

      public TLspDensityPainter(ILspWorldElevationStyle.ElevationMode aElevationMode)
      Deprecated.
      Constructs a density painter with the default color model style.
      Parameters:
      aElevationMode - the mode that specifies whether this painter will be used with styles that paint above ellipsoid or on the terrain. Only objects with styles with the same elevation mode are painted.
      See Also:
  • Method Details

    • registerLayer

      public void registerLayer(ILspInteractivePaintableLayer aLayer, TLspPaintRepresentation aPaintRepresentation)
      Deprecated.
      Description copied from interface: ILspPainter
      Registers a layer with this painter. This notifies the painter that it is going to be used in combination with the given layer, for the given paint representation. This allows it to implement setup code if necessary, or to keep track of all layers on which it is set.

      Layers registered with this method must be unregistered when the layer stops using this painter, using ILspPainter.unregisterLayer(ILspInteractivePaintableLayer, com.luciad.view.lightspeed.layer.TLspPaintRepresentation).

      Specified by:
      registerLayer in interface ILspPainter
      Parameters:
      aLayer - A layer with which this painter will be used.
      aPaintRepresentation - The paint representation for which this painter will be used.
    • unregisterLayer

      public void unregisterLayer(ILspInteractivePaintableLayer aLayer, TLspPaintRepresentation aPaintRepresentation)
      Deprecated.
      Description copied from interface: ILspPainter
      Unregisters a layer from this painter. This notifies the painter that it will no longer be used in combination with the given layer, for the given paint representation. This allows it to implement cleanup code if necessary.

      Layers unregistered with this method must have been registered before calling this method with the method ILspPainter.registerLayer(ILspInteractivePaintableLayer, com.luciad.view.lightspeed.layer.TLspPaintRepresentation).

      Specified by:
      unregisterLayer in interface ILspPainter
      Parameters:
      aLayer - A layer that needs to be unregistered
      aPaintRepresentation - The paint representation for which this painter was used with aLayer
    • paintObjects

      public TLspPaintProgress paintObjects(ILcdGLDrawable aGLDrawable, List<TLspPaintGroup> aPaintGroups, TLspPaintPass aPass, TLspContext aContext)
      Deprecated.
      Description copied from interface: ILspPainter

      Paints the specified groups of objects into a view. The objects are partitioned into TLspPaintGroups, which are created by the layer which invoked this painter. Painters are advised to also implement ILspPaintGroupsChangeListener, which allows them to keep track of changes to the supplied list of paint groups. This way, the painter can exploit temporal coherence and perform its work in the most optimal way.

      This method returns a TLspPaintProgress which describes the completeness of the paint operation. If the painter scheduled one or more tasks to be executed asynchronously, it may return from its paintObjects() method before having rendered all the objects it was given. In this case, the returned progress object can describe the amount of work that has been done and the work that is still remaining.

      Specified by:
      paintObjects in interface ILspPainter
      Parameters:
      aGLDrawable - the ILcdGLDrawable in which the objects are to be painted
      aPaintGroups - the objects to be painted
      aPass - the current paint pass
      aContext - provides context information to the painter
      Returns:
      a TLspPaintProgress object describing the completeness of the paint operation
    • getRequiredOpenGLProfile

      public TLspOpenGLProfile getRequiredOpenGLProfile()
      Deprecated.
      Description copied from interface: ILspPainter
      Returns the minimum required OpenGL profile that a view must support in order to be compatible with this painter.
      Specified by:
      getRequiredOpenGLProfile in interface ILspPainter
      Returns:
      a TLspGLProfile
    • addPropertyChangeListener

      public void addPropertyChangeListener(PropertyChangeListener aPropertyChangeListener)
      Deprecated.
      Description copied from interface: ILspPainter
      Adds a PropertyChangeListener to the list of listeners that must be notified when any of the properties of this ILspPainter changes.
      Specified by:
      addPropertyChangeListener in interface ILspPainter
      Parameters:
      aPropertyChangeListener - the listener that from now on will be notified of all changes to properties of this painter
    • removePropertyChangeListener

      public void removePropertyChangeListener(PropertyChangeListener aPropertyChangeListener)
      Deprecated.
      Description copied from interface: ILspPainter
      Removes a PropertyChangeListener from the list of listeners. This listener will no longer be notified of any changes to the properties of this ILspPainter
      Specified by:
      removePropertyChangeListener in interface ILspPainter
      Parameters:
      aPropertyChangeListener - the listener that no longer will be notified of any changes to properties of this painter
    • getStyler

      public ILspStyler getStyler(TLspPaintState aPaintState)
      Deprecated.
      Description copied from interface: ILspPainter
      Returns the styler used by this painter for the given PaintState. Can return null in case the painter does not use or expose a styler.
      Specified by:
      getStyler in interface ILspPainter
      Parameters:
      aPaintState - the paint state for which a styler is requested
      Returns:
      the styler used by this object, or null.
    • setStyler

      public void setStyler(TLspPaintState aPaintState, ILspStyler aStyler)
      Deprecated.
      Sets a new styler on this painter. If the styler is not null, the painter registers itself with the styler as a style change lister.
      Specified by:
      setStyler in interface ILspEditableStyledPainter
      Parameters:
      aPaintState - the paint state for which to set a styler
      aStyler - the new styler
    • setUpdateDensityPlotOnEveryRepaint

      public void setUpdateDensityPlotOnEveryRepaint(boolean aUpdateDensityPlotOnEveryRepaint)
      Deprecated.
      Sets whether the density plot is updated on every repaint. If false, the density plot is only updated if the view or model changes.

      By default, getUpdateDensityPlotOnEveryRepaint() is set to false.

      Parameters:
      aUpdateDensityPlotOnEveryRepaint - if true, the density plot is recomputed on every paint
    • getUpdateDensityPlotOnEveryRepaint

      public boolean getUpdateDensityPlotOnEveryRepaint()
      Deprecated.
      Returns whether the density plot is updated on every repaint.
      Returns:
      whether the density plot is updated on every repaint
    • query

      public <T> boolean query(List<TLspPaintGroup> aPaintGroups, ALspPaintQuery<T> aQuery, TLspPaintRepresentationState aPaintRepresentationState, TLspContext aContext)
      Deprecated.
      Description copied from interface: ILspPainter
      Retrieves a set of domain objects and data based on the parameters given by the query.
      Specified by:
      query in interface ILspPainter
      Parameters:
      aPaintGroups - the paint groups
      aQuery - the query
      aPaintRepresentationState - the paint representation state for which the query should be performed
      aContext - the context
      Returns:
      true if the query completed, false if it was aborted.
    • setIndexColorModelStyle

      @Deprecated public void setIndexColorModelStyle(TLspIndexColorModelStyle aIndexColorModelStyle)
      Deprecated.
      When replacing the deprecated TLspDensityPainter with a TLspShapePainter, you can let the styler submit a TLspIndexColorModelStyle in combination with ALspDensityStyle.
      Updates the index color model style of this painter.
      Parameters:
      aIndexColorModelStyle - the new index color model style.
    • getIndexColorModelStyle

      public TLspIndexColorModelStyle getIndexColorModelStyle()
      Deprecated.
      Retrieves the current index color model style.
      Returns:
      the current index color model style.
    • getElevationmode

      public ILspWorldElevationStyle.ElevationMode getElevationmode()
      Deprecated.
      Retrieves the current elevation mode
      Returns:
      Retrieves the current elevation mode.
    • setElevationMode

      @Deprecated public void setElevationMode(ILspWorldElevationStyle.ElevationMode aElevationMode)
      Deprecated.
      When replacing the deprecated TLspDensityPainter with a TLspShapePainter, you can specify the elevation mode in the density styles (see ALspDensityStyle.getElevationMode()). Note that you have to specify the same elevation mode in all the density styles. Mixing different elevation modes was not supported by this TLspDensityPainter class, and is also not supported by the TLspShapePainter.
      Updates the current elevation mode
      Parameters:
      aElevationMode - the new elevation mode
    • prepareChanges

      public void prepareChanges(List<TLspPaintGroupsChangedEvent> aEvents, Object aEventId, ILspPaintGroupsChangeListener.Callback aCallback)
      Deprecated.
      Description copied from interface: ILspPaintGroupsChangeListener
      Called when the paint groups will change.

      The listener should prepare the necessary changes for the events but not commit them yet. The ILspPaintGroupsChangeListener.Callback.changesReady(java.lang.Object) method must be invoked when the listener is ready to commit the changes.

      If aEventId is null then the changes may be committed immediately. In this case there will be no call to ILspPaintGroupsChangeListener.commitChanges(Object).

      Note that it is not mandatory to do this two-phased commit cycle. You may commit or apply the changes immediately, but you still must invoke the callback.

      Specified by:
      prepareChanges in interface ILspPaintGroupsChangeListener
      Parameters:
      aEvents - the changes
      aEventId - the event id or null
      aCallback - the callback or null
    • commitChanges

      public void commitChanges(Object aEventId)
      Deprecated.
      Description copied from interface: ILspPaintGroupsChangeListener
      Called when the changes for a specified event should be committed.
      Specified by:
      commitChanges in interface ILspPaintGroupsChangeListener
      Parameters:
      aEventId - the event id
    • setDensityScaleFactor

      @Deprecated public void setDensityScaleFactor(float aDensityScaleFactor)
      Deprecated.
      When replacing the deprecated TLspDensityPainter with a TLspShapePainter, you can specify the density scale factor on the TLspIndexColorModelStyle (see TLspIndexColorModelStyle.getScaleFactor()).
      Sets a global scale factor with which density values are multiplied prior to looking them up in the color model.
      Parameters:
      aDensityScaleFactor - the scale factor for density values
    • getDensityScaleFactor

      public float getDensityScaleFactor()
      Deprecated.
      Returns the current density value scale factor.
      Returns:
      the current density value scale factor