MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches

Detailed Description

This class category contains the API classes for the underlying OpenGIS based Geometry Model of MapLink products.

Simple Feature Geometry Package:

Geodetic Geometry Package:

Multi Geometry Group Package:

User Geometry Package:

Classes

class  TSLMUGeometry
 
class  TSLMUGeometrySet
 A set of Map-Unit based geometry. More...
 
class  TSLMUPoint
 
class  TSLMUPolygon
 A polygon containing geometry in Map-Units, i.e. geometry in a particular coordinate system. More...
 
class  TSLMUPolyline
 A polyline containing geometry in Map-Units, i.e. geometry in a particular coordinate system. More...
 
class  TSLArc
 
class  TSLArrow
 
class  TSLArrowHead
 
class  TSLArrowTail
 
class  TSLBorderedPolygon
 
class  TSLBorderInfo
 
class  TSLClientUserGeometryEntity
 
class  TSLCoordSet
 
class  TSLDataHandler
 
class  TSLDataSet
 
class  TSLEllipse
 
class  TSLEntity
 
class  TSLEntityBase
 
class  TSLEntityReferenceSet
 
class  TSLEntitySet
 
class  TSLErrorStack
 
class  TSLFieldDefinition
 
class  TSLGeodeticArc
 
class  TSLGeodeticEllipse
 
class  TSLGeodeticPolygon
 
class  TSLGeodeticPolyline
 
class  TSLGeodeticSymbol
 
class  TSLGeodeticText
 
class  TSLGeometryUtility
 
class  TSLifstream
 
class  TSLMUCoord
 
class  TSLMUExtent
 
class  TSLMultiPoint
 
class  TSLMultiPointPart
 
class  TSLMultiPolygon
 
class  TSLMultiPolygonPart
 
class  TSLMultiPolyline
 
class  TSLMultiPolylinePart
 
class  TSLofstream
 
class  TSLPolygon
 
class  TSLPolyline
 
class  TSLProfileHelper
 
class  TSLRasterBuffer
 
class  TSLRectangle
 
class  TSLRenderingAttributes
 
class  TSLRenderingInterface
 
class  TSLSymbol
 
class  TSLText
 
class  TSLThreadedErrorStack
 
class  TSLUserGeometryEntity
 
class  TSLAPP6ASymbol
 
class  TSLEntityIterator
 

Typedefs

typedef TSLClientUserGeometryEntity *(* TSLUserGeometryLoadCallback) (TSLifstream &stream, int userGeometryID, bool &assumeOwnership)
 

Enumerations

enum  TSLAreaRelations { TSLAreaRelationsOutside = 0 , TSLAreaRelationsOnEdge = 1 , TSLAreaRelationsInside = 2 }
 
enum  TSLCoordSetClassificationEnum { TSLCoordSetClassificationSimple = 0 , TSLCoordSetClassificationSelfTouching = 1 , TSLCoordSetClassificationIntersecting = 2 }
 
enum  TSLCoordSetExtendHint { TSLCoordSetExtendDefault = 0 , TSLCoordSetExtendByBlockSize = 1 , TSLCoordSetExtendByDoubling = 2 }
 
enum  TSLDimensionUnits {
  TSLDimensionUnitsMultiple = -2 , TSLDimensionUnitsUndefined = -1 , TSLDimensionUnitsPixels = 0 , TSLDimensionUnitsMapUnits = 1 ,
  TSLDimensionUnitsScaleFactor = 2 , TSLDimensionUnitsTMCs = 3 , TSLDimensionUnitsPoints = 4
}
 
enum  TSLEdgeEndCapStyle {
  TSLEdgeEndCapStyleMultiple = -2 , TSLEdgeEndCapStyleUndefined = -1 , TSLEdgeEndCapStyleRound = 6 , TSLEdgeEndCapStyleSquare = 7 ,
  TSLEdgeEndCapStyleButt = 8 , TSLEdgeEndCapStyleAsRenderLevel = 9
}
 
enum  TSLEdgeJoinStyle {
  TSLEdgeJoinStyleMultiple = -2 , TSLEdgeJoinStyleUndefined = -1 , TSLEdgeJoinStyleAsRenderLevel = 3 , TSLEdgeJoinStyleMitre = 1 ,
  TSLEdgeJoinStyleRound = 2 , TSLEdgeJoinStyleBevel = 0
}
 
enum  TSLEntityChange {
  TSLEntityChangeUnchanged = 0x00000001 , TSLEntityChangeGeometrically = 0x00000002 , TSLEntityChangeFeatureCode = 0x00000004 , TSLEntityChangeAttributes = 0x00000008 ,
  TSLEntityChangeDeparted = 0x0000010 , TSLEntityChangeNew = 0x00000020
}
 
enum  TSLFontTypeEnum { TSLFontTypeFontConfig , TSLFontTypeXLFD , TSLFontTypeFile , TSLFontTypeFontName }
 
