![]() |
MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
|
A polygon containing geometry in Map-Units, i.e. geometry in a particular coordinate system. More...
A polygon containing geometry in Map-Units, i.e. geometry in a particular coordinate system.
Public Member Functions | |
virtual TSLMUGeometry * | clone () |
TSLvector< TSLMUCoord > & | getOuter () |
void | setOuter (const TSLvector< TSLMUCoord > *newOuter) |
unsigned int | numInners () const |
TSLvector< TSLMUCoord > & | getInner (unsigned int index) |
void | setInner (unsigned int index, const TSLvector< TSLMUCoord > *newInner) |
virtual bool | calculateExtent (TSLMUExtent &extent) const |
![]() | |
void | destroy () |
Destructor. | |
TSLMUGeometry::GeometryType | type () const |
TSLFeatureID | featureID () const |
void | featureID (TSLFeatureID id) |
const char * | featureName () const |
void | featureName (const char *name) |
unsigned int | numAttributes () const |
bool | getAttribute (unsigned int index, TSLSimpleString *attributeName, TSLSimpleString *attributeValue) |
const char * | getAttribute (const char *attributeName) const |
void | setAttribute (const char *attributeName, const char *attributeValue) |
void | clearAttribute (const char *attributeName) |
void | clearAttributes () |
Clear all attributes. | |
void | rotation (double rot) |
double | rotation () const |
Static Public Member Functions | |
static TSLMUPolygon * | create (const TSLvector< TSLMUCoord > *outer=NULL, const TSLvector< const TSLvector< TSLMUCoord > * > *inners=NULL, TSLFeatureID featureID=TSLFeatureID_Default, const char *featureName=NULL) |
Protected Member Functions | |
TSLMUPolygon (const TSLvector< TSLMUCoord > *outer=NULL, const TSLvector< const TSLvector< TSLMUCoord > * > *inners=NULL, TSLFeatureID featureID=TSLFeatureID_Default, const char *featureName=NULL) | |
TSLMUPolygon (const TSLMUPolygon &other) | |
virtual | ~TSLMUPolygon () |
![]() | |
TSLMUGeometry (TSLMUGeometry::GeometryType type, TSLFeatureID featureID=TSLFeatureID_Default, const char *featureName=NULL) | |
TSLMUGeometry (const TSLMUGeometry &other) | |
virtual | ~TSLMUGeometry () |
Additional Inherited Members | |
![]() | |
enum | GeometryType { GeometryTypeNone , GeometryTypeSet , GeometryTypePoint , GeometryTypePolyline , GeometryTypePolygon } |
This enum represents the type of a given TSLMUGeometry instance. More... | |
|
protected |
|
protected |
|
protectedvirtual |
|
virtual |
Calculate the extent of this geometry
extent | Will be set to the calculated extent. |
Implements TSLMUGeometry.
|
virtual |
Create a clone of this geometry
Implements TSLMUGeometry.
|
static |
Constructor
outer | Initial outer for the polygon. TSLMUPolygon will not take ownership of this list |
inners | Initial inners for the polygon. TSLMUPolygon will not take ownership of this list |
featureID | The feature ID |
featureName | The feature name |
TSLvector< TSLMUCoord > & TSLMUPolygon::getInner | ( | unsigned int | index | ) |
Query an inner
If index is >= numInners() then a new inner will be created.
The list may be modified by the application to edit the inner. No validation will be performed on these coordinates.
index | The index of the inner to return |
TSLvector< TSLMUCoord > & TSLMUPolygon::getOuter | ( | ) |
Query the outer of this polygon
This list may be modified by the application to edit the outer of this polygon. No validation will be performed on these coordinates.
unsigned int TSLMUPolygon::numInners | ( | ) | const |
Query the number of inners in this polygon
void TSLMUPolygon::setInner | ( | unsigned int | index, |
const TSLvector< TSLMUCoord > * | newInner ) |
Set an inner of this polygon
If index is >= numInners() then a new inner will be created.
index | The index of the inner to return |
newInner | The new geometry for the inner, TSLMUPolygon does not take ownership of this list. If NULL the inner will be removed. |
void TSLMUPolygon::setOuter | ( | const TSLvector< TSLMUCoord > * | newOuter | ) |
Set the outer of this polygon
newOuter | The new geometry for the outer. TSLMUPolygon does not take ownership of this list. |