![]() |
MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
|
The base class for feature classification definitions.
For an existing feature definition, each TSLFeatureClassifier defines a level of classification based on the attributes of a feature instance. Additional features may be created by combining the original feature definition, the classifier definitions, and the attribute values present in any processed data.
Public Types | |
enum | ClassifierType { ClassifierTypeCategorised , ClassifierTypeGraduated , ClassifierTypeCustom } |
The type of a classification definition. More... | |
Public Member Functions | |
void | destroy () |
Delete this object. | |
TSLFeatureClassifier::ClassifierType | type () const |
virtual TSLFeatureClassifier * | clone () const =0 |
virtual bool | getClassifiedFeatures (TSLFeature *rootFeature, unsigned int classificationLevel, bool caseSensitive) const =0 |
virtual bool | classifyFeature (const TSLMUGeometry *geometry, TSLRenderingAttributes &renderingAttribs, TSLSimpleString &childFeatureName) const =0 |
The type of a classification definition.
|
pure virtual |
Query the feature name for a given geometry
geometry | The geometry to classify |
renderingAttribs | The given TSLRenderingAttributes object will be set to the rendering attributes (if any) of the feature. Not all classifier definitions can specify rendering attributes. |
childFeatureName | Returned name of the child feature for this geometry |
Implemented in TSLFeatureClassifierCategorised, TSLFeatureClassifierCustom, and TSLFeatureClassifierGraduated.
|
pure virtual |
Clone this classification definition.
Implemented in TSLFeatureClassifierCategorised, TSLFeatureClassifierCustom, and TSLFeatureClassifierGraduated.
void TSLFeatureClassifier::destroy | ( | ) |
Delete this object.
|
pure virtual |
Process the classification definition and add child features to the hierarchy.
This method is called during a 'preprocess' phase in order to determine the pre-defined feature classes that may be returned by this classifier.
Where the contents are solely dependent upon attribute values of a geometry instance, then this method should return false. Where the contents are wholly or partially defined within the classifier itself, such as a rule-based classifier, then the method should add additional entries to the rootFeature and return true.
rootFeature | The top-level feature (TSLFeature) in the hierarchy the sub-classing should be applied to. |
classificationLevel | The level of this classification, starting at 0. |
caseSensitive | Whether the identification of existing classifications should be case sensitive or not. |
true
if any new features were created, false
otherwise. Implemented in TSLFeatureClassifierCategorised, TSLFeatureClassifierCustom, and TSLFeatureClassifierGraduated.
TSLFeatureClassifier::ClassifierType TSLFeatureClassifier::type | ( | ) | const |
Query the type of this classification definition.