enum  TSLGeodeticInterpolationOptionsEnum {
  TSLGeodeticInterpolationOptionsGeodesicPathWGS84Accurate = 0 , TSLGeodeticInterpolationOptionsGeodesicPathWGS84Spheroid = 1 , TSLGeodeticInterpolationOptionsGeodesicPathSphere = 2 , TSLGeodeticInterpolationOptionsDefault = 0 ,
  TSLGeodeticInterpolationOptionsGreatCircle = 1 , TSLGeodeticInterpolationOptionsSpherical = 2
}
 
enum  TSLHorizontalAlignment {
  TSLHorizontalAlignmentLeft = 0 , TSLHorizontalAlignmentCentre = 1 , TSLHorizontalAlignmentRight = 2 , TSLHorizontalAlignmentUndefined = 3 ,
  TSLHorizontalAlignmentMultiple = 4
}
 
enum  TSLLineScalingTypeEnum { TSLLineScalingTypeNone = 0 , TSLLineScalingTypeFatter = 1 , TSLLineScalingTypeLonger = 2 }
 
enum  TSLProfileWriteMode { TSLProfileWriteImmediately = 0 , TSLProfileWriteWhenFlushed = 1 }
 
enum  TSLRasterSymbolScalable {
  TSLRasterSymbolScalableMultiple = -2 , TSLRasterSymbolScalableUndefined = -1 , TSLRasterSymbolScalableAsSymbolFile = 0 , TSLRasterSymbolScalableDisabled = 1 ,
  TSLRasterSymbolScalableEnabled = 2
}
 
enum  TSLRenderingAttributeBool {
  TSLRenderingAttributeVisible = 200 , TSLRenderingAttributeSelectable , TSLRenderingAttributeReadOnly , TSLRenderingAttributeTextFixedHeight ,
  TSLRenderingAttributeTextRotatable , TSLRenderingAttributeSymbolFixedSize , TSLRenderingAttributeDepthTestStandard , TSLRenderingAttributeDepthTestDelayed ,
  TSLRenderingAttributeDepthTestNone
}
 
enum  TSLRenderingAttributeDouble {
  TSLRenderingAttributeTextSizeFactor = 100 , TSLRenderingAttributeSymbolSizeFactor , TSLRenderingAttributeEdgeThickness , TSLRenderingAttributeExteriorEdgeThickness ,
  TSLRenderingAttributeTextOffsetX , TSLRenderingAttributeTextOffsetY , TSLRenderingAttributeModelDistanceLOD_1 , TSLRenderingAttributeModelDistanceLOD_2 ,
  TSLRenderingAttributeModelDistanceLOD_3 , TSLRenderingAttributeModelDistanceLOD_4 , TSLRenderingAttributeMinDrawDistance , TSLRenderingAttributeMaxDrawDistance ,
  TSLRenderingAttributeTextComplexHaloRadius
}
 
enum  TSLRenderingAttributeInt {
  TSLRenderingAttributeEntityID = 0 , TSLRenderingAttributeFeatureID = 1 , TSLRenderingAttributeRenderLevel = 2 , TSLRenderingAttributeUserWord = 3 ,
  TSLRenderingAttributeEdgeColour = 4 , TSLRenderingAttributeEdgeStyle = 5 , TSLRenderingAttributeEdgeThicknessUnits = 6 , TSLRenderingAttributeFillColour = 7 ,
  TSLRenderingAttributeFillStyle = 8 , TSLRenderingAttributeExteriorEdgeColour = 9 , TSLRenderingAttributeExteriorEdgeStyle = 10 , TSLRenderingAttributeExteriorEdgeThicknessUnits = 11 ,
  TSLRenderingAttributeBorderWidth = 12 , TSLRenderingAttributeBorderColour = 13 , TSLRenderingAttributeTextColour = 14 , TSLRenderingAttributeTextFont = 15 ,
  TSLRenderingAttributeTextVerticalAlignment = 16 , TSLRenderingAttributeTextHorizontalAlignment = 17 , TSLRenderingAttributeTextMinPixelHeight = 18 , TSLRenderingAttributeTextMaxPixelHeight = 19 ,
  TSLRenderingAttributeTextOffsetUnits = 20 , TSLRenderingAttributeTextSizeFactorUnits = 21 , TSLRenderingAttributeTextBackgroundMode = 22 , TSLRenderingAttributeTextBackgroundColour = 23 ,
  TSLRenderingAttributeTextBackgroundStyle = 24 , TSLRenderingAttributeTextBackgroundEdgeColour = 25 , TSLRenderingAttributeSymbolColour = 26 , TSLRenderingAttributeSymbolStyle = 27 ,
  TSLRenderingAttributeSymbolMinPixelSize = 28 , TSLRenderingAttributeSymbolMaxPixelSize = 29 , TSLRenderingAttributeSymbolRotatable = 30 , TSLRenderingAttributeSymbolSizeFactorUnits = 31 ,
  TSLRenderingAttributeRasterSymbolScalable = 32 , TSLRenderingAttributeSymbolFontCharacter = 33 , TSLRenderingAttributeTextDepthTest = 34 , TSLRenderingAttributeSymbolDepthTest = 35 ,
  TSLRenderingAttributeFillDepthTest = 36 , TSLRenderingAttributeEdgeDepthTest = 37 , TSLRenderingAttributeModelStyle = 38 , TSLRenderingAttributeModelStyleLOD_1 = 39 ,
  TSLRenderingAttributeModelStyleLOD_2 = 40 , TSLRenderingAttributeModelStyleLOD_3 = 41 , TSLRenderingAttributeModelStyleLOD_4 = 42 , TSLRenderingAttributeEdgeOpacity = 45 ,
  TSLRenderingAttributeExteriorEdgeOpacity = 47 , TSLRenderingAttributeFillOpacity = 48 , TSLRenderingAttributeTextOpacity = 50 , TSLRenderingAttributeSymbolOpacity = 54 ,
  TSLRenderingAttributeEdgeJoinStyle = 43 , TSLRenderingAttributeEdgeEndCapStyle = 44 , TSLRenderingAttributeExteriorEdgeJoinStyle = 46 , TSLRenderingAttributeFillBackgroundColour = 49 ,
  TSLRenderingAttributeTextFillStyle = 51 , TSLRenderingAttributeTextFillBackgroundColour = 52 , TSLRenderingAttributeTextComplexHaloUnits = 53
}
 
