TerrainTransform

Description

abstract class Tinman.Engine.Scenes.Util.TerrainTransform

Abstract base class for ITerrainTransform implementations.

If a subclass depends on the current mesh version (for example by using VerticalType.HeightMesh), it should override the VersionedBase.VersionAggregated property and include the value of VersionMesh in the computation.

Protected / Constructors

Terrain​Transform


protected constructor TerrainTransform → ()

Creates a new instance of TerrainTransform.

Protected / Methods

Assert​Bound


protected method AssertBound → (1)

source in : string

Error source tag.

Asserts that this object is currently bound to a IMesh.

Compute​Transform


protected abstract method ComputeTransform → ()

returns → AffineTransform

The computed affine transformation.

Computes the affine transform to return from ITerrainTransform.Transform.

When this method is called, IMeshBound.HasMesh will always return true, unless ITerrainTransform.NeedsMesh is false.

Do​Mesh​Bind


[EmptyBody]
protected virtual method DoMeshBind → (1)

mesh in : IMesh

The mesh.

Called when this ITerrainTransform has been bound to a IMesh.

TinmanException

If the given mesh in does not provide all data that is required by this object.

Do​Mesh​Unbind


[EmptyBody]
protected virtual method DoMeshUnbind → ()

Called when this ITerrainTransform has been unbound from its IMesh.

Protected / Attributes

Geometry


protected attribute Geometry → (get)

value : IGeometry

The current IGeometry object or null iff not bound.

The IGeometry object of the currently bound IMesh.

Heightmap


protected attribute Heightmap → (get)

value : IHeightmap

The current IHeightmap object or null iff not bound.

The IHeightmap object of the currently bound IMesh.

Version​Mesh


protected attribute VersionMesh → (get)

value : int32

The mesh version or 0.

Returns the current IVersioned.Version of the currently bound IMeshBound.Mesh if not null and ITerrainTransform.NeedsMesh returns true. Otherwise, 0 is returned.