HighMap library (C++)
Loading...
Searching...
No Matches
kernels.hpp File Reference

Header file for kernel functions and utilities. More...

Go to the source code of this file.

Namespaces

namespace  hmap
 

Enumerations

enum  hmap::KernelType : int {
  hmap::BIWEIGHT , hmap::CUBIC_PULSE , hmap::CONE , hmap::CONE_SMOOTH ,
  hmap::DISK , hmap::LORENTZIAN , hmap::SMOOTH_COSINE , hmap::SQUARE ,
  hmap::TRICUBE , hmap::CUPOLA
}
 Enumeration for different kernel functions used in various algorithms. More...
 

Functions

Array hmap::get_kernel (glm::ivec2 shape, KernelType kernel_type)
 Generate a kernel of the specified type.
 
Array hmap::biweight (glm::ivec2 shape)
 Generates a biweight kernel array.
 
Array hmap::blackman (glm::ivec2 shape)
 Generates a Blackman window array with the specified shape.
 
Array hmap::cone (glm::ivec2 shape)
 Generates a cone-shaped kernel array.
 
Array hmap::cone_talus (float height, float talus)
 Generates a cone-shaped kernel with specified height and talus.
 
Array hmap::cone_smooth (glm::ivec2 shape)
 Generates a cone-shaped kernel with a smooth landing.
 
Array hmap::cubic_pulse (glm::ivec2 shape)
 Generates a cubic pulse kernel array.
 
std::vector< float > hmap::cubic_pulse_1d (int nk)
 Generates a 1D cubic pulse kernel.
 
Array hmap::cubic_pulse_directional (glm::ivec2 shape, float angle, float aspect_ratio, float anisotropy)
 Generates a "directional" cubic pulse kernel.
 
Array hmap::cubic_pulse_truncated (glm::ivec2 shape, float slant_ratio, float angle)
 Generates a truncated cubic pulse kernel.
 
Array hmap::cupola (glm::ivec2 shape, float rc=0.5f)
 Generate a 2D radial cupola kernel.
 
Array hmap::disk (glm::ivec2 shape)
 Generates a disk-shaped kernel footprint.
 
Array hmap::disk_smooth (glm::ivec2 shape, float r_cutoff=0.9f)
 Generates a smooth, disk-shaped kernel footprint with soft edges.
 
Array hmap::gabor (glm::ivec2 shape, float kw, float angle, bool quad_phase_shift=false)
 Generates a Gabor kernel of the specified shape.
 
Array hmap::gabor_dune (glm::ivec2 shape, float kw, float angle, float xtop, float xbottom)
 Generates a modified dune-like Gabor kernel.
 
Array hmap::hann (glm::ivec2 shape)
 Generates a Hann window array with the specified shape.
 
Array hmap::lorentzian (glm::ivec2 shape, float footprint_threshold=0.1f)
 Generate a Lorentzian kernel.
 
Array hmap::lorentzian_compact (glm::ivec2 shape)
 Generate a modified Lorentzian kernel with compact support.
 
Array hmap::sinc_radial (glm::ivec2 shape, float kw)
 Generates a radial sinc function array with the specified shape and wave number.
 
Array hmap::sinc_separable (glm::ivec2 shape, float kw)
 Generates a separable sinc function array with the specified shape and wave number.
 
Array hmap::smooth_cosine (glm::ivec2 shape)
 Generate a smooth cosine kernel.
 
Array hmap::square (glm::ivec2 shape)
 Generate a square-shaped kernel.
 
Array hmap::tricube (glm::ivec2 shape)
 Generate a tricube kernel.
 

Detailed Description

Header file for kernel functions and utilities.

Author
Otto Link (otto..nosp@m.link.nosp@m..bv@g.nosp@m.mail.nosp@m..com)

This header file declares functions for generating various types of kernel functions used in statistical and computational applications. These kernels include common types such as biweight, cubic pulse, Lorentzian, and smooth cosine, among others.