NavMap
Loading...
Searching...
No Matches
BuildParams Struct Reference

Parameters controlling NavMap construction from point clouds. More...

#include <conversions.hpp>

Collaboration diagram for BuildParams:

Public Attributes

bool carve_free_space = true
 With viewpoints: drop the points in space that rays went through (people, noise).
float carve_max_range = 20.0f
 Rays carve only their first carve_max_range meters.
float carve_ratio = 1.0f
 A voxel is carved when rays went through it more than carve_ratio times its hits.
float carve_voxel = 0.0f
 Voxel size (meters) of the free-space carving (0 = max(0.1, resolution / 2)).
bool drop_seen_from_below = true
 With viewpoints: drop the faces only seen from below (ceilings, slab undersides).
int k_neighbors = 20
 Alternative to radius: number of nearest neighbors (k-NN).
float max_dz = 0.25f
 Maximum allowed vertical jump (meters) between vertices of a triangle.
float max_edge_len = 2.0
 Maximum allowed edge length (meters) when forming triangles.
float max_hole_area = 1.0f
 Enclosed empty regions up to this area (square meters) are filled (0 = none).
float max_slope_deg = 30.0f
 Maximum slope with respect to the vertical axis (degrees).
int max_surfaces = 0
 Maximum number of surfaces to keep, largest first (0 = all).
float min_angle_deg = 20.0f
 Minimum interior angle (degrees) to avoid sliver triangles.
float min_area = 1e-6f
 Minimum triangle area (square meters) to reject degenerate faces.
float min_clearance = 1.0f
 Vertical free space (meters) that separates two stacked surfaces in a cell.
float min_surface_area = 0.0f
 Surfaces smaller than this area (square meters) are dropped (0 = keep all).
float neighbor_radius = 2.0f
 Neighborhood radius (meters) for candidate connectivity.
float resolution = 1.0
 Target in-plane sampling resolution (meters) used by voxelization or gridding.
bool use_radius = true
 If true, use radius-based neighborhoods; otherwise use k-NN.

Detailed Description

Parameters controlling NavMap construction from point clouds.

from_points() uses resolution, max_dz, max_slope_deg, min_area, min_clearance, max_surfaces, min_surface_area and max_hole_area. max_edge_len, neighbor_radius, k_neighbors, use_radius and min_angle_deg are kept for API compatibility and ignored. For voxelized clouds, use a resolution of at least twice the voxel size.

Member Data Documentation

◆ carve_free_space

bool carve_free_space = true

With viewpoints: drop the points in space that rays went through (people, noise).

◆ carve_max_range

float carve_max_range = 20.0f

Rays carve only their first carve_max_range meters.

◆ carve_ratio

float carve_ratio = 1.0f

A voxel is carved when rays went through it more than carve_ratio times its hits.

◆ carve_voxel

float carve_voxel = 0.0f

Voxel size (meters) of the free-space carving (0 = max(0.1, resolution / 2)).

◆ drop_seen_from_below

bool drop_seen_from_below = true

With viewpoints: drop the faces only seen from below (ceilings, slab undersides).

◆ k_neighbors

int k_neighbors = 20

Alternative to radius: number of nearest neighbors (k-NN).

◆ max_dz

float max_dz = 0.25f

Maximum allowed vertical jump (meters) between vertices of a triangle.

◆ max_edge_len

float max_edge_len = 2.0

Maximum allowed edge length (meters) when forming triangles.

◆ max_hole_area

float max_hole_area = 1.0f

Enclosed empty regions up to this area (square meters) are filled (0 = none).

◆ max_slope_deg

float max_slope_deg = 30.0f

Maximum slope with respect to the vertical axis (degrees).

◆ max_surfaces

int max_surfaces = 0

Maximum number of surfaces to keep, largest first (0 = all).

◆ min_angle_deg

float min_angle_deg = 20.0f

Minimum interior angle (degrees) to avoid sliver triangles.

◆ min_area

float min_area = 1e-6f

Minimum triangle area (square meters) to reject degenerate faces.

◆ min_clearance

float min_clearance = 1.0f

Vertical free space (meters) that separates two stacked surfaces in a cell.

◆ min_surface_area

float min_surface_area = 0.0f

Surfaces smaller than this area (square meters) are dropped (0 = keep all).

◆ neighbor_radius

float neighbor_radius = 2.0f

Neighborhood radius (meters) for candidate connectivity.

◆ resolution

float resolution = 1.0

Target in-plane sampling resolution (meters) used by voxelization or gridding.

◆ use_radius

bool use_radius = true

If true, use radius-based neighborhoods; otherwise use k-NN.


The documentation for this struct was generated from the following file: