Skip to content
Brass Orrery

Orrery Terrain · OrreryTerrainCore module · function

Native::

PrepareBrushMaskDab

Experimental

Prepare one dab of Brush over Mask: its rotation (BrushMaskRotation), mirror, half-sides (BrushMaskHalfSides), level (FBrushMask::LevelFor with the longer half-side) and scales.

Declaration

bool PrepareBrushMaskDab(const FBrush& Brush, const FBrushMask& Mask, int64_t Cell_mm, FBrushMaskDab& Out);
Header
#include "Native/BrushMask.h"
Module
PublicDependencyModuleNames.Add("OrreryTerrainCore"); in your module’s Build.cs.
Stability
Experimental: supported, may change in a minor version, with a changelog line.
Thread
Pure integer arithmetic, any thread.

Parameters

NameTypeDefaultMeaning
Brushconst FBrush&—

The step: its radius, MaskAngle, MaskFlags and aspect. Its MaskHash is not checked here.

Maskconst FBrushMask&—

The mask the step names, held by the caller for as long as Out is used.

Cell_mmint64_t—

The edit cell, mm (at least 1).

OutFBrushMaskDab&—

The prepared dab, out; it points into Mask's texels.

Returns

false, with Out unusable, when Brush.Radius_mm is 0 or over kBrushMaskMaxRadius_mm.

Note.

Pure integer arithmetic, any thread.