Skip to content
Brass Orrery

Orrery Terrain · OrreryTerrainEditor module · struct

FOrreryHeightmapSidecar

Editor only

The sidecar of a heightmap, decoded and checked.

Declaration

struct FOrreryHeightmapSidecar
Header
#include "OrreryTerrainHeightmapImport.h"
Module
PublicDependencyModuleNames.Add("OrreryTerrainEditor"); in an editor module’s Build.cs: an editor module, not in packaged games.
Stability
Stable: changes within a major version only add.

Description

Keys (unknown keys are ignored, so a sidecar with extra keys imports as it is):

  • size, or width and height: samples per row and rows. Square only. RAW needs it; a PNG's own size wins and must agree.

  • cell_m, or world_size_m: post spacing in metres, or the extent of the first to the last sample (cell = world_size_m / (size - 1)).

  • metres_per_unit and z_offset_m, or height_range_m [lowest, highest]: height = z_offset_m + sample * metres_per_unit; a range means sample 0 is the lowest and sample 65535 the highest.

  • origin_m [x, y]: world position of sample (0, 0), metres. Default [0, 0].

  • byte_order: "little" (default) or "big", RAW only.

  • nodata: a sample value that marks no data.

  • crs, vertical_crs, crs_origin [easting, northing]: recorded in the store's GeoOrigin, never used for placement.

  • rasters: [{"kind": "ground_class", "file": "relative/path"}], same size as the heightmap. Unknown kinds are refused.

Functions

  • Parsestatic

    Decode and check a sidecar.

  • Resolve

    Settle the spacing once the heightmap's size is known (a PNG's size comes from the file).

Properties

NameTypeDefaultMeaning
Sizeint320

Samples per row and rows; 0 = not given.

Cell_mdouble0.0

Post spacing, metres; cell_m, or 0 until Resolve when only world_size_m was given.

WorldSize_mdouble0.0

world_size_m as given; 0 = not given.

MetresPerUnitdouble0.0

Vertical size of one sample unit, metres; resolved from metres_per_unit or height_range_m.

ZOffset_mdouble0.0

Height of sample 0, metres.

Origin_mFVector2DFVector2D::ZeroVector

World position of sample (0, 0), metres.

bBigEndianboolfalse

RAW byte order.

bHasNodataboolfalse—
Nodatauint160

Sample value that marks no data; read only when bHasNodata.

CrsFString——
VerticalCrsFString——
Easting_mdouble0.0—
Northing_mdouble0.0—
RastersTArray<FRaster>——