MapLink Pro 11.1.2.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Loading...
Searching...
No Matches

Detailed Description

Classes

class  TSL3DCoord
 

Typedefs

typedef int TSL3DCoordType
 
enum  TSL3DAltitudeType { TSL3DAltitudeTypeMeanSeaLevel = 0 , TSL3DAltitudeTypeHighestResolutionTerrain = 1 , TSL3DAltitudeTypeDynamicTerrain = 2 , TSL3DAltitudeTypeTerrainGroundLevel = 3 }
 
enum  TSL3DInterpolation {
  TSL3DInterpolationNone = 0 , TSL3DInterpolationGrid = 16 , TSL3DInterpolationSpheroidCreation = 1 , TSL3DInterpolationSpheroidDisplay = 2 ,
  TSL3DInterpolationEllipsoidCreation = 4 , TSL3DInterpolationEllipsoidDisplay = 8
}
 

Typedef Documentation

◆ TSL3DCoordType

typedef int TSL3DCoordType

Typedef the coordinate type.

Typedef it here so it can be changed at will later.

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

Enumeration Type Documentation

◆ TSL3DAltitudeType

Enumerated type for determining type of altitude used.

Example 1.

Point with altitude of 500m, has TSL3DAltitudeTypeDynamicTerrain set.

If the height of the terrain is 50m and exaggeration is 2.0 then the MSL height will be = ((50 * 2) + 500)) = 600m

Example 2.

TSL3DAltitudeTypeTerrainGroundLevel means that altitude is ignored altogether. This means that any intermediate points are also at ground level, so, if used for an extruded polyline, the 'skirt' of the polyline touches the terrain between the two points, even if the terrain dips.

Following the extruded polyline example above, TSL3DAltitudeTypeDynamic Terrain with a value of 0.0 means that the skirt of the polyline is drawn at an altitude of 0.0 only at the specified coordinates and so will NOT touch the terrain between the two points if the terrain dips.

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

Altitude is treated as being relative to Mean Sea Level.

TSL3DAltitudeTypeHighestResolutionTerrain 

Altitude of point passed in plus the highest resolution Terrain Level of Detail height for the specified position. This gives you an altitude relative to the terrain (Highest possible resolution available for the point). Terrain Exaggeration only applies the terrain part of the overall height. The altitude of the point is not affected.

TSL3DAltitudeTypeDynamicTerrain 

Altitude of point passed in plus the current Terrain Level of Detail height for the specified position. This gives you an altitude relative to the terrain (Current Level of Detail for that point). Terrain Exaggeration only applies the terrain part of the overall height. The altitude of the point is not affected.

TSL3DAltitudeTypeTerrainGroundLevel 

Primarily of use for extruded polyline (Fence Lines). The lowest point along the set of coordinates is found and this is used for the altitude of all points (altitude of points passed in is ignored). Terrain Exaggeration is taken into account.

◆ TSL3DInterpolation

Enumerated type for determining how points are interpolated by the 3D geometry that supports interpolation.

TSL3DInterpolationNone means no interpolation. Points are joined by straight lines and is thus the fastest display option.

TSL3DInterpolationGrid is the new technique replacing the previous interpolation options.

This technique uses a Stereographic projection to project the points of the object on to a flat plane.

A grid is then overlaid on top of the points. Where the lines cross the grid intersections additional points are added.

The sub-divisions making up the grid are calculated based on the lowest height of the object.

The number of sub-divisions are limited by TSL3DLODConfiguration::m_maximum PolygonLevel and TSL3DLODConfiguration::m_minimumPolygonLevel.

The maximum sensible depth is currently 8 and the minimum is 2.

The maximum size of a polygon is about 40 degrees. Larger polygons will either affect performance or suffer from distortion.

The Coordinate Systems need to have been loaded via: TSLCoordinate System::loadCoordinateSystems().

Deprecated Values

The following have been deprecated for Polygon and Extruded Polygon types:

TSL3DInterpolationSpheriodCreation/TSL3DInterpolationElliposoidCreation means that the interpolation is done at creation time. All points altitude type should be of type TSL3DAltitudeTypeMeanSeaLevel.

TSL3DInterpolationSpheriodDisplay/TSL3DInterpolationElliposoidDisplay means that the interpolation of the points is done at display time. This is the slowest display option. The altitude type is not limited to TSL3DAltitudeType MeanSeaLevel.

The Spheroid interpolation assumes that the Earth is a sphere. This is less accurate then the Ellipsoid interpolation, but is significantly quicker to calculate.

The Ellipsoid interpolation uses a geodesic WGS84 path.

The interpolation may be invalidated by either changing the type of interpolation or the parameters controlling the interpolation.

Interpolation is done using a Geodesic path (more accurate then a Great Circle path). The interpolation is done at fixed distances across the Earth's surface. Altitude does not affect the distance between the interpolation points.

The points being interpolated between should be less then 180 degrees apart.

The shortest path between the start and end points will always be calculated.

If a path of exactly 180 degrees is specified the computed path will be ambiguous and will terminate prior to the end point.

Where interpolation occurs the resulting polygonal objects will be tessellated before display.

NOTE: Due to optimisations, creation time optimisation may take place on the first render, whereas display time interpolation will take place on every render.

Deprecated
Deprecated as of MapLink 11.1. Advised to use MapLink Earth SDK instead.
Enumerator
TSL3DInterpolationNone 
TSL3DInterpolationGrid 
TSL3DInterpolationSpheroidCreation 

Deprecated

TSL3DInterpolationSpheroidDisplay 
TSL3DInterpolationEllipsoidCreation 
TSL3DInterpolationEllipsoidDisplay