enum  TSLRenderLevel {
  TSLRenderLevelMultiple = -7 , TSLRenderLevelUndefined = -6 , TSLRenderLevelMinusFive = -5 , TSLRenderLevelMinusFour = -4 ,
  TSLRenderLevelMinusThree = -3 , TSLRenderLevelMinusTwo = -2 , TSLRenderLevelMinusOne = -1 , TSLRenderLevelZero = 0 ,
  TSLRenderLevelPlusOne = 1 , TSLRenderLevelPlusTwo = 2 , TSLRenderLevelPlusThree = 3 , TSLRenderLevelPlusFour = 4 ,
  TSLRenderLevelPlusFive = 5
}
 
enum  TSLSymbolRotation {
  TSLSymbolRotationMultiple = -2 , TSLSymbolRotationUndefined = -1 , TSLSymbolRotationAsSymbolFile = 0 , TSLSymbolRotationDisabled = 1 ,
  TSLSymbolRotationEnabled = 2
}
 
enum  TSLTextBackgroundMode {
  TSLTextBackgroundModeMultiple = -2 , TSLTextBackgroundModeUndefined = -1 , TSLTextBackgroundModeNone = 0 , TSLTextBackgroundModeHalo = 1 ,
  TSLTextBackgroundModeRectangle = 2 , TSLTextBackgroundModeComplexHalo = 3
}
 
enum  TSLTextEncoding {
  TSLTextEncodingUndefined = UINT_MAX , TSLTextEncodingSystemCodePage = 0 , TSLTextEncodingUTF8 = 65001 , TSLTextEncodingUTF16 = 1200 ,
  TSLTextEncodingUTF32 = 12000 , TSLTextEncodingUTF32BE = 12001 , TSLTextEncodingCP1252 = 1252 , TSLTextEncodingISO8859_1 = 28591 ,
  TSLTextEncodingASCII = 20127
}
 
enum  TSLTextRotation { TSLTextRotationMultiple = -2 , TSLTextRotationUndefined = -1 , TSLTextRotationDisabled = 0 , TSLTextRotationEnabled = 1 }
 
enum  TSLVerticalAlignment {
  TSLVerticalAlignmentFullBottom = 0 , TSLVerticalAlignmentBaseline = 1 , TSLVerticalAlignmentMiddle = 2 , TSLVerticalAlignmentCapitalTop = 3 ,
  TSLVerticalAlignmentFullTop = 4 , TSLVerticalAlignmentUndefined = 5 , TSLVerticalAlignmentMultiple = 6
}
 
enum  TSLDrawModeEnum {
  TSLDrawModeRegular , TSLDrawModeBatched , TSLDrawModeStatic , TSLDrawModeProjected ,
  TSLDrawModeProjectedDraw
}
 
enum  TSLPolygonValidationStatus {
  TSLPolygonValidationFailed = -1 , TSLPolygonValidationOK = 0 , TSLPolygonValidationModifiedButOK = 1 , TSLPolygonValidationComplex = 2 ,
  TSLPolygonValidationModifiedAndComplex = 3
}
 

Typedef Documentation

◆ TSLUserGeometryLoadCallback

typedef TSLClientUserGeometryEntity *(* TSLUserGeometryLoadCallback) (TSLifstream &stream, int userGeometryID, bool &assumeOwnership)

This function typedef defines the signature for a callback routine that is required to be called to load a user defined Geometry Entity.

Implementation: TSLClientUserGeometryEntity* loadUserGeometryCallback( TSLifstream& stream, int userGeometryID, bool& assumeOwnership );

All registered callbacks will be called, in order, until the one that returns a client for the userGeometryID is found. Implementations must therefore expect a mismatch between the userGeometryID.

Parameters
streamThe input file stream that has had the data copied into.
userGeometryIDA value that uniquely identifies the User Geometry object.
assumeOwnershipThe user should set this value based upon whether the returned callback should become owned by the MapLink created TSLUserGeometryEntity. True indicates ownership is transferred, whilst false implies that the returned object remains owned by the user. This is important if the code calling MapLink was not built using the same compiler version, for instance when using differing versions of Microsoft Visual Studio.
ReturnValue

