MapLink Pro .
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches
TSLArrow Class Reference
Inheritance diagram for TSLArrow:

Detailed Description

An arrow consists of a tail and optionally an arrow head at the front.

Once an arrow object is created, the client code should provide configuration via the head() and tail() accessor methods. When all configuration is complete, the client code must invoke the generate() method to populate the entity set with the entities required for the arrow.

Public Member Functions

TSLArrowHeadhead () const
TSLArrowTailtail () const
bool generate ()
Public Member Functions inherited from TSLEntitySet
bool appendData (const char *filename)
bool appendDataFromBuffer (unsigned char *buffer, TSLSize length)
bool clear ()
TSLArccreateArc (TSLFeatureID featureID, double startAngle, double endAngle, TSLTMC cx, TSLTMC cy, TSLTMC radx, TSLTMC rady=0, double rotation=0)
TSLBorderedPolygoncreateBorderedPolygon (TSLFeatureID featureID, TSLCoordSet *coords, TSLTMC width, bool keepCoordSet=false)
TSLBorderedPolygoncreateBorderedPolygon (TSLFeatureID featureID, const TSLCoordSet &coords, TSLTMC width)
TSLEntitycreateClone (const TSLEntity *source)
TSLEllipsecreateEllipse (TSLFeatureID featureID, TSLTMC cx, TSLTMC cy, TSLTMC radx, TSLTMC rady=0, double rotation=0.0)
TSLEntitySetcreateEntitySet ()
TSLGeodeticArccreateGeodeticArc (TSLFeatureID featureID, double startAngle, double endAngle, TSLTMC cx, TSLTMC cy, double radx, double rady=0.0, double rotation=0)
TSLGeodeticEllipsecreateGeodeticEllipse (TSLFeatureID featureID, TSLTMC cx, TSLTMC cy, double radx, double rady=0.0, double rotation=0.0)
TSLGeodeticPolygoncreateGeodeticPolygon (TSLFeatureID featureID, TSLCoordSet *coords, bool keepCoordSet=false)
TSLGeodeticPolygoncreateGeodeticPolygon (TSLFeatureID featureID, const TSLCoordSet &coords)
TSLGeodeticPolylinecreateGeodeticPolyline (TSLFeatureID featureID, TSLCoordSet *coords, bool keepCoordSet=false)
TSLGeodeticPolylinecreateGeodeticPolyline (TSLFeatureID featureID, const TSLCoordSet &coords)
TSLGeodeticSymbolcreateGeodeticSymbol (TSLFeatureID featureID, TSLTMC x, TSLTMC y, TSLTMC height=100, double rotation=0)
TSLGeodeticTextcreateGeodeticText (TSLFeatureID featureID, TSLTMC x, TSLTMC y, const char *value, TSLTMC height=100, TSLHorizontalAlignment xalign=TSLHorizontalAlignmentCentre, TSLVerticalAlignment yalign=TSLVerticalAlignmentMiddle, double rotation=0)
TSLPolygoncreatePolygon (TSLFeatureID featureID, TSLCoordSet *coords, bool keepCoordSet=false)
TSLPolygoncreatePolygon (TSLFeatureID featureID, const TSLCoordSet &coords)
TSLPolylinecreatePolyline (TSLFeatureID featureID, TSLCoordSet *coords, bool keepCoordSet=false)
TSLPolylinecreatePolyline (TSLFeatureID featureID, const TSLCoordSet &coords)
TSLRectanglecreateRectangle (TSLFeatureID featureID, const TSLCoord &bottomLeft, const TSLCoord &topRight, double rotation=0)
TSLSymbolcreateSymbol (TSLFeatureID featureID, TSLTMC x, TSLTMC y, TSLTMC height=100, double rotation=0)
TSLTextcreateText (TSLFeatureID featureID, TSLTMC x, TSLTMC y, const char *value, TSLTMC height=100, TSLHorizontalAlignment xalign=TSLHorizontalAlignmentCentre, TSLVerticalAlignment yalign=TSLVerticalAlignmentMiddle, double rotation=0)
TSLUserGeometryEntitycreateUserGeometry (TSLClientUserGeometryEntity *client, bool takeOwnership=true)
bool deleteBufferData (unsigned char *buffer) const
int find (const TSLEntity *entity) const
bool insert (TSLEntity *source, int index=-1)
bool loadData (const char *filename)
bool loadDataFromBuffer (unsigned char *buffer, TSLSize length)
TSLEntityoperator[] (int index)
const TSLEntityoperator[] (int index) const
bool removeEntity (TSLEntity *entity)
bool removeEntity (Int index)
bool saveData (const char *filename, TSLMapLinkVersion ver=TSL_CURRENT_MAPLINK_VERSION) const
unsigned char * saveDataToBuffer (TSLSize *length, TSLMapLinkVersion ver=TSL_CURRENT_MAPLINK_VERSION) const
int size () const
Public Member Functions inherited from TSLEntity
TSLCoord centroid () const
TSLEntityclone () const
bool contains (const TSLEntity *other) const
bool crosses (const TSLEntity *other) const
void alwaysMergeDifferences (bool _alwaysMergeDifferences)
TSLEntitydifference (const TSLEntity *other) const
double distance (const TSLCoord &point, bool useRenderedExtent=true, int drawingSurfaceID=-1) const
TSLEnvelope envelope (int surfaceID=-1) const
bool equals (const TSLEntity *other) const
TSLEntityintersection (const TSLEntity *other) const
bool intersects (const TSLEntity *other) const
bool intersects (const TSLEnvelope *envelope) const
bool move (const TSLCoord &location, const TSLCoord &reference)
bool overlaps (const TSLEntity *other) const
TSLEntitySetparent ()
const TSLEntitySetparent () const
void renderLevel (int level)
int renderLevel () const
bool rotate (double angle, const TSLCoord *origin=NULL)
double rotation () const
bool rotation (double newValue)
bool scale (double scaleParam, TSLCoord *origin=0)
bool scaleXY (double scaleX, double scaleY, TSLCoord *origin=0)
double squareDistance (const TSLCoord &point, bool useRenderedExtent=true, int drawingSurfaceID=-1) const
double squareDistance (const TSLEntity *otherEntity) const
bool touches (const TSLEntity *other) const
bool translate (TSLTMC xoffset, TSLTMC yoffset)
TSLEntityunionWith (const TSLEntity *other) const
bool within (const TSLEntity *other) const
TSLCoord adjustedWeightedCentroid ()
 reserved for future use
