TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

class HeightmapBuilder in Tinman.Terrain.Heightmaps

sealed class HeightmapBuilder  

Public / Constructors

Constant

Creates a constant heightmap.

[OwnerReturn]
public method Constant (HeightmapSample sample, HeightmapLayer layers = HeightmapLayer.None)
type IHeightmap
params sample The constant heightmap sample.
  layers The heightmap layers. If None, the layers of sample will be used (see LayerMask). Defaults to None.
returns [not-null] The created IHeightmap object.

Dataset

Creates a mutable heightmap that is kept in the given *.HGT file.

[OwnerReturn]
public method Dataset (string file, IHeightmapFormat format)
type IHeightmapDataset
params file [not-null] The output file.
  format [not-null] The heightmap format.
returns [not-null] The created IHeightmap object.

Remarks:

Storage space is only allocated for regions that contains data (see HasRegion). So storage space consumption does not depend on the heightmap size, but on the quantity of data that has been fed into it.


Creates a mutable heightmap that is kept in the given *.HGT file.

[OwnerReturn]
public method Dataset (Path file, IHeightmapFormat format)
type IHeightmapDataset
params file [not-null] The output file.
  format [not-null] The heightmap format.
returns [not-null] The created IHeightmap object.

Remarks:

Storage space is only allocated for regions that contains data (see HasRegion). So storage space consumption does not depend on the heightmap size, but on the quantity of data that has been fed into it.


Creates a mutable heightmap that is kept in the given *.HGT file.

[OwnerReturn]
public method Dataset ([Owner] IFile file, IHeightmapFormat format)
type IHeightmapDataset
params file [not-null] The output file.
  format [not-null] The heightmap format.
returns [not-null] The created IHeightmap object.

Remarks:

Storage space is only allocated for regions that contains data (see HasRegion). So storage space consumption does not depend on the heightmap size, but on the quantity of data that has been fed into it.

Memory

Creates a mutable heightmap that is kept entirely in memory.

[OwnerReturn]
public method Memory (HeightmapLayer layers = HeightmapLayer.All)
type IHeightmap
params layers The heightmap layers. Defaults to All.
returns [not-null] The created IHeightmap object.

Remarks:

Memory is only allocated for regions that contains data (see HasRegion). So memory consumption does not depend on the heightmap size, but on the quantity of data that has been fed into it.

Shapes

Creates a heightmap that performs on-the-fly rasterization of vector shapes.

[OwnerReturn]
public method Shapes (HeightmapLayer layers = HeightmapLayer.All)
type IHeightmapShape
params layers The heightmap layers. Defaults to All.
returns [not-null] The resulting heightmap object.

Remarks:

The returned heightmap always has PixelIsPoint semantics.

For IHeightmapShape objects to work properly, it is important to use a raster transform which can be represented by a matrix (see Matrix).

Public / Methods

Georef

Specifies the georeference for the heightmap.

public method Georef (Raster geo)
type HeightmapBuilder
params geo The georeference raster or null.
returns [not-null] this

Procedural

Builds a procedural heightmap, based on the settings of this heightmap builder.

public method Procedural (float64 scale = 1000, Vec3D seed = default(Vec3D))
type ProceduralHeightmapBuilder
params scale Scale factor from terrain-space to noise-space.
  seed Pseudo-random seed vector to use.
returns [not-null] The procedural heightmap builder.

Range

Specifies the vertical range (i.e. elevation range, in terrain-space) of the heightmap.

public method Range (VerticalRange range)
type HeightmapBuilder
params range The terrain-space range.
returns [not-null] this

Remarks:

The default range is Default.