1 #ifndef _mgTL2parameter_HH_
2 #define _mgTL2parameter_HH_
6 #include "mg/drawParam.h"
25 #define EDGE_LENGTH_DENOM 8. //Default edge length parameter, which is the denominator of
28 #define NEAR_PARAM 0.002
29 #define STRICT_ZERO_ANGLE 0.00025
30 #define LOOSE_ZERO_ANGLE 0.20
31 #define LOOSE_ZERO_ANGLE2 0.01
32 #define CONCAVEANGLE1 -0.7
33 #define CONCAVEANGLE2 -2.441
34 #define SHARPANGLE 2.441
35 #define RIGHT_ANGLE STRICT_ZERO_ANGLE
36 #define MAX_DEVIATION_FROM_MIDDLE 4.
37 #define DEVIDE_RATIO 8
60 const std::vector<SHLL_COM_EDGES>* polylines=0,
67 double max_edge_len=-1.
74 const std::vector<SHLL_COM_EDGES>* polylines=0
87 const std::vector<SHLL_COM_EDGES>*
Bpoly()
const{
return m_Bpolylines;};
109 double m_puerror, m_pverror;
112 double m_tess_crvError;
113 double m_tess_srfError;
114 double m_max_edge_len;
115 double m_max_edge_len_sqr;
116 const std::vector<SHLL_COM_EDGES>* m_Bpolylines;
124 void build_parameter(
double compute_max_edge_len(const MGObject &twoManifold)
MGCurve is an abstract class which represents a whole curve.
Definition: Curve.h:63
double get_max_edge_len_sqr() const
Definition: TL2parameter.h:92
double get_tess_srfError() const
Definition: TL2parameter.h:94
double get_VError() const
Definition: TL2parameter.h:96
mgTL2parameter()
Definition: TL2parameter.h:53
mgTL2parameter & operator=(const mgTL2parameter &)
Assignment.
MGLBRep is a class for B-SPline representation.
Definition: LBRep.h:41
Is an abstract class which represents a whole geometry and a topology.
Definition: Object.h:42
void getUVline_ensuring_max_edge_length(const mgTL2parameter ¶, const MGCurve &uvline, MGLBRep &xyzpolylineOut)
Construct polyline MGLBRep whose maximum edge length is para.get_max_edge_len_sqr().
const std::vector< SHLL_COM_EDGES > * Bpoly() const
Definition: TL2parameter.h:87
Defines parameters to draw MGObject, maily to approximate by lines and facets.
Definition: drawParam.h:53
MGFace is a trimmed surface.
Definition: Face.h:51
friend std::ostream & operator<<(std::ostream &out, const mgTL2parameter ¶)
MGSurface is an abstract class of 3D surface.
Definition: Surface.h:54
double get_UVError() const
Definition: TL2parameter.h:97
Holds necessary parameter data for face tessellation.
Definition: TL2parameter.h:46
MGFSurface is an abstract class to provide the comman interfaces to MGFace and MGSurface.
Definition: FSurface.h:33
const MGSurface & get_surface() const
Definition: TL2parameter.h:90
double get_UError() const
Definition: TL2parameter.h:95
double get_tess_crvError() const
Definition: TL2parameter.h:93
double get_max_edge_len() const
Definition: TL2parameter.h:91
bool target_is_face() const
Definition: TL2parameter.h:98
void getXYZline_ensuring_max_edge_length(double maxElen2, const MGLBRep &xyzpolyline, MGLBRep &xyzpolylineOut)
const MGFace & get_face() const
Definition: TL2parameter.h:89