TSLCoord centreOfGravity ()
 reserved for future use
Public Member Functions inherited from TSLEntityBase
bool addDataSet ()
bool addDataSet (TSLDataHandler *toUseDataHandler)
bool clearRenderingAttributes ()
TSLDataSetdataSet ()
const TSLDataSetdataSet () const
short dataSourceID () const
void dataSourceID (short dataSourceID)
bool deleteDataSet ()
void destroy ()
TSLEntityID entityID () const
void entityID (TSLEntityID value)
TSLFeatureID featureID () const
void featureID (TSLFeatureID newValue)
bool getRendering (TSLRenderingAttributeInt attribute, int *result) const
bool getRendering (TSLRenderingAttributeDouble attribute, double *result) const
bool getRendering (TSLRenderingAttributeBool attribute, bool *result) const
bool getRendering (TSLRenderingAttributes &result) const
TSL3DEntityis3DEntity ()
const TSL3DEntityis3DEntity () const
TSLEntityisEntity ()
const TSLEntityisEntity () const
bool isOptimisedEntity () const
void name (const char *newValue)
const char * name () const
void releaseResources (int surfaceID)
bool setRendering (TSLRenderingAttributeInt attribute, int value)
bool setRendering (TSLRenderingAttributeDouble attribute, double value)
bool setRendering (TSLRenderingAttributeBool attribute, bool value)
bool setRendering (const TSLRenderingAttributes &attributes)
void sourceID (int value)
int sourceID () const
TSLGeometryType type () const
void version (TSLVersion value)
TSLVersion version () const

Static Public Member Functions

static TSLArrowcreate (const TSLCoordSet &tailPoints, const TSLCoord &armEnd)
static TSLArrowcreate ()
Static Public Member Functions inherited from TSLEntitySet
static TSLEntitySetcreate ()
static const TSLEntitySetisEntitySet (const TSLEntity *entity)
static TSLEntitySetisEntitySet (TSLEntity *entity)
Static Public Member Functions inherited from TSLEntity
static TSLEntitycreateFromWKB (const unsigned char *wkb, unsigned int wkbLength, double TMCPerMU, double mapOffsetX=0.0, double mapOffsetY=0.0, bool multiAsEntitySet=false, double maxCurveAngle=0.0)
static TSLEntitycreateFromWKT (const char *wkt, double TMCPerMU, double mapOffsetX=0.0, double mapOffsetY=0.0, bool multiAsEntitySet=false, double maxCurveAngle=0.0)

Additional Inherited Members

Protected Member Functions inherited from TSLEntitySet
 TSLEntitySet ()
 ~TSLEntitySet ()
Protected Member Functions inherited from TSLEntity
 ~TSLEntity ()
Protected Member Functions inherited from TSLEntityBase
 ~TSLEntityBase ()

Member Function Documentation

◆ create() [1/2]

TSLArrow * TSLArrow::create ( )
static

Creates an instance of TSLArrow.

After creation of the arrow, configure the head and tail as appropriate before finally calling generate().

Returns
instance of TSLArrow.

◆ create() [2/2]

TSLArrow * TSLArrow::create ( const TSLCoordSet & tailPoints,
const TSLCoord & armEnd )
static

Creates an instance of TSLArrow, initialised with the points provided.

The returned arrow will have a closed (triangular) head at the front, and a tail following the coordinates defined by tailPoints, with a width of one pixel.

After creation of the arrow, configure the head and tail further as appropriate before finally calling generate().

Parameters
tailPointsThe set of points defining the arrow's tail.
armEndThe endpoint of one arm of the arrow's head.
Returns
instance of TSLArrow.

◆ generate()

bool TSLArrow::generate ( )

Using the configuration set up in combination of the TSLArrow, TSLArrowHead and TSLArrowTail, the arrow geometry is created.

Returns
true if all entities were successfully created and added to the entity set.

◆ head()

TSLArrowHead * TSLArrow::head ( ) const

Gets or creates the TSLArrowHead. It creates a TSLArrowHead the first time it is called.

The application may modify the returned object but must not delete it. The TSLArrow object retains ownership of the head object.

Returns
The arrow head.

◆ tail()

TSLArrowTail * TSLArrow::tail ( ) const

Gets the TSLArrowTail.

The application may modify the returned object but must not delete it. The TSLArrow object retains ownership of the tail object.

Returns
The arrow tail.