The callback should return the TSLClientUserGeometryEntity object or NULL.

Enumeration Type Documentation

◆ TSLAreaRelations

Enumerated type describing area relations.

Enumerator
TSLAreaRelationsOutside 
TSLAreaRelationsOnEdge 
TSLAreaRelationsInside 

◆ TSLCoordSetClassificationEnum

Enumerator
TSLCoordSetClassificationSimple 
TSLCoordSetClassificationSelfTouching 
TSLCoordSetClassificationIntersecting 

◆ TSLCoordSetExtendHint

Enumerated type describing the way in which a TSLCoordSet allocates new memory when its capacity is exceeded.

Enumerator
TSLCoordSetExtendDefault 

The default. An unspecified allocation mechanism.

TSLCoordSetExtendByBlockSize 

Each time the capacity is exceeded, the memory is extended in blocks, the size of which you can specify.

TSLCoordSetExtendByDoubling 

Each time the capacity is exceeded, the capacity is doubled.

◆ TSLDimensionUnits

Enumerated type used to indicate how various sizing and offset parameters should be interpreted. It presently applies to edge thickness, text offsets and text and symbol sizes.

When undefined, the default varies according to application. For example the default for edge thickness is Pixels, whilst the default for text and symbol size is ScaleFactor. This is for compatibility with previous releases of MapLink.

Note:

  1. The ScaleFactor interpretation is only relevant for text and symbol sizing, not for other offsets or thickness parameters.
  2. The Points interpretation only affects line thickness, text size, text offsets and symbol size.
  3. There are 72 points to an inch.
Enumerator
TSLDimensionUnitsMultiple 

Used for Editor queries when multiple selections have different values.

TSLDimensionUnitsUndefined 

The default, varies according to application.

TSLDimensionUnitsPixels 

Pixels.

TSLDimensionUnitsMapUnits 

Map units.

TSLDimensionUnitsScaleFactor 

Scale factor.

TSLDimensionUnitsTMCs 

TMCs.

TSLDimensionUnitsPoints 

Points.

◆ TSLDrawModeEnum

Enumerator
TSLDrawModeRegular 

Single pass mode. Currently there is no possible developer optimisations available for this mode.

TSLDrawModeBatched 

Single pass mode. Currently there is no possible developer optimisations available for this mode.

TSLDrawModeStatic 

Single pass mode.Currently there is no possible developer optimisations available for this mode.

TSLDrawModeProjected 

This is the first pass of the vector reprojection drawing. The developer should ensure that all necessary changes to any layers they are rendering is done in this pass. The notify changed flag should be set on any changed layers and a normal draw should be performed.

TSLDrawModeProjectedDraw 

This is the second pass of the vector reprojection drawing. The developer should not modify the layers they are rendering in this pass. They should just draw as normal.

◆ TSLEdgeEndCapStyle

Reserved for Future Enhancements.

Enumerated type describing the End Cap style for lines.

Enumerator
TSLEdgeEndCapStyleMultiple 
TSLEdgeEndCapStyleUndefined 

As Render Level.

TSLEdgeEndCapStyleRound 
TSLEdgeEndCapStyleSquare 
TSLEdgeEndCapStyleButt 
TSLEdgeEndCapStyleAsRenderLevel 

The End Cap that is drawn matches the setting for the Render Level. End caps are set up specially for lines drawn in maps for roads that cross other roads etc...

◆ TSLEdgeJoinStyle

Reserved for Future Enhancements.

Enumerated type describing the Join style for lines.

Enumerator
TSLEdgeJoinStyleMultiple 
TSLEdgeJoinStyleUndefined 

As Render Level.

TSLEdgeJoinStyleAsRenderLevel 
TSLEdgeJoinStyleMitre 
TSLEdgeJoinStyleRound 
TSLEdgeJoinStyleBevel 

◆ TSLEntityChange

This enumeration defines modifications that have been made to an entity. This is currently used by the TSLSeamlessLayerManager.

Enumerator
TSLEntityChangeUnchanged 

The entity has not been modified.

TSLEntityChangeGeometrically 

The entity has had its coordinate(s) modified.

TSLEntityChangeFeatureCode 

The entity has had its feature code changed.

TSLEntityChangeAttributes 

The attributes contained within the entity's dataset has changed.

TSLEntityChangeDeparted 

The entity has been deleted by the update.

TSLEntityChangeNew 

The entity has been added by the update and did not previously exist.

◆ TSLFontTypeEnum

Enumerator
TSLFontTypeFontConfig 
TSLFontTypeXLFD 
TSLFontTypeFile 
TSLFontTypeFontName 

◆ TSLGeodeticInterpolationOptionsEnum

Specifies interpolation options for geodetic primitives. These flags are mutually exclusive.

