|
| MbSpaceItem & | Duplicate (MbRegDuplicate *=nullptr) const override |
| | Create a copy of the object. More...
|
| |
|
MbeSpaceType | IsA () const override |
| | Get the type of the object.
|
| |
| bool | IsSame (const MbSpaceItem &other, double accuracy=LENGTH_EPSILON) const override |
| | Determine whether an object is equal. More...
|
| |
| bool | SetEqual (const MbSpaceItem &) override |
| | Make objects equal if they are similar. More...
|
| |
| void | Transform (const MbMatrix3D &, MbRegTransform *=nullptr) override |
| | Convert the object according to the matrix. More...
|
| |
| void | Move (const MbVector3D &, MbRegTransform *=nullptr) override |
| | Move an object along a vector. More...
|
| |
| void | Rotate (const MbAxis3D &, double angle, MbRegTransform *=nullptr) override |
| | Rotate an object around an axis at a given angle. More...
|
| |
| void | GetProperties (MbProperties &) override |
| | Outstanding properties of the object. More...
|
| |
| void | SetProperties (const MbProperties &) override |
| | Change the properties of an object. More...
|
| |
|
double | GetTMin () const override |
| | Get the minimum value of parameter.
|
| |
|
double | GetTMax () const override |
| | Get the maximum value of parameter.
|
| |
| void | PointOn (double &, MbCartPoint3D &) const override |
| | Calculate a point on the curve. More...
|
| |
|
void | FirstDer (double &, MbVector3D &) const override |
| | Calculate first derivative.
|
| |
|
void | SecondDer (double &, MbVector3D &) const override |
| | Calculate second derivative.
|
| |
|
void | ThirdDer (double &, MbVector3D &) const override |
| | Calculate third derivative.
|
| |
| void | Explore (double &t, bool ext, MbCartPoint3D &pnt, MbVector3D &fir, MbVector3D *sec, MbVector3D *thir) const override |
| | Calculate point and derivatives of object for given parameter. More...
|
| |
|
void | FourDer (double &, MbVector3D &) const |
| | Estimate the fourth derivative.
|
| |
| MbNurbs3D * | NurbsCurve (const MbCurveIntoNurbsInfo &) const override |
| | Construct a NURBS copy of a curve. More...
|
| |
| MbCurve3D * | NurbsCurve (const MbNurbsParameters &) const override |
| | Construct a NURBS copy of a curve. More...
|
| |
|
void | Inverse (MbRegTransform *iReg=nullptr) override |
| | Change direction of a curve.
|
| |
|
size_t | GetCount () const override |
| | Define the number of splittings for one passage in operations.
|
| |
|
bool | IsDegenerate (double eps=METRIC_PRECISION) const override |
| | Check whether the curve is degenerated.calculate.
|
| |
| MbCurve3D * | Trimmed (double t1, double t2, int sense, const MbDimAccuracy &xyzEps, bool saveParamLenAndLaw) const override |
| | Construct a trimmed curve with the given two-dimensional accuracy. More...
|
| |
| MbCurve * | GetMap (const MbMatrix3D &, MbRect1D *pRgn=nullptr, VERSION version=Math::DefaultMathVersion(), bool *coincParams=nullptr) const override |
| | Construct a planar projection of a piece of a space curve. More...
|
| |
|
bool | IsPlanar (double accuracy=METRIC_EPSILON) const override |
| | Is a curve planar?
|
| |
|
bool | GetPlacement (MbPlacement3D &place, PlanarCheckParams params=PlanarCheckParams()) const override |
| | Fill the placement if a curve is planar.
|
| |
| bool | GetPlaneCurve (MbCurve *&curve2d, MbPlacement3D &place, bool saveParams, PlanarCheckParams params=PlanarCheckParams()) const override |
| | Get planar curve and placement if the space curve is planar. More...
|
| |
|
double | CalculateMetricLength () const override |
| | Calculate the metric length of a curve.
|
| |
| bool | DistanceAlong (double &t, double len, int curveDir, double eps=Math::metricPrecision, VERSION version=Math::DefaultMathVersion()) const override |
| | Translate parameter along the curve. More...
|
| |
|
void | GetAnalyticalFunctionsBounds (std::vector< double > ¶ms) const override |
| | Get the boundaries of the curve sections that are described by one analytical function.
|
| |
| double | Step (double t, double sag) const override |
| | Calculate parameter step. More...
|
| |
| double | DeviationStep (double t, double angle) const override |
| | Calculate parameter step. More...
|
| |
|
void | GetVectorList (SArray< MbVector3D > &vectors) const |
| | Second derivatives at control points.
|
| |
|
ptrdiff_t | GetTListCount () const |
| | The number of parameters in knots.
|
| |
|
void | GetTList (SArray< double > ¶ms) const |
| | Parameters in knots.
|
| |
|
ptrdiff_t | GetUppParam () const |
| | The number of segments.
|
| |
| virtual MbCurve3D * | Trimmed (double t1, double t2, int sense, bool saveParamLenAndLaw=false) const |
| | Construct a trimmed curve. More...
|
| |
| virtual MbCurve3D * | Trimmed (double t1, double t2, int sense, const MbDimAccuracy &xyzEps, bool saveParamLenAndLaw) const |
| | Construct a trimmed curve with the given two-dimensional accuracy. More...
|
| |
|
MbeSpaceType | Type () const override |
| | Get the group object type.
|
| |
| void | AddYourGabaritTo (MbCube &) const override |
| | Expand sent bounding box (a.k.a. gabarit), so that it included the object. More...
|
| |
| void | PrepareIntegralData (const bool forced) const override |
| | Calculate temporary (mutable) data of an object. More...
|
| |
|
void | GetBasisItems (RPArray< MbSpaceItem > &) override |
| | Outstanding reference objects in a container sent.
|
| |
|
void | GetBasisPoints (MbControlData3D &) const override |
| | Get control points of object.
|
| |
|
void | SetBasisPoints (const MbControlData3D &) override |
| | Change the object by control points.
|
| |
|
void | Refresh () override |
| | Translate all the time (mutable) data objects in an inconsistent (initial) state.
|
| |
| bool | IsClosed () const override |
| | Define whether the curve is periodic. More...
|
| |
|
double | GetMetricLength () const override |
| | Calculate the metric length of a curve.
|
| |
| double | GetLengthEvaluation () const override |
| | Calculate the metric length of a curve. More...
|
| |
|
bool | IsPlanar (double accuracy=METRIC_EPSILON) const override |
| | Is a curve planar?
|
| |
|
bool | GetPlacement (MbPlacement3D &place, PlanarCheckParams params=PlanarCheckParams()) const override |
| | Fill the placement if a curve is planar.
|
| |
|
size_t | GetCount () const override |
| | Define the number of splittings for one passage in operations.
|
| |
|
template<class PointsVector > |
| void | GetPoints (PointsVector &pnts) const |
| | Get array of control points.
|
| |
|
template<class SegmentsVector > |
| void | GetLineSegments (SegmentsVector &segments, double eps=PARAM_REGION) const |
| | Get the array of segments.
|
| |
|
virtual | ~MbCurve3D () |
| | Destructor.
|
| |
|
virtual void | Accept (Visitor &visitor) |
| | Implementation of a function initializing a visit of an object.
|
| |
| virtual MbResultType | Extend (const MbCurveExtensionParameters3D ¶meters, c3d::SpaceCurveSPtr &resCurve) const |
| | Extend the curve. More...
|
| |
|
size_t | size () const |
| | Size of curve interpreted as vector of curves.
|
| |
|
const MbCurve3D * | operator[] (size_t) const |
| | An access operator.
|
| |
|
MbeSpaceType | Type () const override |
| | Get the group object type.
|
| |
|
MbeSpaceType | Family () const override |
| | Get family of objects.
|
| |
|
virtual MbCurve3D & | InverseDuplicate () const |
| | Create a copy with changed direction.
|
| |
| double | DistanceToPoint (const MbCartPoint3D &) const override |
| | Determine the distance to the point. More...
|
| |
| void | AddYourGabaritTo (MbCube &) const override |
| | Expand sent bounding box (a.k.a. gabarit), so that it included the object. More...
|
| |
|
void | Refresh () override |
| | Translate all the time (mutable) data objects in an inconsistent (initial) state.
|
| |
|
virtual bool | IsSpaceSame (const MbSpaceItem &item, double eps=METRIC_REGION) const |
| | Are the objects identical in space?
|
| |
|
virtual double | GetPeriod () const |
| | Return period. If a curve is not periodic then 0.
|
| |
| virtual bool | IsPeriodic () const |
| | Define whether the curve is periodic. More...
|
| |
| bool | IsTouch (double eps=Math::metricPrecision) const |
| | Determine whether a curve is closed regardless of the smoothness of the closure. More...
|
| |
|
virtual void | Tangent (double &t, MbVector3D &) const |
| | Calculate tangent vector (normalized).
|
| |
|
virtual void | Normal (double &t, MbVector3D &) const |
| | Calculate main normal vector.
|
| |
|
virtual void | BNormal (double &t, MbVector3D &) const |
| | Calculate binormal vector.
|
| |
| virtual void | _PointOn (double t, MbCartPoint3D &p) const |
| | Calculate point at curve and its extension. More...
|
| |
|
virtual void | _FirstDer (double t, MbVector3D &) const |
| | Calculate first derivative at curve and its extension.
|
| |
|
virtual void | _SecondDer (double t, MbVector3D &) const |
| | Calculate second derivative at curve and its extension.
|
| |
|
virtual void | _ThirdDer (double t, MbVector3D &) const |
| | Calculate third derivative at curve and its extension.
|
| |
|
virtual void | _Tangent (double t, MbVector3D &) const |
| | Calculate tangent vector (normalized) at curve and its extension.
|
| |
|
virtual void | _Normal (double t, MbVector3D &) const |
| | Calculate main normal vector (normalized) at curve and its extension.
|
| |
|
virtual void | _BNormal (double t, MbVector3D &) const |
| | Calculate binormal vector (normalized) at curve and its extension.
|
| |
| virtual void | FastApproxExplore (double &t, MbCartPoint3D &pnt, MbVector3D &fir, MbVector3D *sec) const |
| | Calculate point and derivatives on the curve. More...
|
| |
| virtual double | MetricStep (double t, double length) const |
| | Calculate parameter step. More...
|
| |
| double | CurveStep (const double &t, const MbStepData &stepData) const |
| | Calculate parameter step. More...
|
| |
|
virtual void | ResetTCalc () const |
| | Reset the current value of parameter.
|
| |
|
virtual const MbCurve3D & | GetBasisCurve () const |
| | Returns the base curve if exists or itself.
|
| |
|
virtual MbCurve3D & | SetBasisCurve () |
| | Returns the base curve if exists or itself.
|
| |
|
virtual double | Curvature (double t) const |
| | Calculate curvature of curve.
|
| |
|
virtual void | ThirdMetricDer (double t, MbVector3D &vect) const |
| | Calculate second derivative of tangent.
|
| |
| MbNurbs3D * | NurbsCurve (const MbCurveIntoNurbsInfo *nInfo=nullptr) const |
| | Construct a NURBS copy of a curve. More...
|
| |
| virtual size_t | NurbsCurveMinPoints (const MbNurbsParameters &tParameters, double epsilon=c3d::METRIC_DELTA) const |
| | Define the number of knots of a NURBS curve which is required to approximate the curve with the given tolerance. More...
|
| |
| virtual MbCurve3D * | Trimmed (double t1, double t2, int sense, bool saveParamLenAndLaw=false) const |
| | Construct a trimmed curve. More...
|
| |
|
double | GetParamLength () const |
| | Return the parametric length of a curve.
|
| |
| virtual double | CalculateLength (double t1, double t2) const |
| | Calculate the metric length of a curve. More...
|
| |
|
virtual void | CalculateGabarit (MbCube &cube) const |
| | Calculate bounding box of a curve.
|
| |
| void | CalculateLocalGabarit (const MbMatrix3D &into, MbCube &cube) const override |
| | To compute bounding box in a local coordinate system. More...
|
| |
|
virtual bool | IsStraight (bool ignoreParams=false) const |
| | Whether the line is straight?
|
| |
| virtual bool | IsSmoothConnected (double angleEps, bool ignoreLimits=false) const |
| | Define whether joints of contour/curve are smooth. More...
|
| |
|
virtual void | ChangeCarrier (const MbSpaceItem &item, MbSpaceItem &init) |
| | Change the carrier. For surface curves.
|
| |
| virtual bool | ChangeCarrierBorne (const MbSpaceItem &item, MbSpaceItem &init, const MbMatrix &matr) |
| | Change the carrier. More...
|
| |
|
MbProperty & | CreateProperty (MbePrompt name) const override |
| | Create your own property with the name.
|
| |
| void | CalculateMesh (const MbStepData &stepData, const MbFormNote ¬e, MbMesh &mesh) const override |
| | Build polygonal copy mesh. More...
|
| |
| virtual void | CalculatePolygon (const MbStepData &stepData, MbPolygon3D &polygon) const |
| | Calculate an array of points for drawing. More...
|
| |
|
virtual void | GetCentre (MbCartPoint3D &) const |
| | Give the curve center.
|
| |
|
virtual void | GetWeightCentre (MbCartPoint3D &) const |
| | Give the gravity center of a curve.
|
| |
| virtual MbeNewtonResult | PointProjectionNewton (const MbCartPoint3D &p, size_t iterLimit, double &t, bool ext) const |
| | Find the point projection to the curve. More...
|
| |
| virtual bool | NearPointProjection (const MbCartPoint3D &pnt, double &t, bool ext, MbRect1D *tRange=nullptr) const |
| | Find the point projection to the curve. More...
|
| |
| virtual MbeNewtonResult | IsoclinalNewton (const MbVector3D &dir, size_t iterLimit, double &t) const |
| | Find isoclines of a curve. More...
|
| |
| virtual void | GetIsoclinal (const MbVector3D &nor, SArray< double > &tIso) const |
| | Find all isoclines of a curve. More...
|
| |
|
virtual double | DistanceToCurve (const MbCurve3D &curve2, double &t1, double &t2) const |
| | Calculate the nearest distance to a curve.
|
| |
|
virtual double | DistanceToPlace (const MbPlacement3D &place, double &t0, double &angle) const |
| | The nearest point of a curve by the placement.
|
| |
| virtual double | GetRadius (double accuracy=METRIC_REGION) const |
| | Get the physical radius of the curve or zero if it impossible. More...
|
| |
| virtual bool | GetCircleAxis (MbAxis3D &axis) const |
| | Get an axis of a circle which is geometrically coincident to the given curve. More...
|
| |
| virtual MbCurve * | GetMapPsp (const MbMatrix3D &into, double zNear, MbRect1D *pRegion=nullptr) const |
| | Construct a planar projection of a piece of a space curve. More...
|
| |
| virtual MbCurve * | GetProjection (const MbPlacement3D &place, VERSION version) const |
| | Construct a planar projection of a space curve to a plane. More...
|
| |
|
void | GetPointsByEvenParamDelta (size_t n, std::vector< MbCartPoint3D > &pnts) const |
| | Get n points of a curve with equal intervals by parameter.
|
| |
|
void | GetPointsByEvenParamDelta (size_t n, SArray< MbCartPoint3D > &pnts) const |
| |
|
virtual void | GetPointsByEvenLengthDelta (size_t n, std::vector< MbCartPoint3D > &pnts) const |
| | Get n points of a curve with equal intervals by arc length.
|
| |
|
void | GetPointsByEvenLengthDelta (size_t n, SArray< MbCartPoint3D > &pnts) const |
| |
|
void | GetBasisPoints (MbControlData3D &) const override |
| | Get control points of object.
|
| |
|
void | SetBasisPoints (const MbControlData3D &) override |
| | Change the object by control points.
|
| |
| virtual bool | IsContinuousDerivative (bool &contLength, bool &contDirect, c3d::DoubleVector *params=nullptr, double epsilon=EPSILON) const |
| | Have the first derivative of the curve the continuous length and direction? More...
|
| |
| virtual bool | SetContinuousDerivativeLength (VERSION version, double epsilon=EPSILON) |
| | Eliminate the discontinuities of the first derivative at length. More...
|
| |
| bool | IsSpaceNear (const MbCurve3D &curve, double eps, bool ext, double devSag=5.0 *Math::deviateSag) const |
| | Check whether the two curves are metrically close. More...
|
| |
|
bool | IsPointOn (const MbCartPoint3D &, double eps=METRIC_PRECISION) const |
| | Check whether a point is on a curve or not.
|
| |
|
double | GetTMid () const |
| | Return the middle of parametric range of a curve.
|
| |
|
double | GetTRange () const |
| | Return the parametric length of a curve.
|
| |
|
MbCartPoint3D | PointOn (double &t) const |
| | Calculate point on the curve.
|
| |
|
MbVector3D | FirstDer (double &t) const |
| | Calculate first derivative.
|
| |
|
MbVector3D | SecondDer (double &t) const |
| | Calculate second derivative.
|
| |
|
MbVector3D | ThirdDer (double &t) const |
| | Calculate third derivative.
|
| |
| virtual void | GetCurvatureSpecialPoints (std::vector< c3d::DoublePair > &points, double *energy=nullptr) const |
| | Find all the special points of the curvature function of the curve. More...
|
| |
|
virtual void | BreakPoints (std::vector< double > &vBreaks, double precision=ANGLE_REGION) const |
| | \ ru Определение точек излома кривой. The determination of curve smoothness break points.
|
| |
| MbCartPoint3D | GetLimitPoint (ptrdiff_t number) const |
| | Calculate the boundary point. More...
|
| |
| void | GetLimitPoint (ptrdiff_t number, MbCartPoint3D &pnt) const |
| | Calculate the boundary point. More...
|
| |
| MbVector3D | GetLimitTangent (ptrdiff_t number) const |
| | Calculate a tangent vector to the boundary point. More...
|
| |
| void | GetLimitTangent (ptrdiff_t number, MbVector3D &v) const |
| | Calculate a tangent vector to the boundary point. More...
|
| |
| bool | AreLimitPointsEqual () const |
| | Are boundary points equal? More...
|
| |
|
bool | SetInParamRegion (double &t) const |
| | Move to the parametric region.
|
| |
|
bool | IsParamOn (double t, double eps) const |
| | Check whether a parameter is in the range of the curve.
|
| |
|
bool | IsInverseSame (const MbCurve3D &curve, double accuracy=LENGTH_EPSILON) const |
| | Whether an inversed curve is the same.
|
| |
| virtual bool | IsReparamSame (const MbCurve3D &curve, double &factor) const |
| | Define whether a reparameterized curve is the same. More...
|
| |
|
virtual double | GetParamToUnit () const |
| | Get increment of parameter, corresponding to the unit length in space.
|
| |
|
virtual double | GetParamToUnit (double t) const |
| | Get increment of parameter, corresponding to the unit length in space.
|
| |
|
double | GetTEpsilon () const |
| | Get the minimum distinguishable value of parameter.
|
| |
|
double | GetTEpsilon (double t) const |
| | Get the minimum distinguishable value of parameter.
|
| |
|
double | GetTRegion () const |
| | Get the minimum distinguishable value of parameter.
|
| |
|
double | GetTRegion (double t) const |
| | Get the minimum distinguishable value of parameter.
|
| |
|
double | GetTRegion (double t, const MbDimAccuracy &xyzEps) const |
| | Get the minimum distinguishable value of parameter with the given three-dimensional accuracy according to parameter.
|
| |
|
virtual const MbCurve3D & | GetSubstrate () const |
| | Get a substrate or itself.
|
| |
|
virtual MbCurve3D & | SetSubstrate () |
| | Get a substrate or itself.
|
| |
|
virtual int | SubstrateCurveDirection () const |
| | Direction of a substrate relative to a curve or vice versa.
|
| |
|
virtual void | SubstrateToCurve (double &) const |
| | Transform a substrate parameter to the curve parameter.
|
| |
|
virtual void | CurveToSubstrate (double &) const |
| | Transform a curve parameter to the substrate parameter.
|
| |
| bool | GetPlaneCurve (SPtr< MbCurve > &curve2d, MbPlacement3D &place, bool saveParams, PlanarCheckParams params=PlanarCheckParams()) const |
| | Get planar curve and placement if the space curve is planar. More...
|
| |
| bool | GetPlaneCurve (SPtr< const MbCurve > &curve2d, MbPlacement3D &place, bool saveParams, PlanarCheckParams params=PlanarCheckParams()) const |
| | Get planar curve and placement if the space curve is planar. More...
|
| |
|
virtual bool | GetSurfaceCurve (MbCurve *&curve2d, MbSurface *&surface, VERSION version=Math::DefaultMathVersion()) const |
| | Get surface curve if the space curve is surface (after the using call DeleteItem for arguments)
|
| |
|
bool | GetSurfaceCurve (SPtr< MbCurve > &curve2d, SPtr< MbSurface > &surface, VERSION version=Math::DefaultMathVersion()) const |
| | Get surface curve if the space curve is surface (after the using call DeleteItem for arguments)
|
| |
|
bool | GetSurfaceCurve (SPtr< const MbCurve > &curve2d, SPtr< const MbSurface > &surface, VERSION version=Math::DefaultMathVersion()) const |
| | Get surface curve if the space curve is surface (after the using call DeleteItem for arguments)
|
| |
|
virtual bool | IsShift (const MbSpaceItem &, MbVector3D &, bool &isSame, double accuracy=LENGTH_EPSILON) const |
| | Is the object is a shift?
|
| |
|
virtual bool | IsSimilarToCurve (const MbCurve3D &other, double precision=METRIC_PRECISION) const |
| | Whether the curves to union (joining) are similar.
|
| |
|
void | CalculateGrid (double radius, const MbStepData &stepData, MbMesh &mesh) const |
| | Approximation of a curve by the flat tube with the given radius.
|
| |
|
SimpleName | GetCurveName () const |
| | A curve name.
|
| |
|
void | SetCurveName (SimpleName newName) |
| | Set a curve name.
|
| |
|
virtual | ~MbSpaceItem () |
| | Destructor.
|
| |
| void | PrepareWrite () const |
| | Register object. More...
|
| |
|
MbeRefType | RefType () const override |
| | Get a registration type (for copying, duplication).
|
| |
|
bool | IsFamilyRegistrable () const override |
| | Whether the object belongs to a registrable family.
|
| |
| virtual bool | IsSimilar (const MbSpaceItem &item) const |
| | Determine whether an object is similar. More...
|
| |
|
void | CalculateWire (const MbStepData &stepData, MbMesh &mesh) const |
| |
|
void | CalculateWire (double sag, MbMesh &mesh) const |
| |
|
| TapeBase (RegistrableRec regs=noRegistrable) |
| | Constructor.
|
| |
|
| TapeBase (const TapeBase &) |
| | Copy-constructor.
|
| |
|
virtual | ~TapeBase () |
| | Destructor.
|
| |
|
RegistrableRec | GetRegistrable () const |
| | Whether the stream class is registrable.
|
| |
|
void | SetRegistrable (RegistrableRec regs=registrable) const |
| | Set the state of registration of the stream class.
|
| |
|
virtual const char * | GetPureName (const VersionContainer &) const |
| | Get the class name.
|
| |
|
void | AddRegistrator (MbRegDuplicate *reg) const |
| | Add the register.
|
| |
|
void | RemoveRegistrator (MbRegDuplicate *reg) const |
| | Remove the register.
|
| |
|
refcount_t | GetUseCount () const |
| | Get count of references (get count of owners of an object).
|
| |
|
refcount_t | AddRef () const |
| | Increase count of references by one.
|
| |
|
refcount_t | DecRef () const |
| | Decrease count of references by one.
|
| |
|
refcount_t | Release () const |
| | Decrease count of references by one and if count of references became zero, then remove itself.
|
| |
|
void | Lock () const |
| | Switch lock on (locking happens only in parallel region).
|
| |
|
void | Unlock () const |
| | Switch lock off if locking has been set.
|
| |
|
CommonRecursiveMutex * | GetLock () const |
| | Get a pointer to the mutex object. Return nullptr if no parallelism. For use in ScopedLock.
|
| |