ReUseX
0.0.5
3D Point Cloud Processing for Building Reuse
Toggle main menu visibility
Loading...
Searching...
No Matches
windows.hpp
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2025 Povl Filip Sonne-Frederiksen
2
//
3
// SPDX-License-Identifier: GPL-3.0-or-later
4
5
#pragma once
6
#include "
../global-params.hpp
"
7
#include <reusex/reconstruction/create_windows.hpp>
8
9
#include <CLI/CLI.hpp>
10
#include <memory>
11
#include <string>
12
#include <vector>
13
14
namespace
fs = std::filesystem;
15
20
struct
SubcommandWindowOptions
{
21
std::string
mesh_name
=
"mesh"
;
22
std::string
instance_cloud_name
=
"instances"
;
23
std::string
semantic_cloud_name
=
"labels"
;
24
std::string
mode
=
"rect"
;
26
float
wall_offset
=
reusex::geometry::CreateWindowsOptions
{}.
wall_offset
;
28
float
alpha
=
reusex::geometry::CreateWindowsOptions
{}.
alpha
;
30
float
wall_normal_z_threshold
=
31
reusex::geometry::CreateWindowsOptions
{}.
wall_normal_z_threshold
;
32
std::vector<uint32_t>
33
labels_to_process
;
34
bool
clear_existing
=
35
false
;
37
bool
include_internal
=
38
reusex::geometry::CreateWindowsOptions
{}.
include_internal
;
39
};
40
41
// Function declarations.
42
void
setup_subcommand_create_windows
(CLI::App &app,
43
std::shared_ptr<RuxOptions> global_opt);
44
int
run_subcommand_create_windows
(
SubcommandWindowOptions
const
&opt,
45
const
RuxOptions
&global_opt);
global-params.hpp
RuxOptions
Definition
global-params.hpp:44
SubcommandWindowOptions
Options for rux create windows.
Definition
windows.hpp:20
SubcommandWindowOptions::wall_normal_z_threshold
float wall_normal_z_threshold
Verticality gate on wall candidates (#326).
Definition
windows.hpp:30
SubcommandWindowOptions::alpha
float alpha
ConcaveHull alpha for polyline mode.
Definition
windows.hpp:28
SubcommandWindowOptions::clear_existing
bool clear_existing
Delete all existing windows before creating new ones.
Definition
windows.hpp:34
SubcommandWindowOptions::labels_to_process
std::vector< uint32_t > labels_to_process
Semantic labels to treat as windows.
Definition
windows.hpp:33
SubcommandWindowOptions::include_internal
bool include_internal
Include windows inside the mesh volume.
Definition
windows.hpp:37
SubcommandWindowOptions::mesh_name
std::string mesh_name
Definition
windows.hpp:21
SubcommandWindowOptions::instance_cloud_name
std::string instance_cloud_name
Definition
windows.hpp:22
SubcommandWindowOptions::wall_offset
float wall_offset
Offset along the outward wall normal (meters).
Definition
windows.hpp:26
SubcommandWindowOptions::mode
std::string mode
"rect" or "poly"
Definition
windows.hpp:24
SubcommandWindowOptions::semantic_cloud_name
std::string semantic_cloud_name
Definition
windows.hpp:23
reusex::geometry::CreateWindowsOptions
Configuration for the create_windows pipeline.
Definition
create_windows.hpp:52
reusex::geometry::CreateWindowsOptions::alpha
float alpha
ConcaveHull alpha for polyline mode.
Definition
create_windows.hpp:55
reusex::geometry::CreateWindowsOptions::wall_normal_z_threshold
float wall_normal_z_threshold
Verticality gate on wall candidates: a coplanar mesh region is kept only when |normal....
Definition
create_windows.hpp:62
reusex::geometry::CreateWindowsOptions::wall_offset
float wall_offset
Offset along outward wall normal (meters).
Definition
create_windows.hpp:54
reusex::geometry::CreateWindowsOptions::include_internal
bool include_internal
Include windows inside mesh volume (default: false).
Definition
create_windows.hpp:65
setup_subcommand_create_windows
void setup_subcommand_create_windows(CLI::App &app, std::shared_ptr< RuxOptions > global_opt)
run_subcommand_create_windows
int run_subcommand_create_windows(SubcommandWindowOptions const &opt, const RuxOptions &global_opt)
apps
rux
include
create
windows.hpp
Generated by
1.17.0