OpenLexocad  28.0
SimplifyOptions.h
Go to the documentation of this file.
1 #pragma once
2 #include <Geom/Precision.h>
3 
4 namespace Topo
5 {
6 class LX_TOPO_EXPORT SimplifyOptions
7 {
8 public:
9 
10  void set_simplification_tol(double tol);
11  void set_max_radius(double radius);
14  void set_do_elliptical_cylinder_simplification(int allow_elliptical_cylinder);
15  void set_do_elliptical_cone_simplification(int allow_elliptical_cone);
16  void set_do_approximate(int val);
19 
20  void set_max_gap_tolerance(double mg);
21  void set_desired_gap_tightness(double mg);
22 
23  void set_mesh_min_colinearity(double v);
24  void set_mesh_min_delta_v(double v);
25  void set_mesh_min_normal_angle(double v);
26  void set_mesh_min_length(double v);
27 
28 
29 public:
30  double m_simplify_pos_tol = Geom::Precision::linear_Resolution();
32  int m_do_curve_simplification = 1;
33  int m_do_surface_simplification = 1;
34  int m_allow_elliptical_cylinder_simplification = 1;
35  int m_allow_elliptical_cone_simplification = 1;
36  int m_do_approximate = 0;
37  int m_do_force_simplification = 0;
38  int m_limit_surfs_to_faces = 0;
39 
40  double m_max_gap_tolerance = 1;
41  double m_desired_gap_tightness = Geom::Precision::linear_Resolution();
42 
43  double m_mesh_min_colinearity = 1e-6;
44  double m_mesh_min_delta_v = 1e-6;
45  double m_mesh_min_normal_angle = 1e-6;
46  double m_mesh_min_length = 1e-6;
47 };
48 
49 } // namespace Topo
Topo::SimplifyOptions::set_do_force_simplification
void set_do_force_simplification(int val)
Topo::SimplifyOptions::set_mesh_min_length
void set_mesh_min_length(double v)
Precision.h
Topo::SimplifyOptions::set_mesh_min_delta_v
void set_mesh_min_delta_v(double v)
Topo::SimplifyOptions::set_do_elliptical_cylinder_simplification
void set_do_elliptical_cylinder_simplification(int allow_elliptical_cylinder)
Topo::SimplifyOptions::set_simplification_tol
void set_simplification_tol(double tol)
Topo::SimplifyOptions::set_max_gap_tolerance
void set_max_gap_tolerance(double mg)
Topo::SimplifyOptions::set_desired_gap_tightness
void set_desired_gap_tightness(double mg)
Topo::SimplifyOptions::set_max_radius
void set_max_radius(double radius)
Topo::SimplifyOptions::set_do_elliptical_cone_simplification
void set_do_elliptical_cone_simplification(int allow_elliptical_cone)
Topo::SimplifyOptions
Definition: SimplifyOptions.h:7
Topo
Definition: DbgInfo.h:17
Topo::SimplifyOptions::set_do_surface_simplification
void set_do_surface_simplification(int val)
Topo::SimplifyOptions::set_do_limit_surfs_to_faces
void set_do_limit_surfs_to_faces(int val)
Topo::SimplifyOptions::set_do_approximate
void set_do_approximate(int val)
Topo::SimplifyOptions::set_mesh_min_normal_angle
void set_mesh_min_normal_angle(double v)
Topo::SimplifyOptions::set_mesh_min_colinearity
void set_mesh_min_colinearity(double v)
Geom::Precision::linear_Resolution
static constexpr double linear_Resolution()
Definition: Precision.h:23
Topo::SimplifyOptions::set_do_curve_simplification
void set_do_curve_simplification(int val)
Geom::Precision::angle_Resolution
static constexpr double angle_Resolution()
Definition: Precision.h:25