BRL-CAD
Loading...
Searching...
No Matches
quality.h
Go to the documentation of this file.
1
/* Q U A L I T Y . H
2
* BRL-CAD
3
*
4
* Copyright (c) 2026 United States Government as represented by
5
* the U.S. Army Research Laboratory.
6
*
7
* This library is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public License
9
* version 2.1 as published by the Free Software Foundation.
10
*
11
* This library is distributed in the hope that it will be useful, but
12
* WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with this file; see the file named COPYING for more
18
* information.
19
*/
20
/** @file brep/quality.h */
21
#ifndef BREP_QUALITY_H
22
#define BREP_QUALITY_H
23
24
#include "
common.h
"
25
26
#include "
bu/vls.h
"
27
#include "
brep/defines.h
"
28
29
#ifdef __cplusplus
30
extern
"C++"
{
31
32
class
ON_Brep
;
33
34
struct
brep_quality_options
{
35
double
tolerance
;
36
double
duplicate_vertex_tolerance
;
37
double
min_edge_length
;
38
double
min_trim_length
;
39
double
max_aspect_ratio
;
40
int
self_intersection_samples
;
41
bool
check_self_intersection_risk
;
42
};
43
44
BREP_EXPORT
extern
void
45
ON_Brep_Quality_Defaults
(
struct
brep_quality_options
*opts);
46
47
/**
48
* Run geometry quality checks that are stricter than ON_Brep::IsValid().
49
*
50
* Returns the number of hard errors found. Warnings, including conservative
51
* self-intersection-risk notices, are written to msgs when supplied but do not
52
* contribute to the return value.
53
*/
54
BREP_EXPORT
extern
int
55
ON_Brep_Quality_Check
(
const
ON_Brep
*brep,
struct
bu_vls
*msgs,
const
struct
brep_quality_options
*opts);
56
57
}
58
#endif
59
60
#endif
/* BREP_QUALITY_H */
61
/*
62
* Local Variables:
63
* mode: C++
64
* tab-width: 8
65
* indent-tabs-mode: t
66
* c-file-style: "stroustrup"
67
* End:
68
* ex: shiftwidth=4 tabstop=8
69
*/
defines.h
dvec
Definition
dvec.h:74
common.h
Header file for the BRL-CAD common definitions.
ON_Brep_Quality_Check
int ON_Brep_Quality_Check(const ON_Brep *brep, struct bu_vls *msgs, const struct brep_quality_options *opts)
ON_Brep_Quality_Defaults
void ON_Brep_Quality_Defaults(struct brep_quality_options *opts)
brep_quality_options
Definition
quality.h:34
brep_quality_options::min_edge_length
double min_edge_length
Definition
quality.h:37
brep_quality_options::max_aspect_ratio
double max_aspect_ratio
Definition
quality.h:39
brep_quality_options::duplicate_vertex_tolerance
double duplicate_vertex_tolerance
Definition
quality.h:36
brep_quality_options::tolerance
double tolerance
Definition
quality.h:35
brep_quality_options::check_self_intersection_risk
bool check_self_intersection_risk
Definition
quality.h:41
brep_quality_options::min_trim_length
double min_trim_length
Definition
quality.h:38
brep_quality_options::self_intersection_samples
int self_intersection_samples
Definition
quality.h:40
bu_vls
Definition
vls.h:53
vls.h
include
brep
quality.h
Generated on Tue Jul 21 2026 02:18:11 for BRL-CAD by
1.9.8