HighMap library (C++)
|
Header file for boundary condition functions and utilities. More...
Go to the source code of this file.
Namespaces | |
namespace | hmap |
Functions | |
void | hmap::extrapolate_borders (Array &array, int nbuffer=1, float sigma=0.f) |
Performs linear extrapolation of values at the borders of an array (e.g., i = 0 , j = 0 , etc.) based on the inner values of the array. | |
void | hmap::falloff (Array &array, float strength=1.f, DistanceFunction dist_fct=DistanceFunction::EUCLIDIAN, const Array *p_noise=nullptr, Vec4< float > bbox={0.f, 1.f, 0.f, 1.f}) |
Applies a falloff effect to the input array based on distance. | |
void | hmap::fill_borders (Array &array) |
Fills the border values of an array (e.g., i = 0 , j = 0 , etc.) based on the values of the first neighboring cells. | |
void | hmap::fill_borders (Array &array, int nbuffer) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
Array | hmap::generate_buffered_array (const Array &array, Vec4< int > buffers, bool zero_padding=false) |
Creates and returns a new array with additional buffer zones at the boundaries, where the buffer values are filled either by symmetry or by zero-padding. | |
void | hmap::make_periodic (Array &array, int nbuffer) |
Adjusts the input array to be periodic in both directions by transitioning smoothly at the boundaries. | |
Array | hmap::make_periodic_stitching (const Array &array, float overlap) |
Creates a periodic array in both directions using a stitching operation that minimizes errors at the boundaries. | |
Array | hmap::make_periodic_tiling (const Array &array, float overlap, Vec2< int > tiling) |
Creates a tiled, periodic array by applying a transition with overlap in both directions. | |
void | hmap::set_borders (Array &array, Vec4< float > border_values, Vec4< int > buffer_sizes) |
Enforces specific values at the boundaries of the array. | |
void | hmap::set_borders (Array &array, float border_values, int buffer_sizes) |
Enforces a uniform value at all boundaries of the array. | |
void | hmap::sym_borders (Array &array, Vec4< int > buffer_sizes) |
Fills the values at the domain borders using symmetry over a specified buffer depth. | |
void | hmap::zeroed_borders (Array &array) |
Fills the border values (e.g., i = 0 , j = 0 , etc.) of the array with zeros. | |
void | hmap::zeroed_edges (Array &array, float sigma=1.f, DistanceFunction dist_fct=DistanceFunction::EUCLIDIAN, const Array *p_noise=nullptr, Vec4< float > bbox={0.f, 1.f, 0.f, 1.f}) |
Applies a smooth transition to zero at the array borders. | |
Header file for boundary condition functions and utilities.
This header file contains declarations for functions and utilities that manage and enforce boundary conditions in heightmap arrays. The functions include methods for filling, extrapolating, and smoothing values at the boundaries, as well as making arrays periodic and handling symmetry.