![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Splits a curve with a criterion. More...
#include <ShapeUpgrade_SplitCurve.hxx>

Public Member Functions | |
| ShapeUpgrade_SplitCurve () | |
| Empty constructor. | |
| void | Init (const double First, const double Last) |
| Initializes with curve first and last parameters. | |
| void | SetSplitValues (const occ::handle< NCollection_HSequence< double > > &SplitValues) |
| Sets the parameters where splitting has to be done. | |
| virtual void | Build (const bool Segment) |
| If Segment is True, the result is composed with segments of the curve bounded by the SplitValues. If Segment is False, the result is composed with trimmed Curves all based on the same complete curve. | |
| const occ::handle< NCollection_HSequence< double > > & | SplitValues () const |
| returns all the splitting values including the First and Last parameters of the input curve Merges input split values and new ones into myGlobalKnots | |
| virtual void | Compute () |
| Calculates points for correction/splitting of the curve. | |
| void | Perform (const bool Segment=true) |
| Performs correction/splitting of the curve. First defines splitting values by method Compute(), then calls method Build(). | |
| bool | Status (const ShapeExtend_Status status) const |
| Returns the status OK - no splitting is needed DONE1 - splitting required and gives more than one segment DONE2 - splitting is required, but gives only one segment (initial) DONE3 - geometric form of the curve or parametrisation is modified. | |
Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor. | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing. | |
| Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. | |
| virtual | ~Standard_Transient ()=default |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| bool | IsInstance (const char *const theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| bool | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| bool | IsKind (const char *const theTypeName) const |
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| Standard_Transient * | This () const |
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
| int | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations. | |
| int | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Protected Attributes | |
| occ::handle< NCollection_HSequence< double > > | mySplitValues |
| int | myNbCurves |
| int | myStatus |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
| static constexpr const char * | get_type_name () |
| Returns a type descriptor about this object. | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
| Returns type descriptor of Standard_Transient class. | |
Splits a curve with a criterion.
| ShapeUpgrade_SplitCurve::ShapeUpgrade_SplitCurve | ( | ) |
Empty constructor.
If Segment is True, the result is composed with segments of the curve bounded by the SplitValues. If Segment is False, the result is composed with trimmed Curves all based on the same complete curve.
Reimplemented in ShapeUpgrade_ConvertCurve2dToBezier, ShapeUpgrade_ConvertCurve3dToBezier, ShapeUpgrade_SplitCurve2d, and ShapeUpgrade_SplitCurve3d.
Calculates points for correction/splitting of the curve.
Reimplemented in ShapeUpgrade_ConvertCurve2dToBezier, ShapeUpgrade_ConvertCurve3dToBezier, ShapeUpgrade_SplitCurve2dContinuity, and ShapeUpgrade_SplitCurve3dContinuity.
Initializes with curve first and last parameters.
| void ShapeUpgrade_SplitCurve::SetSplitValues | ( | const occ::handle< NCollection_HSequence< double > > & | SplitValues | ) |
Sets the parameters where splitting has to be done.
| const occ::handle< NCollection_HSequence< double > > & ShapeUpgrade_SplitCurve::SplitValues | ( | ) | const |
returns all the splitting values including the First and Last parameters of the input curve Merges input split values and new ones into myGlobalKnots
| bool ShapeUpgrade_SplitCurve::Status | ( | const ShapeExtend_Status | status | ) | const |
Returns the status OK - no splitting is needed DONE1 - splitting required and gives more than one segment DONE2 - splitting is required, but gives only one segment (initial) DONE3 - geometric form of the curve or parametrisation is modified.
|
protected |
|
protected |
|
protected |