载入中...
搜索中...
未找到
TerrainImageMask.cpp
浏览该文件的文档.
9 auto linear = [](double v) { return 100 * (v > 0.04045 ? std::pow((v + 0.055) / 1.055, 2.4) : v / 12.92); };
20Result<int> generateTerrainImageMask(Heightmap& target, const Heightmap& input, const Heightmap& red,
27 if (!validRaster(target) || !validRaster(input) || !validRaster(red) || !validRaster(green) || !validRaster(blue) ||
28 !validRaster(alpha) || !validRaster(curve) || !same(target, input) || !same(red, green) || !same(red, blue) ||
29 !same(red, alpha) || curve.getHeight() != 1 || s.scaleX == 0 || s.scaleZ == 0 || s.accuracy < 0 ||
30 s.accuracy > 1 || s.filter < TerrainImageFilter::MaximumRgb || s.filter > TerrainImageFilter::Alpha ||
32 return invalid("terrain.imageMask: finite compatible planes, curve and valid settings required");
33 for (float v : {s.offsetX, s.offsetZ, s.scaleX, s.scaleZ, s.rotation, s.red, s.green, s.blue, s.accuracy})
83 if (!isRepresentable(result)) return invalid("terrain.imageMask: output exceeds finite float range");
89Result<int> applyTerrainGlobalSpawnerMask(Heightmap& target, const Heightmap& input, const Heightmap& source,
In-memory terrain heightmap: a dense float grid (row-major, index = y * width + x) materialized from ...
Definition Heightmap.h:21
double textureSample(const Heightmap &map, double u, double v)
Texture sample.
Definition TerrainRasterInternal.h:38
double curveSample(const Heightmap &curve, double value)
Curve sample.
Definition TerrainRasterInternal.h:72
Result< int > publish(Heightmap &target, std::vector< float > candidate)
Publish.
Definition TerrainRasterInternal.h:62
Definition EvpackPointGraphLoader.h:12
Result< int > generateTerrainImageMask(Heightmap &target, const Heightmap &input, const Heightmap &red, const Heightmap &green, const Heightmap &blue, const Heightmap &alpha, const Heightmap &curve, const TerrainImageMaskSettings &s, TerrainMaskBlend mode)
Generate the reference image-mask filter from borrowed RGBA scalar planes.
Definition TerrainImageMask.cpp:20
Result< int > applyTerrainGlobalSpawnerMask(Heightmap &target, const Heightmap &input, const Heightmap &source, const Heightmap &curve, const TerrainImageMaskSettings &settings, TerrainMaskBlend mode)
Apply a scalar GlobalSpawnerMaskStack output through Pcg's image-mask transform, curve and blend pass...
Definition TerrainImageMask.cpp:89
TerrainMaskBlend
Ordered scalar-mask arithmetic; intermediate values are not clamped.
Definition TerrainStamp.h:9
@ Subtract
@ Multiply
@ MaximumRgb
@ ColorSelection
Image UV transform and color-selection settings, rotation in radians.
Definition TerrainImageMask.h:10