51 float max_displacement,
71 float contrast = 0.5f,
72 float brightness = 0.5f);
140 float gradient_scale,
161Array
select_eq(
const Array &array,
float value);
227Array
select_gt(
const Array &array,
float value);
265 Vec2<float> center = {0.5f, 0.5f},
266 Vec4<float> bbox = {0.f, 1.f, 0.f, 1.f});
286Array
select_lt(
const Array &array,
float value);
413Array
select_pulse(
const Array &array,
float value,
float sigma);
431Array
select_rivers(
const Array &array,
float talus_ref,
float clipping_ratio);
452 const Array &array_blend);
456 bool zero_at_borders =
true,
457 bool ridge_select =
false);
492 float gradient_weight = 1.f,
493 float gradient_scaling_factor = 0.f,
494 float flow_weight = 0.05f,
495 float talus_ref = 0.f,
496 float clipping_ratio = 50.f,
497 float flow_gamma = 1.f,
498 float k_smooth = 0.01f);
532 float smaller_scales_weight = 1.f,
534 float curvature_clamping = 1.f);
571 int ir_curvature = 0,
574 float curvature_clamping = 10.f,
575 float curvature_weight = 1.f,
576 float gradient_weight = 1.f,
577 float gradient_scaling_factor = 0.f);
584 float curvature_clamping,
585 float curvature_weight,
586 float gradient_weight,
587 float gradient_scaling_factor);
592 bool zero_at_borders =
true,
593 bool ridge_select =
false);
Declaration of the Array class for 2D floating-point arrays with various mathematical operations and ...
Definition blending.hpp:186
Array gradient_norm(const Array &array)
See hmap::gradient_norm.
Definition gradient_gpu.cpp:9
Array select_soil_rocks(const Array &z, int ir_max=64, int ir_min=0, int steps=4, float smaller_scales_weight=1.f, ClampMode curvature_clamp_mode=ClampMode::POSITIVE_ONLY, float curvature_clamping=1.f)
Computes a multi-scale soil/rock selector using curvature analysis.
Definition select_soil_rocks.cpp:16
Array select_soil_weathered(const Array &z, int ir_curvature=0, int ir_gradient=4, ClampMode curvature_clamp_mode=ClampMode::POSITIVE_ONLY, float curvature_clamping=10.f, float curvature_weight=1.f, float gradient_weight=1.f, float gradient_scaling_factor=0.f)
Computes a soil weathering selection map based on curvature and gradient analysis.
Definition select_soil_weathered.cpp:14
Array select_valley(const Array &z, int ir, bool zero_at_borders=true, bool ridge_select=false)
See hmap::select_valley.
Definition selector_gpu.cpp:12
Array select_soil_flow(const Array &z, int ir_gradient=1, float gradient_weight=1.f, float gradient_scaling_factor=0.f, float flow_weight=0.05f, float talus_ref=0.f, float clipping_ratio=50.f, float flow_gamma=1.f, float k_smooth=0.01f)
Computes a soil–flow selection map based on terrain gradient, river mask, and smoothing parameters.
Definition select_soil_flow.cpp:13
Definition algebra.hpp:28
Array select_lt(const Array &array, float value)
Return an array with elements equal to 1 where input elements are smaller than value.
Definition selector.cpp:200
Array noise(NoiseType noise_type, Vec2< int > shape, Vec2< float > kw, uint seed, const Array *p_noise_x=nullptr, const Array *p_noise_y=nullptr, const Array *p_stretching=nullptr, Vec4< float > bbox={0.f, 1.f, 0.f, 1.f})
Return an array filled with coherence noise.
Definition noise.cpp:16
Array perturb_mask_contour(const Array &mask, const Array &noise, float max_displacement, int ir=1)
Perturb the contour of a binary mask using a displacement field, while trying to preserve a single co...
Definition perturb_mask_contour.cpp:10
Array select_elevation_slope(const Array &array, float gradient_scale)
Definition selector.cpp:89
Array select_angle(const Array &array, float angle, float sigma, int ir=0)
Return angle selection for a given angle and a tolerance half-width on this value.
Definition selector.cpp:45
Array select_pulse(const Array &array, float value, float sigma)
Return an array filled with non-zero values where the input is in the interval [value - sigma,...
Definition selector.cpp:300
Array select_rivers(const Array &array, float talus_ref, float clipping_ratio)
Return an array filled with a criterion based on the occurence of a river bed.
Definition selector.cpp:315
Array select_inward_outward_slope(const Array &array, Vec2< float > center={0.5f, 0.5f}, Vec4< float > bbox={0.f, 1.f, 0.f, 1.f})
Return an array with positive values if the slope is pointing to the center (slope is inward),...
Definition selector.cpp:166
Array select_gradient_exp(const Array &array, float talus_center, float talus_sigma)
Return an array weighted (exponantial decay) by the gradient norm of the input array.
Definition selector.cpp:132
Array select_gt(const Array &array, float value)
Return an array with elements equal to 1 where input elements are larger than value.
Definition selector.cpp:103
Array select_gradient_inv(const Array &array, float talus_center, float talus_sigma)
Return an array weighted (square inverse) by the gradient norm of the input array.
Definition selector.cpp:142
Array scan_mask(const Array &array, float contrast=0.5f, float brightness=0.5f)
Mask adjustement using a 'scanning' method.
Definition selector.cpp:23
void select_multiband3(const Array &array, Array &band_low, Array &band_mid, Array &band_high, float ratio1, float ratio2, float overlap, float vmin, float vmax)
Splits the input array into three bands (low, mid, and high) based on given ratios and overlap.
Definition selector.cpp:234
Array select_valley(const Array &z, int ir, bool zero_at_borders=true, bool ridge_select=false)
Definition selector.cpp:385
Array select_midrange(const Array &array, float gain, float vmin, float vmax)
Selects the midrange values of the input array within a specified range.
Definition selector.cpp:209
Array select_interval(const Array &array, float value1, float value2)
Return an array with elements equal to 1 where input elements are within the bounds provided.
Definition selector.cpp:152
Array select_gradient_angle(const Array &array, float angle)
Return an array weighted by the gap between the gradient angle and a given angle.
Definition selector.cpp:112
float angle(const Point &p1, const Point &p2)
Computes the angle between two points relative to the x-axis.
Definition points.cpp:42
void gain(Array &array, float factor, const Array *p_mask)
Apply a gain correction to the array elements.
Definition filters.cpp:346
Array select_cavities(const Array &array, int ir, bool concave=true)
Return holes or bumps detection based on the mean curvature of the heightmap.
Definition selector.cpp:67
Array select_transitions(const Array &array1, const Array &array2, const Array &array_blend)
Return an array filled with 1 at the blending transition between two arrays, and 0 elsewhere.
Definition selector.cpp:324
Array select_gradient_binary(const Array &array, float talus_center)
Return an array filled with 1 where the gradient is larger than a given value and 0 elsewhere.
Definition selector.cpp:123
Array select_eq(const Array &array, float value)
Return an array with elements equal to 1 where input elements are equal to value.
Definition selector.cpp:94
ClampMode
Definition range.hpp:25
@ POSITIVE_ONLY
Definition range.hpp:26
Array select_blob_log(const Array &array, int ir)
Return blob detection using the Laplacian of Gaussian (LoG) approach.
Definition selector.cpp:58
Header file for range control functions and utilities.