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

Detailed Description

The 3D Ellipse is a planer object.

This class provides 3D ellipse specific access methods.

This class represents the access methods that are specific to a 3D ellipse. They also allow setting of the various attributes.

Deprecated
Deprecated as of MapLink 11.1. Advised to use MapLink Earth SDK instead.

Public Member Functions

double angularIncrement () const
 
void angularIncrement (double newValue)
 
const TSL3DCoordcentre () const
 
void centre (const TSL3DCoord &coord)
 
bool ENURotation () const
 
void ENURotation (bool newValue)
 
bool interpolate () const
 
void interpolate (bool newValue)
 
double xRadius () const
 
void xRadius (double newXRadius)
 
double xRotation () const
 
void xRotation (double newRotation)
 
double yRadius () const
 
void yRadius (double newYRadius)
 
double yRotation () const
 
void yRotation (double newRotation)
 
double zRotation () const
 
void zRotation (double newRotation)
 
- Public Member Functions inherited from TSL3DEntity
TSL3DBoundingBox boundingBox (int surfaceID=-1) const
 
void boundingBox (TSL3DCoord &bottomLeft, TSL3DCoord &topRight, int surfaceID=-1) const
 
TSL3DCoord centroid () const
 
TSL3DEntityclone () const
 
double distance (const TSL3DCoord &point, bool useRenderedExtent=true, int drawingSurfaceID=-1) const
 
bool equals (const TSL3DEntity *other) const
 
void move (const TSL3DCoord &location, const TSL3DCoord &reference)
 
TSL3DEntitySetparent ()
 
const TSL3DEntitySetparent () const
 
void scale (double scaleParam, const TSL3DCoord *origin=0)
 
void scale (double scaleX, double scaleY, double scaleZ, const TSL3DCoord *origin=0)
 
double squareDistance (const TSL3DCoord &point, bool useRenderedExtent=true, int drawingSurfaceID=-1) const
 
void translate (double latitudeOffset, double longitudeOffset, double altitudeOffset)
 
- 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 TSL3DEllipsecreate (TSLFeatureID featureID, const TSL3DCoord &coord, double radiusX, double radiusY, bool interpolate=true, double angularIncrement=0.0, bool ENURotation=true, double rotationX=0.0, double rotationY=0.0, double rotationZ=0.0)
 
static TSL3DEllipseis3DEllipse (TSL3DEntity *entity)
 
static const TSL3DEllipseis3DEllipse (const TSL3DEntity *entity)
 

Additional Inherited Members

- Protected Member Functions inherited from TSLEntityBase
 ~TSLEntityBase ()
 

Member Function Documentation

◆ angularIncrement() [1/2]

double TSL3DEllipse::angularIncrement ( ) const

Returns the angular increment used to construct the ellipse, specified in radians. The angular increment is the rotation about the center point between points that are used to construct a polyline to represent this 2D shape.

◆ angularIncrement() [2/2]

void TSL3DEllipse::angularIncrement ( double newValue)

Sets the angular increment used to construct the ellipse, specified in radians. The angular increment is the rotation about the center point between points that are used to construct a polyline to represent this 2D shape.

Parameters
newValueThe new angular increment.

◆ centre() [1/2]

const TSL3DCoord & TSL3DEllipse::centre ( ) const

Returns the 3D ellipse's coord.

◆ centre() [2/2]

void TSL3DEllipse::centre ( const TSL3DCoord & coord)

Sets the 3D ellipse's coord.

The ellipse will be drawn with its reference point at the specified position.

Parameters
coordcoord value to set

◆ create()

static TSL3DEllipse * TSL3DEllipse::create ( TSLFeatureID featureID,
const TSL3DCoord & coord,
double radiusX,
double radiusY,
bool interpolate = true,
double angularIncrement = 0.0,
bool ENURotation = true,
double rotationX = 0.0,
double rotationY = 0.0,
double rotationZ = 0.0 )
static

Static method for the creation of new TSL3DEllipses.

This call should only be used for temporary entities. For example, this call may be used to create entities that are used in the spatial tests.

Parameters
featureIDID of the feature code to assign to the entity. This is used when rendering map features if no specific attribute set has been created for the entity.
coordCoordinate at which to place the 3d ellipse
radiusXRadius in the x-axis in metres, this is dependent on the ENURotation flag
radiusYRadius in the y-axis in metres, this is dependent on the ENURotation flag
interpolateFlag to set whether polyline representation points are recalculated for each render.
angularIncrementThe angular difference, in radians, between points about the centre coordinate used to create a polyline representation of the ellipse used for rendering.
ENURotationSet whether to use geocentric coordinate space for the rotations and radii of the ellipse or East, North and Up from the ellipse's position tangentally on the earth.
rotationXRotation about the x-axis, +ve anticlockwise and in radians; this is dependent on the ENURotation flag
rotationYRotation about the y-axis, +ve anticlockwise and in radians; this is dependent on the ENURotation flag
rotationZRotation about the z-axis, +ve anticlockwise and in radians; this is dependent on the ENURotation flag
Returns
NULL on error.

