File vegetation_polygon.hpp
FileList > lib > vegetation > vegetation_polygon.hpp
Go to the source code of this file
#include <ogrsf_frmts.h>#include <algorithm>#include <cmath>#include <limits>#include <map>#include <memory>#include <set>#include <string>#include <vector>#include "assert/assert.hpp"#include "config_input/config_input.hpp"#include "contour/contour.hpp"#include "contour/contour_gen.hpp"#include "geometry/polygon.hpp"#include "geometry/polygon_subtract.hpp"#include "grid/grid.hpp"#include "io/gdal_init.hpp"#include "io/gpkg.hpp"#include "printing/to_string.hpp"#include "utilities/coordinate.hpp"#include "utilities/filesystem.hpp"#include "utilities/progress_tracker.hpp"
Classes
| Type | Name |
|---|---|
| struct | VegePolygon |
Public Functions
| Type | Name |
|---|---|
| void | combine_vege_gpkgs (const std::vector< fs::path > & tile_dirs, const fs::path & combined_dir, const std::string & projection, ProgressTracker && progress_tracker) |
| std::vector< VegePolygon > | contours_to_polygons (const std::map< double, std::vector< Contour > > & contours_by_height, const std::map< double, std::string > & height_to_layer) |
| void | cut_understory_from_forest (std::vector< VegePolygon > & polygons, ProgressTracker && progress_tracker) |
| std::string | default_isom_layer_name (const VegeHeightConfig & config, size_t threshold_rank) |
| std::map< double, std::string > | extract_threshold_layers (const VegeHeightConfig & config) |
| void | filter_by_min_area (std::vector< VegePolygon > & polygons, const std::map< std::string, double > & min_areas, ProgressTracker && progress_tracker) |
| void | filter_small_holes (std::vector< VegePolygon > & polygons, const std::map< std::string, double > & min_hole_areas, ProgressTracker && progress_tracker) |
| std::vector< VegePolygon > | generate_vege_polygons (const VegeConfig & vege_config, const std::map< std::string, GeoGrid< float > > & vege_maps, ProgressTracker && progress_tracker) |
| std::string | layer_number (const std::string & layer) |
| double | polygon_net_area_m2 (const VegePolygon & poly) |
| std::vector< VegePolygon > | read_vege_polygons (const fs::path & gpkg_path) |
| std::vector< VegePolygon > | subtract_from_polygon (const VegePolygon & host, const std::vector< VegePolygon > & cutouts) |
| std::vector< VegePolygon > | subtract_from_polygon (const VegePolygon & host, const OGRGeometry * cut_union) |
| std::string | threshold_layer_name (const VegeHeightConfig & config, const BlockingThresholdColorPair & btc, size_t threshold_rank=std::numeric_limits< size_t >::max()) |
| void | trim_vege_polygons_to_extent (std::vector< VegePolygon > & polygons, const Extent2D & bounds, ProgressTracker && progress_tracker, const std::vector< Extent2D > & snap_extents={}, double snap_tolerance=0.01) |
| std::map< std::string, ColorVariant > | vege_layer_colors (const VegeConfig & vege_config) |
| int | vege_layer_draw_priority (const std::string & layer) |
| void | write_vege_polygons_gpkg (const std::vector< VegePolygon > & polygons, const fs::path & gpkg_path, const std::string & projection, ProgressTracker && progress_tracker) |
Public Functions Documentation
function combine_vege_gpkgs
inline void combine_vege_gpkgs (
const std::vector< fs::path > & tile_dirs,
const fs::path & combined_dir,
const std::string & projection,
ProgressTracker && progress_tracker
)
function contours_to_polygons
inline std::vector< VegePolygon > contours_to_polygons (
const std::map< double, std::vector< Contour > > & contours_by_height,
const std::map< double, std::string > & height_to_layer
)
function cut_understory_from_forest
inline void cut_understory_from_forest (
std::vector< VegePolygon > & polygons,
ProgressTracker && progress_tracker
)
function default_isom_layer_name
inline std::string default_isom_layer_name (
const VegeHeightConfig & config,
size_t threshold_rank
)
function extract_threshold_layers
function filter_by_min_area
inline void filter_by_min_area (
std::vector< VegePolygon > & polygons,
const std::map< std::string, double > & min_areas,
ProgressTracker && progress_tracker
)
function filter_small_holes
inline void filter_small_holes (
std::vector< VegePolygon > & polygons,
const std::map< std::string, double > & min_hole_areas,
ProgressTracker && progress_tracker
)
function generate_vege_polygons
inline std::vector< VegePolygon > generate_vege_polygons (
const VegeConfig & vege_config,
const std::map< std::string, GeoGrid < float > > & vege_maps,
ProgressTracker && progress_tracker
)
function layer_number
function polygon_net_area_m2
function read_vege_polygons
function subtract_from_polygon
inline std::vector< VegePolygon > subtract_from_polygon (
const VegePolygon & host,
const std::vector< VegePolygon > & cutouts
)
function subtract_from_polygon
inline std::vector< VegePolygon > subtract_from_polygon (
const VegePolygon & host,
const OGRGeometry * cut_union
)
function threshold_layer_name
inline std::string threshold_layer_name (
const VegeHeightConfig & config,
const BlockingThresholdColorPair & btc,
size_t threshold_rank=std::numeric_limits< size_t >::max()
)
function trim_vege_polygons_to_extent
inline void trim_vege_polygons_to_extent (
std::vector< VegePolygon > & polygons,
const Extent2D & bounds,
ProgressTracker && progress_tracker,
const std::vector< Extent2D > & snap_extents={},
double snap_tolerance=0.01
)
function vege_layer_colors
function vege_layer_draw_priority
function write_vege_polygons_gpkg
inline void write_vege_polygons_gpkg (
const std::vector< VegePolygon > & polygons,
const fs::path & gpkg_path,
const std::string & projection,
ProgressTracker && progress_tracker
)
The documentation for this class was generated from the following file /home/runner/work/Blaze/Blaze/src/lib/vegetation/vegetation_polygon.hpp