HighMap library (C++)
|
Header file containing functions for generating and manipulating heightmaps through various techniques. More...
Go to the source code of this file.
Namespaces | |
namespace | hmap |
Enumerations | |
enum | hmap::StampingBlendMethod : int { hmap::ADD , hmap::MAXIMUM , hmap::MAXIMUM_SMOOTH , hmap::MINIMUM , hmap::MINIMUM_SMOOTH , hmap::MULTIPLY , hmap::SUBSTRACT } |
Blending method for the stamping operator. More... | |
Functions | |
void | hmap::alter_elevation (Array &array, const Cloud &cloud, int ir, float footprint_ratio=1.f, Vec2< float > shift={0.f, 0.f}, Vec2< float > scale={1.f, 1.f}) |
Point-wise alteration: locally enforce a new elevation value while maintaining the 'shape' of the heightmap. | |
Array | hmap::base_elevation (Vec2< int > shape, const std::vector< std::vector< float > > &values, float width_factor=1.f, 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}) |
Generate a heightmap from a coarse grid of control points with defined elevation values. | |
Array | hmap::reverse_midpoint (const Array &array, uint seed, float noise_scale=1.f, float threshold=0.f) |
Apply the reverse midpoint displacement algorithm to the input array. | |
Array | hmap::ridgelines (Vec2< int > shape, const std::vector< float > &xr, const std::vector< float > &yr, const std::vector< float > &zr, float slope, float k_smoothing=1.f, float width=0.1f, float vmin=0.f, Vec4< float > bbox={0.f, 1.f, 0.f, 1.f}, const Array *p_noise_x=nullptr, const Array *p_noise_y=nullptr, const Array *p_stretching=nullptr, Vec4< float > bbox_array={0.f, 1.f, 0.f, 1.f}) |
Generate a heightmap based on a set of ridgelines and a specified slope. | |
Array | hmap::ridgelines_bezier (Vec2< int > shape, const std::vector< float > &xr, const std::vector< float > &yr, const std::vector< float > &zr, float slope, float k_smoothing=1.f, float width=0.1f, float vmin=0.f, Vec4< float > bbox={0.f, 1.f, 0.f, 1.f}, const Array *p_noise_x=nullptr, const Array *p_noise_y=nullptr, const Array *p_stretching=nullptr, Vec4< float > bbox_array={0.f, 1.f, 0.f, 1.f}) |
Generate a heightmap based on a set of ridgelines with quadratic Bezier interpolation. | |
Array | hmap::stamping (Vec2< int > shape, const std::vector< float > &xr, const std::vector< float > &yr, const std::vector< float > &zr, Array kernel, int kernel_ir, bool kernel_scale_radius, bool kernel_scale_amplitude, StampingBlendMethod blend_method, uint seed, float k_smoothing=0.1f, bool kernel_flip=true, bool kernel_rotate=false, Vec4< float > bbox_array={0.f, 1.f, 0.f, 1.f}) |
Generate a heightmap by stamping a kernel at predefined locations. | |
Header file containing functions for generating and manipulating heightmaps through various techniques.
This header file provides functions for creating and modifying heightmaps using techniques such as stamping kernels, defining ridgelines, applying the reverse midpoint displacement algorithm, and more. These functions offer a range of capabilities for terrain generation, elevation modifications, and heightmap processing.