sealed class Tinman.Engine.Scenes.Util.Tripod

Derived from

VersionedBase abstract

The Tripod class is used to specify three base points in a local coordinate system, in order to compute pitch and roll angles.

The three base points of a tripod may be accessed via Point1 and Point2. The base points are specified in model-space, as defined by the YawPitchRollTransform class. The point sequence should be oriented in counter-clockwise direction, when seen from above (i.e. along the negative Y-axis).

Public / Constructors


public constructor Tripod → ()

Creates a new instance of Tripod.

All base point coordinates will initially be Vec3D.Zero.

Public / Methods


2 overloads

public method Point1 → (1)

index in : int32

The base point index.

returns → Vec3D

The base point coordinates.

Returns a base point of the tripod.

public method Point2 → (2)

index in : int32

The base point index.

point in : Vec3D

The base point coordinates.

returns → Tripod


Sets a base point of the tripod.


public method Regular → (1)

radius opt : float64 = 1

The circle radius.

returns → Tripod


Sets all base points evenly on a circle of the given radius opt, centered at the coordinate origin, aligned so that base point 0, 1, 2 represent the headings 0°, 240°, 120°, respectively.


public method YawPitchRoll → (4)

geocentric in : Geocentric

The geocentric helper to use.

local in : AffineTransform

The transformation from a local coordinate system to terrain-space, see LocalTransform.

yaw opt : float64 = 0

The yaw angle to use for computing the ground alignment.

invariant opt : bool = true

true to use VerticalType.Height,
false to use VerticalType.HeightMesh.

returns → Vec3D

The computed angles:
Vec3D.X: GeoPathValue.Yaw
Vec3D.Y: GeoPathValue.Pitch
Vec3D.Z: GeoPathValue.Roll

Computes ground-aligned yaw, pitch and roll angles.