|
Rhino C++ API
8.24
|
#include <opennurbs_brep.h>
Public Member Functions | |
| ON_BendFaceConstraint () | |
| bool | SetClosedSurfaceConstraint (ON_Surface::ISO surface_side) |
| bool | SetCurveConstraint (const ON_BrepTrim *trim, const ON_Curve *curve_constraint, double tolerance) |
| bool | SetPointConstraint (double s, double t, ON_3dPoint point) |
| bool | SetSingularConstraint (ON_Surface::ISO surface_side, ON_3dPoint point) |
| bool | SetSurfaceConstraint (const ON_BrepTrim *trim, const ON_Surface *surface_constraint, double tolerance) |
| bool | SetSurfaceSeamFromEndsConstraint (ON_Surface::ISO surface_side) |
| bool | SetSurfaceSideConstraint (ON_Surface::ISO surface_side, const ON_Curve *curve_constraint, double tolerance) |
| bool | SetSurfaceSideConstraint (ON_Surface::ISO surface_side, const ON_Surface *surface_constraint, double tolerance) |
Static Public Member Functions | |
| static int | CompareComponentIndex (const class ON_BendFaceConstraint *a, const class ON_BendFaceConstraint *b) |
Public Attributes | |
| int | m_brep_trim_index |
| m_brep_trim_index identifies a trim on the face being bent More... | |
| unsigned int | m_contraint_type |
| const ON_Curve * | m_curve_constraint |
| ON_3dPoint | m_point |
| unsigned char | m_rev_curve_constraint |
| const ON_Surface * | m_surface_constraint |
| double | m_surface_parameters [2] |
| double | m_tolerance |
| ON_BendFaceConstraint::ON_BendFaceConstraint | ( | ) |
|
static |
Description: Compare function for sorting and searching arrays of ON_BendFaceEdgeInformation elements. Parameters: a - [in] Must not be null. b - [in] Must not be null. Returns: -1: a < b +1: a > b 0: a == b
| bool ON_BendFaceConstraint::SetClosedSurfaceConstraint | ( | ON_Surface::ISO | surface_side | ) |
Description: Set a constraint so the surface returned by ON_BendBrepFace will be closed along the specified side. Parameters: surface_side - [in] ON_Surface::W_iso, ON_Surface::S_iso, ON_Surface::E_iso or ON_Surface::W_iso Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetCurveConstraint | ( | const ON_BrepTrim * | trim, |
| const ON_Curve * | curve_constraint, | ||
| double | tolerance | ||
| ) |
Description: Set a constraint based on information in an ON_BrepTrim. Parameters: trim - [in] curve_constraint - [in] tolerance - [in] Desired fitting tolerance Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetPointConstraint | ( | double | s, |
| double | t, | ||
| ON_3dPoint | point | ||
| ) |
Description: Set a surface evaluation point constraint. Parameters: s - [in] t - [in] surface evaluation parameters point - [in] Desired location. Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetSingularConstraint | ( | ON_Surface::ISO | surface_side, |
| ON_3dPoint | point | ||
| ) |
Description: Set a singular constraint based on information in an ON_BrepTrim. Parameters: surface_side - [in] ON_Surface::W_iso, ON_Surface::S_iso, ON_Surface::E_iso or ON_Surface::W_iso point - [in] Desired location of the singularity. Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetSurfaceConstraint | ( | const ON_BrepTrim * | trim, |
| const ON_Surface * | surface_constraint, | ||
| double | tolerance | ||
| ) |
Description: Set a constraint based on information in an ON_BrepTrim. Parameters: trim - [in] surface_constraint - [in] tolerance - [in] Desired fitting tolerance Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetSurfaceSeamFromEndsConstraint | ( | ON_Surface::ISO | surface_side | ) |
Description: Set a constraint so the specified seam of a closed surface will be set by attenuating the changes applied to its ends by other constraints. This is a robust way to "fit" a periodic seam on a tube-like surface. Parameters: surface_side - [in] side that identifies the seam. Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetSurfaceSideConstraint | ( | ON_Surface::ISO | surface_side, |
| const ON_Curve * | curve_constraint, | ||
| double | tolerance | ||
| ) |
Description: Set a constraint so the specified side of the surface returned by ON_BendBrepFace will match curve_constraint. Parameters: trim - [in] curve_constraint - [in] 3d curve tolerance - [in] Desired fitting tolerance Returns: True if the constraint was set.
| bool ON_BendFaceConstraint::SetSurfaceSideConstraint | ( | ON_Surface::ISO | surface_side, |
| const ON_Surface * | surface_constraint, | ||
| double | tolerance | ||
| ) |
Description: Set a constraint so the specified side of the surface returned by ON_BendBrepFace will match the same side surface_constraint. Parameters: trim - [in] surface_constraint - [in] 3d surface whose side should be matched. tolerance - [in] Desired fitting tolerance Returns: True if the constraint was set.
| int ON_BendFaceConstraint::m_brep_trim_index |
m_brep_trim_index identifies a trim on the face being bent
| unsigned int ON_BendFaceConstraint::m_contraint_type |
The value m_contraint_type determines what type of constraint to apply.
0: Ignore this constraint.
1: m_brep_trim_index identifies a brep trim. The surface along the trim will will be constrained to m_curve_constraint. m_curve_constraint must be oriented to take the trim's m_bRev3d flag into account.
2: m_brep_trim_index identifies a brep trim. The surface along the trim will will be constrained to location of m_surface_constraint along the trim.
3 - 6: Surface Singularity These constraints specify the surface returned by ON_BendBrepFace will have a singularity on the side identified by the constraint value at the location specified by the value in m_point. The values of m_brep_trim_index, m_curve_constraint and m_surface_constraint are ignored. 3: west side singularity. 4: south side singularity. 5: east side singularity. 6: north side singularity.
7 - 8: Closed surface These constraints specify the surface returned by ON_BendBrepFace will be closed in the parameter direction identified by the constraint value. The knot vector on the surface passed to ON_BendBrepFace determines if the the closure is clamped or periodic. The values of m_brep_trim_index, m_curve_constraint and m_surface_constraint are ignored. 7: Closed surface the first parameter direction. (west = east) 8: Closed surface in the second parameter direction. (south = north)
13 - 16: Constrain a surface side to a curve. The specified side of the surface is constrained to the curve specified by m_curve_constraint. The domain and parameterization of m_curve_constaint must be set to agree with the portion of the side of the surface that is being constrained. The values of m_brep_trim_index and m_surface_constraint are ignored. 13: west side lies on m_curve_constraint. 14: south side lies on m_curve_constraint. 15: east side lies on m_curve_constraint. 16: north side lies on m_curve_constraint.
23 - 26: Constrain a surface side to match another surface side. The specified side of the surface is constrained to match the same side of m_surface_constraint. The domain and parameterization of m_surface_constraint must be set to agree with the the side of the surface that is being constrained. The values of m_brep_trim_index and m_curve_constraint are ignored. 23: west side matches west side of m_surface_constraint. 24: south side matches west side of m_surface_constraint. 25: east side matches west side of m_surface_constraint. 26: north side matches west side of m_surface_constraint.
27: Point constraint m_surface_parameters[2] = surface evaluation parameters m_point = 3d point.
28: Set east-west seam from fixed north and south sides.
29: Set south-north seam from fixed west and east sides.
| const ON_Curve* ON_BendFaceConstraint::m_curve_constraint |
| ON_3dPoint ON_BendFaceConstraint::m_point |
If the value of m_action is 3 through 6, then m_point is a 3d location of the singular side. If the value of m_action is 27, then m_point is the 3d location of the point constraint.
| unsigned char ON_BendFaceConstraint::m_rev_curve_constraint |
If m_rev_curve_constraint is 0, the curve will be evaluated as it is oriented. If m_rev_curve_constraint is 1, the curve will be evaluated in a reverse orientation. In both cases, the trim's m_bRev3d settings into account. That is, the evaluated points on the curve with m_rev_curve_constraint taken into account, must run in the direction indicated by by the trim's m_bRev3d value.
| const ON_Surface* ON_BendFaceConstraint::m_surface_constraint |
If the value of m_action is 2 or 23 - 26, then this surface is used.
| double ON_BendFaceConstraint::m_surface_parameters[2] |
If the value of m_action is 27, then a m_surface_parameters[] specifies the evaluation parameters for the point constraint.
| double ON_BendFaceConstraint::m_tolerance |
If the surface is being constrained to pass through m_curve_constraint or m_surface_constraint, then m_tolerance is the desired edge tolerance. If the boundary conditions or tolerance are unreasonable, then the fit may exceed this tolerance.
1.8.17