GeoPathTessellator

Description

sealed class Tinman.Engine.Scenes.Data.GeoPathTessellator

Helper class for tessellating a IGeoPathBase into line-segments.

Each GeoPathTessellator object maintains a sorted list of geo path timestamps (see Timestamps) which represent the current tessellation. By calling the tessellation methods successively, the current tessellation is modified:

Public / Constructors

Geo​Path​Tessellator


public constructor GeoPathTessellator → (2)

geoPath in : IGeoPathBase

[not-null]
The geo path to tessellate.

geocentric opt : Geocentric = null

The Geocentric helper object to use. If null, a new one will be created with Geocentric.For1, passing IGeoPathBase.Datum.

Creates a new instance of GeoPathTessellator.

Public / Methods

Reset


public method Reset → ()

Resets the current tessellation by clearing Timestamps.

Tessellate


public method Tessellate → (1)

range opt : RangeD = default(RangeD)

The geo path timestamp range to tessellate (see GeoPathSample.Timestamp). Set to RangeD.Zero to tessellate the whole geo path.

Tessellates the geo path according to the current error metrics.

The resulting geo path timestamp values will be added to Timestamps.

Ticks


public method Ticks → (3)

first in : float64

Timestamp value of first tick to add (GeoPathSample.Timestamp).

step in : float64

Spacing between timestamp values.

range opt : RangeD = default(RangeD)

Optional range where to generate ticks. Set to RangeD.Zero to add ticks for the whole geo path.

Adds a sequence of evenly spaced timestamp values to the tessellation.

To​Geometry


public method ToGeometry → (1)

curtain opt : float64 = Maths.MaxDouble

The bottom-most ellipsoid height of the geo path curtain (i.e. vertical planes). If Maths.MaxDouble, no curtain geometry will be created.

returns → IModelGeometrySimple

The created model geometry of null iff this geo path tessellation is empty.

Creates 3D model geometry for this geo path tessellation.

Public / Attributes

Maximum​Error


public attribute MaximumError → (get,set)

value : float64

[>=0]
The maximum error, given in the coordinate system of the geocentric frame of the geo path (see IGeoPathBase.Datum).

The maximum error to tolerate in the generated tessellation: use this metric to remove unnecessary detail.

Defaults to 0.

Maximum​Segments


public attribute MaximumSegments → (get,set)

value : float64

[>0]
The maximum number of segments (i.e. number of generated timestamp values minus one).

The maximum number of timestamp values to generated for the tessellation; use this metric to limit the maximum detail.

Defaults to 65536.

Timestamps


public attribute Timestamps → (get)

value : IArrayVector<float64>

[not-null]
The timestamps of the tessellation (strict monotonically increasing).

Returns the list that contains the resulting timestamps of the last call to Tessellate.

Variance


public attribute Variance → (get,set)

value : bool

The variance value.

The value to pass to LatLonHeight.ToVariance, before computing geocentric coordinates for tessellation.

Defaults to false.