◆ ENURotation() [1/2]

bool TSL3DEllipse::ENURotation ( ) const

Returns whether ENU rotation is used. ENU, standing for East, North and Up, determines how the rotation angles are interpreted.

If the ENURotation flag is set to true, then rotations are applied to the ellipse once it has been translated so that its plane is tangental to the earth's surface. In this case the x-axis is in the east direction, the y-axis is in the north direction and the z-axis is up, or the vector from the centre of the earth to the center point of the ellipse.

If the ENURotation flag is set to false, then rotations are applied to the ellipse in geocentric coordinate space. In this case the x-axis is the vector from the centre of the earth towards the geodetic location 0 degrees latitude and 0 degrees longitude, the y-axis is the vector from the centre of the earth towards the geodetic location 0 degrees latitude and 90 degrees longitude and the z-axis is the vector from the centre of the earth towards the north pole.

◆ ENURotation() [2/2]

void TSL3DEllipse::ENURotation ( bool newValue)

Sets whether ENU rotation is used. ENU, standing for East, North and Up, determines how the rotation angles are interpreted.

If the ENURotation flag is set to true, then rotations are applied to the ellipse once it has been translated so that its plane is tangental to the earth's surface. In this case the x-axis is in the east direction, the y-axis is in the north direction and the z-axis is up, or the vector from the centre of the earth to the center point of the ellipse.

If the ENURotation flag is set to false, then rotations are applied to the ellipse in geocentric coordinate space. In this case the x-axis is the vector from the centre of the earth towards the geodetic location 0 degrees latitude and 0 degrees longitude, the y-axis is the vector from the centre of the earth towards the geodetic location 0 degrees latitude and 90 degrees longitude and the z-axis is the vector from the centre of the earth towards the north pole.

Parameters
newValueThe new value fro the ENURotation flag.

◆ interpolate() [1/2]

bool TSL3DEllipse::interpolate ( ) const

Query whether polyline representation points are recalculated for each render.

◆ interpolate() [2/2]

void TSL3DEllipse::interpolate ( bool newValue)

Set whether polyline representation points are recalculated for each render.

Parameters
newValueNew value for this flag to take.

◆ is3DEllipse() [1/2]

static const TSL3DEllipse * TSL3DEllipse::is3DEllipse ( const TSL3DEntity * entity)
static

Query whether the entity is a 3d ellipse.

If this entity is a 3D ellipse, returns an accessor, otherwise returns NULL.

Parameters
entitythe entity to query.

◆ is3DEllipse() [2/2]

static TSL3DEllipse * TSL3DEllipse::is3DEllipse ( TSL3DEntity * entity)
static

Query whether the entity is a 3d ellipse.

If this entity is a 3D ellipse, returns an accessor, otherwise returns NULL.

Parameters
entitythe entity to query.

◆ xRadius() [1/2]

double TSL3DEllipse::xRadius ( ) const

Returns the 3D Ellipse's radius in the x-axis.

◆ xRadius() [2/2]

void TSL3DEllipse::xRadius ( double newXRadius)

Sets the 3D Ellipse's radius in the x-axis

Parameters
newXRadiusThe new radius in metres.

◆ xRotation() [1/2]

double TSL3DEllipse::xRotation ( ) const

Returns the 3D Ellipse's rotation about the x-axis in degrees.

◆ xRotation() [2/2]

void TSL3DEllipse::xRotation ( double newRotation)

Sets the 3D Ellipse's rotation about the x-axis, anti-clockwise being +ve, in radians

Parameters
newRotationThe new rotation value.

◆ yRadius() [1/2]

double TSL3DEllipse::yRadius ( ) const

Returns the 3D Ellipse's radius in the y-axis.

◆ yRadius() [2/2]

void TSL3DEllipse::yRadius ( double newYRadius)

Sets the 3D Ellipse's radius in the y-axis

Parameters
newYRadiusThe new radius in metres.

◆ yRotation() [1/2]

double TSL3DEllipse::yRotation ( ) const

Returns the 3D Ellipse's rotation about the y-axis in degrees.

◆ yRotation() [2/2]

void TSL3DEllipse::yRotation ( double newRotation)

Sets the 3D Ellipse's rotation about the y-axis, anti-clockwise being +ve, in radians

Parameters
newRotationThe new rotation value.

◆ zRotation() [1/2]

double TSL3DEllipse::zRotation ( ) const

Returns the 3D Ellipse's rotation about the z-axis in radians

◆ zRotation() [2/2]

void TSL3DEllipse::zRotation ( double newRotation)

Sets the 3D Ellipse's rotation about the z-axis, anti-clockwise being +ve, in radians

Parameters
newRotationThe new rotation value.