GeoPathTrail
Description
A scene entity that generates a 3D model for a geo path.
The geo path model is built as follows (top-down view):
x-----x---------x---------x---------x---------x-----x \ | | | | | | | | | | z o o o o o z | width | | | | | | | | | | x-----x---------x---------x---------x---------x-----x / \_____/ \_________/ \_____/ start segment end
where x
are the generated vertices (perpendicular to geo path direction and up-vector), o
are the uniformly-distributed interpolated geo path samples and z
are the interpolated geo path samples at the start / end of the trail. The input geo path data is specified via these properties:
-
Path
The data of the geo path. -
ITimestampRangeProperty.TimestampRange
The range for which to create the geo path trail. -
TimestampOrigin, TimestampStep
Controls the uniform distribution of the timestamp valueso
.
The visual appearance of the geo path model can be controlled with the following properties:
-
ICenterLocalProperty.Center
Position of the pointo
, in the coordinate frame of the respective geo path sample (see GeoPathTransform). After an update, the geo path trail will be rebuilt. -
IColorFillProperty.ColorFill
Color of the (horizontal) plane of the geo path trail. A change will trigger a light-weight material update. -
IColorLineProperty.ColorLine
Color of the edge lines of the geo path trail. A change will trigger a light-weight material update. -
ILineThicknessProperty.LineThickness
Thickness of the edge lines of the geo path trail. A change will trigger a light-weight material update. -
IWidthProperty.Width
The width of the geo path trail. If zero, the edge lines are collapsed into one. After an update, the geo path trail will be rebuilt.
Public / Attributes
Capacity
The capacity of the GPU buffer for the geo path trail, given in segments.
If the number of required segments is greater than the capacity, the smallest multiple of TimestampStep will be used for which the number of required segments is less than or equal to the capacity. Defaults to 1000
, which results in a geo path trail length covering 100 second for the default value of TimestampStep.
Path
The geo path for which to generate the 3D model.
The IGeoPathBase.LatLonHeightOn and IGeoPathBase.YawPitchRollOn methods are used to get path samples. From those, the geo path trail will be constructed. If IGeoPathBase.Vertical is GeoPathValue.Height, then VerticalType.HeightMesh will be used to avoid blocking the application thread with heightmap accesses.
Defaults to null
.
TimestampOrigin
The timestamp origin to use for choosing the time indices for interpolation of geo path samples.
The current geo path (see Path) is sampled at all Timestamp
values (see below) that are contained in the effective timestamp range, i.e. the intersection of the ITimestampRangeProperty.TimestampRange of this GeoPathTrail and the ITimestampRangeProvider.TimestampRange of the current geo path.
Timestamp = TimestampOrigin + N * TimestampStep
For RangeD.Start and RangeD.End of the effective timestamp range, additional geo path samples are computed, if there are no equivalent Timestamp
samples. The geo path samples and the resulting 3D model geometry are cached and updated incrementally, if possible. Typically, the following uses will result in incremental updates:
-
Adding new geo path samples to Path.
-
Gradually moving, extending or shrinking of ITimestampRangeProperty.TimestampRange.
Other uses may require a full update, which in turn may degrade runtime performance when triggered often. Defaults to 0
.
- See also