Note that interpolation can be turned on and off independently of these flags, and if interpolation is off, these flags will be ignored.

  • TSLGeodeticInterpolationOptionsGeodesicPathWGS84Accurate: This applies a geodesic path (great circle) to the reference ellipsoid, WGS84.
  • TSLGeodeticInterpolationOptionsGeodesicPathWGS84Spheroid: This applies a geodesic path (great circle) to the reference ellipsoid, WGS84, but ignores the flattening value so is less accurate but slightly faster than the TSLGeodeticInterpolationOptionsGeodesicPathWGS84Accurate option.
  • TSLGeodeticInterpolationOptionsGeodesicPathSphere:This applies a geodesic path (great circle) but treats the Earth as a sphere. This is the least accurate but fastest option.

Deprecated values:

  • TSLGeodeticInterpolationOptionsDefault: default interpolation.
  • TSLGeodeticInterpolationOptionsGreatCircle: use great circles to interpolate instead of the default method.
  • TSLGeodeticInterpolationOptionsSpherical: assume the Earth is a sphere when interpolating (if not present, assume Earth is a spheroid).
Enumerator
TSLGeodeticInterpolationOptionsGeodesicPathWGS84Accurate 
TSLGeodeticInterpolationOptionsGeodesicPathWGS84Spheroid 
TSLGeodeticInterpolationOptionsGeodesicPathSphere 
TSLGeodeticInterpolationOptionsDefault 

Deprecated.

TSLGeodeticInterpolationOptionsGreatCircle 

Deprecated.

TSLGeodeticInterpolationOptionsSpherical 

Deprecated.

◆ TSLHorizontalAlignment

Enumerated type describing horizontal text alignment.

Enumerator
TSLHorizontalAlignmentLeft 
TSLHorizontalAlignmentCentre 
TSLHorizontalAlignmentRight 
TSLHorizontalAlignmentUndefined 
TSLHorizontalAlignmentMultiple 

used for Editor queries when multiple selections have different values

◆ TSLLineScalingTypeEnum

Enumerator
TSLLineScalingTypeNone 
TSLLineScalingTypeFatter 
TSLLineScalingTypeLonger 

◆ TSLPolygonValidationStatus

Enumerator
TSLPolygonValidationFailed 
TSLPolygonValidationOK 
TSLPolygonValidationModifiedButOK 
TSLPolygonValidationComplex 
TSLPolygonValidationModifiedAndComplex 

◆ TSLProfileWriteMode

Enumerated type describing the Write mode for profile helper.

Enumerator
TSLProfileWriteImmediately 
TSLProfileWriteWhenFlushed 

◆ TSLRasterSymbolScalable

Enumerated type describing the scalability mode for raster symbols only.

Enumerator
TSLRasterSymbolScalableMultiple 

used for Editor queries when multiple selections have different values

TSLRasterSymbolScalableUndefined 
TSLRasterSymbolScalableAsSymbolFile 

use the default Enabled / Disabled setting from the symbols file

TSLRasterSymbolScalableDisabled 
TSLRasterSymbolScalableEnabled 

◆ TSLRenderingAttributeBool

Rendering attributes for Entities and features. The methods which use this enum use C++ function overloading to provide some measure of type safety. All rendering attributes in this enum are of integer type. Some attributes are available on all entities, others are specific to an entity type. Note that some of the attributes listed below are not available for feature-based rendering.

Note that TSLRenderingAttributeReadOnly only applies to rendering attributes such as colours/styles and does not prevent the geometry from being modified.

Available on all entities, but not features:

  • TSLRenderingAttributeVisible
  • TSLRenderingAttributeSelectable
  • TSLRenderingAttributeReadOnly

Available on all TSLText entities and features:

  • TSLRenderingAttributeTextFixedHeight : Deprecated, use min and max height instead.
  • TSLRenderingAttributeTextRotatable

Available on all TSLSymbol entities and features:

  • TSLRenderingAttributeSymbolFixedSize : Deprecated, use min and max height instead.
Enumerator
TSLRenderingAttributeVisible 
TSLRenderingAttributeSelectable 
TSLRenderingAttributeReadOnly 
TSLRenderingAttributeTextFixedHeight 
TSLRenderingAttributeTextRotatable 
TSLRenderingAttributeSymbolFixedSize 
TSLRenderingAttributeDepthTestStandard 
TSLRenderingAttributeDepthTestDelayed 
TSLRenderingAttributeDepthTestNone 

◆ TSLRenderingAttributeDouble

Rendering attributes for Entities and features. The methods which use this enum use C++ function overloading to provide some measure of type safety. All rendering attributes in this enum are of double type.

Available on TSLText entities and features:

  • TSLRenderingAttributeTextSizeFactor : Units defined by TSLRenderingAttributeTextSizeFactorUnits
  • TSLRenderingAttributeTextOffsetX : Units defined by TSLRenderingAttributeTextOffsetUnits
  • TSLRenderingAttributeTextOffsetY : Units defined by TSLRenderingAttributeTextOffsetUnits

Available on TSLArc and TSLPolyline entities and features:

  • TSLRenderingAttributeEdgeThickness : Units defined by TSLRenderingAttributeEdgeThicknessUnits

Available on TSLPolygon and TSLBorderedPolygon entities and features:

  • TSLRenderingAttributeExteriorEdgeThickness : Units defined by TSLRenderingAttributeExteriorEdgeThicknessUnits

