|
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) const |
| Are joints of contour/curve smooth?
|
|
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) 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.
|
|
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.
|
|