Class TLcdGXYCompositeDiscretePlacementsLabelingAlgorithm

java.lang.Object
com.luciad.view.gxy.labeling.algorithm.discrete.ALcdGXYDiscretePlacementsLabelingAlgorithm
com.luciad.view.gxy.labeling.algorithm.discrete.TLcdGXYCompositeDiscretePlacementsLabelingAlgorithm
All Implemented Interfaces:
ILcdCloneable, ILcdGXYLabelingAlgorithm, Cloneable
Direct Known Subclasses:
TLcdSLDLabelingAlgorithm

public class TLcdGXYCompositeDiscretePlacementsLabelingAlgorithm extends ALcdGXYDiscretePlacementsLabelingAlgorithm
This composite labeling algorithm combines ALcdGXYDiscretePlacementsLabelingAlgorithms into one labeling algorithm.

The difference with TLcdGXYCompositeLabelingAlgorithm is that although multiple algorithms are combined, this composite labeling algorithm respects the original label order as given TLcdCollectedLabelInfoList.getLabels(). Labels will be decluttered in this order, provided that the delegate labeling algorithms respect the order in which they receive the labels.

This composite labeling algorithm uses a ILcdGXYLabelLabelingAlgorithmProvider to assign labeling algorithms to labels. It works by creating a composite label iterator using createLabelIterator for each algorithm. It also does this using createLabelPlacementIterator and createLabelPlacementEvaluator.

The implementation of this labeling algorithm is thread-safe as long as the set labeling algorithm provider is thread-safe.

Since:
10.1