Available on all TSLSymbol entities and features:

  • TSLRenderingAttributeSymbolSizeFactor : Units defined by TSLRenderingAttributeSymbolSizeFactorUnits

Available on TSL3DModel entities and features:

  • TSLRenderingAttributeModelDistanceLOD_1 : Defines the point at which this model is display at (distance from eye in meters).
  • TSLRenderingAttributeModelDistanceLOD_2 : Defines the point at which this model is display at (distance from eye in meters).
  • TSLRenderingAttributeModelDistanceLOD_3 : Defines the point at which this model is display at (distance from eye in meters).
  • TSLRenderingAttributeModelDistanceLOD_4 : Defines the point at which this model is display at (distance from eye in meters).

Available on TSL3DEntity entities and features:

  • TSLRenderingAttributeMinDrawDistance
  • TSLRenderingAttributeMaxDrawDistance

    Defines the range, in meters, between which the entity is drawn.

    Range is defined as: [MinDrawDistance..MaxDrawDistance[

    Negative values mean that the distance is ignored.

    The distance calculated is the distance from the near clip plane in meters to the centre of the Bounding Box for the entity.

    These settings help you structure your drawing objects in such a way to improve the drawing performance by creating 'Levels of Detail', either by using a group structure or via setting particular display ranges on individual entities.

    For example; this works by having a top level group and then at least two groups below this. One group specifies the near drawing range and the other the drawing range for further away, for example:

    Group0 - [-1, -1[               (contains Group1 and Group 2)
       Group1 -  Range [-1, 10000[  (Nearer Drawing)
       Group2 -  Range [10000, -1[  (Further away Drawing)
    
    Group1 should contain the complex drawing.
    Group2 should contain a simpler drawing.
    

    This approach lends itself to further levels of detail. How many that are required is very dependent upon how complex your display is.

    If a display range is set on a group then the group culling will occur before the contents are checked.

Enumerator
TSLRenderingAttributeTextSizeFactor 
TSLRenderingAttributeSymbolSizeFactor 
TSLRenderingAttributeEdgeThickness 
TSLRenderingAttributeExteriorEdgeThickness 
TSLRenderingAttributeTextOffsetX 
TSLRenderingAttributeTextOffsetY 
TSLRenderingAttributeModelDistanceLOD_1 
TSLRenderingAttributeModelDistanceLOD_2 
TSLRenderingAttributeModelDistanceLOD_3 
TSLRenderingAttributeModelDistanceLOD_4 
TSLRenderingAttributeMinDrawDistance 
TSLRenderingAttributeMaxDrawDistance 
TSLRenderingAttributeTextComplexHaloRadius 

Reserved for Future Enhancements

◆ TSLRenderingAttributeInt

Rendering attributes for Entities and features. The methods which use this enum use C++ function overloading to provide some measure of type safety. All rendering attributes in this enum are of integer type. Some attributes are available on all entities, others are specific to an entity type. Note that some of the attributes listed below are not available for feature-based rendering.

Some rendering attributes are only used by certain drawing surfaces. Specifically:

  • All Opacity rendering attributes are only honoured by the OpenGL drawing surface.

Available on all entities, but not features:

  • TSLRenderingAttributeFeatureID : User defined features may be from 1 to 16777215 (0xFFFFFF)
  • TSLRenderingAttributeRenderLevel : Valid values are -5 to +5

Available on TSLArc and TSLPolyline entities and features:

  • TSLRenderingAttributeEdgeColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.
  • TSLRenderingAttributeEdgeStyle : Value is index from tsllinestyles.dat file
  • TSLRenderingAttributeEdgeThicknessUnits : Value is one of TSLDimensionUnits enum
  • TSLRenderingAttributeEdgeOpacity : Controls transparency, valid values are 0 to 32767 where 0 is fully transparent and 32767 is fully opaque.

Available on TSLEllipse, TSLPolygon and TSLBorderedPolygon entities and features:

  • TSLRenderingAttributeFillColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.
  • TSLRenderingAttributeFillStyle : Value is index from tslfillstyles.dat file.
  • TSLRenderingAttributeExteriorEdgeColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.
  • TSLRenderingAttributeExteriorEdgeStyle : Value is index from tsllinestyles.dat file
  • TSLRenderingAttributeExteriorEdgeThicknessUnits : Value is one of TSLDimensionUnits enum
  • TSLRenderingAttributeExteriorEdgeOpacity : Controls transparency, valid values are 0 to 32767 where 0 is fully transparent and 32767 is fully opaque.
  • TSLRenderingAttributeFillOpacity : Controls transparency, valid values are 0 to 32767 where 0 is fully transparent and 32767 is fully opaque.

Available on TSLBorderedPolygon entities:

  • TSLRenderingAttributeBorderWidth : Value is in internal TMC units
  • TSLRenderingAttributeBorderColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.

Available on TSLText entities and features:

  • TSLRenderingAttributeTextColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.
  • TSLRenderingAttributeTextFont : Value is index from tslfonts.dat file
  • TSLRenderingAttributeTextMinPixelHeight : Value is in pixels
  • TSLRenderingAttributeTextMaxPixelHeight : Value is in pixels
  • TSLRenderingAttributeTextOffsetUnits : Value is one of TSLDimensionUnits enum
  • TSLRenderingAttributeTextSizeFactorUnits : Value is one of TSLDimensionUnits enum
  • TSLRenderingAttributeTextVerticalAlignment : Value is one of TSLVerticalAlignment enum
  • TSLRenderingAttributeTextHorizontalAlignment : Value is one of TSLHorizontalAlignment enum
  • TSLRenderingAttributeTextBackgroundMode : Value is one of TSLTextBackgroundMode enum
  • TSLRenderingAttributeTextBackgroundColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.
  • TSLRenderingAttributeTextBackgroundStyle : Value is index from tslfillstyles.dat file
  • TSLRenderingAttributeTextBackgroundEdgeColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values
  • TSLRenderingAttributeTextOpacity : Controls transparency, valid values are 0 to 32767 where 0 is fully transparent and 32767 is fully opaque.

Available on TSLSymbol entities and features:

  • TSLRenderingAttributeSymbolColour : Value is index from tslcolours.dat file or map palette, or a composed RGB value. See tslcolourhelper.h for information on creating these values.
  • TSLRenderingAttributeSymbolStyle : Value is index from tslsymbols.dat file
  • TSLRenderingAttributeSymbolMinPixelSize : Value is in pixels
  • TSLRenderingAttributeSymbolMaxPixelSize : Value is in pixels
  • TSLRenderingAttributeSymbolRotatable : Value is one of TSLSymbolRotation enum
  • TSLRenderingAttributeSymbolSizeFactorUnits : Value is one of TSLDimensionUnits enum
  • TSLRenderingAttributeRasterSymbolScalable : Value is one of TSLRasterSymbolScalability enum
  • TSLRenderingAttributeSymbolFontCharacter : The value is used to identify a single 32bit Unicode code point to draw from a font specified by TSLRenderingAttributeSymbolStyle.
  • TSLRenderingAttributeSymbolOpacity : Controls transparency, valid values are 0 to 32767 where 0 is fully transparent and 32767 is fully opaque.

Available on TSL3DSymbol, TSL3DAPP6ASymbol, TSLSatellite, entities and features:

  • TSLRenderingAttributeSymbolDepthTest : Value is one of TSL3DDepthTest enum. Additional limitations apply see TSL3DDepthTest documentation.

Available on TSL3DText entities and features:

Available on TSL3DPolygon, TSL3DSensor, TSL3DEllipse, TSLExtruded2DPolyline:

Available on TSL3DModel entities and features:

  • TSLRenderingAttributeModelStyle: Value is an index from the tslmodels.dat file that defines the model to display for LOD 0.
  • TSLRenderingAttributeModelStyleLOD_1: Value is an index from the tslmodels.dat file that defines the model to display for LOD 1.
  • TSLRenderingAttributeModelStyleLOD_2: Value is an index from the tslmodels.dat file that defines the model to display for LOD 2.
  • TSLRenderingAttributeModelStyleLOD_3: Value is an index from the tslmodels.dat file that defines the model to display for LOD 3.
  • TSLRenderingAttributeModelStyleLOD_4: Value is an index from the tslmodels.dat file that defines the model to display for LOD 4.

Currently not used (fill attribute takes precedence):

Enumerator
TSLRenderingAttributeEntityID 

No longer supported. Use entity->getEntityID(). If used will return lower 32bits of the 64bit ID.

TSLRenderingAttributeFeatureID 
TSLRenderingAttributeRenderLevel 
TSLRenderingAttributeUserWord 
TSLRenderingAttributeEdgeColour 
TSLRenderingAttributeEdgeStyle 
TSLRenderingAttributeEdgeThicknessUnits 
TSLRenderingAttributeFillColour 
TSLRenderingAttributeFillStyle 
TSLRenderingAttributeExteriorEdgeColour 
TSLRenderingAttributeExteriorEdgeStyle 
TSLRenderingAttributeExteriorEdgeThicknessUnits 
TSLRenderingAttributeBorderWidth 
TSLRenderingAttributeBorderColour 
TSLRenderingAttributeTextColour 
TSLRenderingAttributeTextFont 
TSLRenderingAttributeTextVerticalAlignment 
TSLRenderingAttributeTextHorizontalAlignment 
TSLRenderingAttributeTextMinPixelHeight 
TSLRenderingAttributeTextMaxPixelHeight 
TSLRenderingAttributeTextOffsetUnits 
TSLRenderingAttributeTextSizeFactorUnits 
TSLRenderingAttributeTextBackgroundMode 
TSLRenderingAttributeTextBackgroundColour 
TSLRenderingAttributeTextBackgroundStyle 
TSLRenderingAttributeTextBackgroundEdgeColour 
TSLRenderingAttributeSymbolColour 
TSLRenderingAttributeSymbolStyle 
TSLRenderingAttributeSymbolMinPixelSize 
TSLRenderingAttributeSymbolMaxPixelSize 
TSLRenderingAttributeSymbolRotatable 
TSLRenderingAttributeSymbolSizeFactorUnits 
TSLRenderingAttributeRasterSymbolScalable 
TSLRenderingAttributeSymbolFontCharacter 
TSLRenderingAttributeTextDepthTest 
TSLRenderingAttributeSymbolDepthTest 
TSLRenderingAttributeFillDepthTest 
TSLRenderingAttributeEdgeDepthTest 
TSLRenderingAttributeModelStyle 
TSLRenderingAttributeModelStyleLOD_1 
TSLRenderingAttributeModelStyleLOD_2 
TSLRenderingAttributeModelStyleLOD_3 
TSLRenderingAttributeModelStyleLOD_4 
TSLRenderingAttributeEdgeOpacity 
TSLRenderingAttributeExteriorEdgeOpacity 
TSLRenderingAttributeFillOpacity 
TSLRenderingAttributeTextOpacity 
TSLRenderingAttributeSymbolOpacity 
TSLRenderingAttributeEdgeJoinStyle 

Reserved for future enhancement. Value is one of TSLEdgeJoinStyle enum.

TSLRenderingAttributeEdgeEndCapStyle 

Reserved for future enhancement. Value is one of TSLEdgeEndCapStyle enum.

TSLRenderingAttributeExteriorEdgeJoinStyle 

Reserved for future enhancement. Value is one of TSLEdgeJoinStyle enum.

TSLRenderingAttributeFillBackgroundColour 

Reserved for future enhancement. This is the colour that will be drawn first then a pattern drawn on top will be the FillColour.

TSLRenderingAttributeTextFillStyle 

Reserved for future enhancement. A fill style ID. The text will be drawn using this fill pattern.

TSLRenderingAttributeTextFillBackgroundColour 

Reserved for future enhancement. See TSLRenderingAttributeFillBackgroundColour.

TSLRenderingAttributeTextComplexHaloUnits 

Reserved for future enhancement. See TSLRenderingAttributeTextComplexHaloRadius, TSLTextBackgroundModeComplexHalo.

◆ TSLRenderLevel

Enumerated type describing the render level for entities. This is an enum rather than a simple integer due to the special values for undefined and multiple.

Enumerator
TSLRenderLevelMultiple 

used for Editor queries when multiple selections have different values

TSLRenderLevelUndefined 
TSLRenderLevelMinusFive 
TSLRenderLevelMinusFour 
TSLRenderLevelMinusThree 
TSLRenderLevelMinusTwo 
TSLRenderLevelMinusOne 
TSLRenderLevelZero 
TSLRenderLevelPlusOne 
TSLRenderLevelPlusTwo 
TSLRenderLevelPlusThree 
TSLRenderLevelPlusFour 
TSLRenderLevelPlusFive 

◆ TSLSymbolRotation

Enumerated type describing the rotation mode for symbols.

Enumerator
TSLSymbolRotationMultiple 

used for Editor queries when multiple selections have different values

TSLSymbolRotationUndefined 
TSLSymbolRotationAsSymbolFile 

use the default Enabled/Disabled setting from the symbol's file

TSLSymbolRotationDisabled 
TSLSymbolRotationEnabled 

◆ TSLTextBackgroundMode

Enumerated type describing the style of background for text objects.

Enumerator
TSLTextBackgroundModeMultiple 

used for Editor queries when multiple selections have different values

TSLTextBackgroundModeUndefined 
TSLTextBackgroundModeNone 
TSLTextBackgroundModeHalo 

Not supported in 3D.

TSLTextBackgroundModeRectangle 

Not supported in 3D.

TSLTextBackgroundModeComplexHalo 

Future Enhancement: see TSLRenderingAttributeTextHaloRadius , TSLRenderingAttributeTextHaloUnits.

◆ TSLTextEncoding

Enumeration for defining the character encoding of a text string.

Values map directly to windows codepage values, so that other encodings can be provided if necessary.

If TSLTextEncodingUndefined is supplied, the text string is assumed to either be in UTF-8, or the current System codepage.

Enumerator
TSLTextEncodingUndefined 
TSLTextEncodingSystemCodePage 
TSLTextEncodingUTF8 
TSLTextEncodingUTF16 
TSLTextEncodingUTF32 
TSLTextEncodingUTF32BE 
TSLTextEncodingCP1252 
TSLTextEncodingISO8859_1 
TSLTextEncodingASCII 

◆ TSLTextRotation

Enumerated type describing the rotation mode for text.

Enumerator
TSLTextRotationMultiple 

used for Editor queries when multiple selections have different values

TSLTextRotationUndefined 
TSLTextRotationDisabled 
TSLTextRotationEnabled 

◆ TSLVerticalAlignment

Enumerated type describing vertical text alignment.

Enumerator
TSLVerticalAlignmentFullBottom 
TSLVerticalAlignmentBaseline 
TSLVerticalAlignmentMiddle 
TSLVerticalAlignmentCapitalTop 
TSLVerticalAlignmentFullTop 
TSLVerticalAlignmentUndefined 
TSLVerticalAlignmentMultiple 

used for Editor queries when multiple selections have different values