Analyzing tool for 2d or 3d curve. Computes parameters of projected point onto a curve.
More...
|
Standard_Real | Project (const Handle< Geom_Curve > &C3D, const gp_Pnt &P3D, const Standard_Real preci, gp_Pnt &proj, Standard_Real ¶m, const Standard_Boolean AdjustToEnds=Standard_True) const |
| Projects a Point on a Curve. Computes the projected point and its parameter on the curve. <preci> is used as 3d precision (hence, 0 will produce reject unless exact confusion). The number of iterations is limited. If AdjustToEnds is True, point will be adjusted to the end of the curve if distance is less than <preci>
|
|
Standard_Real | Project (const Adaptor3d_Curve &C3D, const gp_Pnt &P3D, const Standard_Real preci, gp_Pnt &proj, Standard_Real ¶m, const Standard_Boolean AdjustToEnds=Standard_True) const |
| Projects a Point on a Curve. Computes the projected point and its parameter on the curve. <preci> is used as 3d precision (hence, 0 will produce reject unless exact confusion). The number of iterations is limited.
|
|
Standard_Real | Project (const Handle< Geom_Curve > &C3D, const gp_Pnt &P3D, const Standard_Real preci, gp_Pnt &proj, Standard_Real ¶m, const Standard_Real cf, const Standard_Real cl, const Standard_Boolean AdjustToEnds=Standard_True) const |
| Projects a Point on a Curve, but parameters are limited between <cf> and <cl>. The range [cf, cl] is extended with help of Adaptor3d on the basis of 3d precision <preci>. If AdjustToEnds is True, point will be adjusted to the end of the curve if distance is less than <preci>
|
|
Standard_Real | ProjectAct (const Adaptor3d_Curve &C3D, const gp_Pnt &P3D, const Standard_Real preci, gp_Pnt &proj, Standard_Real ¶m) const |
|
Standard_Real | NextProject (const Standard_Real paramPrev, const Handle< Geom_Curve > &C3D, const gp_Pnt &P3D, const Standard_Real preci, gp_Pnt &proj, Standard_Real ¶m, const Standard_Real cf, const Standard_Real cl, const Standard_Boolean AdjustToEnds=Standard_True) const |
| Projects a Point on a Curve using Newton method. <paramPrev> is taken as the first approximation of solution. If Newton algorithm fails the method Project() is used. If AdjustToEnds is True, point will be adjusted to the end of the curve if distance is less than <preci>
|
|
Standard_Real | NextProject (const Standard_Real paramPrev, const Adaptor3d_Curve &C3D, const gp_Pnt &P3D, const Standard_Real preci, gp_Pnt &proj, Standard_Real ¶m) const |
| Projects a Point on a Curve using Newton method. <paramPrev> is taken as the first approximation of solution. If Newton algorithm fails the method Project() is used.
|
|
Standard_Boolean | ValidateRange (const Handle< Geom_Curve > &Crv, Standard_Real &First, Standard_Real &Last, const Standard_Real prec) const |
| Validate parameters First and Last for the given curve in order to make them valid for creation of edge. This includes:
|
|
void | FillBndBox (const Handle< Geom2d_Curve > &C2d, const Standard_Real First, const Standard_Real Last, const Standard_Integer NPoints, const Standard_Boolean Exact, Bnd_Box2d &Box) const |
| Computes a boundary box on segment of curve C2d from First to Last. This is done by taking NPoints points from the curve and, if Exact is True, by searching for exact extrema. All these points are added to Box.
|
|
Standard_Integer | SelectForwardSeam (const Handle< Geom2d_Curve > &C1, const Handle< Geom2d_Curve > &C2) const |
| Defines which pcurve (C1 or C2) should be chosen for FORWARD seam edge.
|
|
|
static Standard_Boolean | IsPlanar (const TColgp_Array1OfPnt &pnts, gp_XYZ &Normal, const Standard_Real preci=0) |
| Checks if points are planar with given preci. If Normal has not zero modulus, checks with given normal.
|
|
static Standard_Boolean | IsPlanar (const Handle< Geom_Curve > &curve, gp_XYZ &Normal, const Standard_Real preci=0) |
| Checks if curve is planar with given preci. If Normal has not zero modulus, checks with given normal.
|
|
static Standard_Boolean | GetSamplePoints (const Handle< Geom2d_Curve > &curve, const Standard_Real first, const Standard_Real last, TColgp_SequenceOfPnt2d &seq) |
| Returns sample points which will serve as linearisation of the2d curve in range (first, last) The distribution of sample points is consystent with what is used by BRepTopAdaptor_FClass2d.
|
|
static Standard_Boolean | GetSamplePoints (const Handle< Geom_Curve > &curve, const Standard_Real first, const Standard_Real last, TColgp_SequenceOfPnt &seq) |
| Returns sample points which will serve as linearisation of the curve in range (first, last)
|
|
static Standard_Boolean | IsClosed (const Handle< Geom_Curve > &curve, const Standard_Real preci=-1) |
| Tells if the Curve is closed with given precision. If <preci> < 0 then Precision::Confusion is used.
|
|
static Standard_Boolean | IsPeriodic (const Handle< Geom_Curve > &curve) |
| This method was implemented as fix for changes in trimmed curve behaviour. For the moment trimmed curve returns false anyway. So it is necessary to adapt all Data exchange tools for this behaviour. Current implementation takes into account that curve may be offset.
|
|
static Standard_Boolean | IsPeriodic (const Handle< Geom2d_Curve > &curve) |
| The same as for Curve3d.
|
|
Analyzing tool for 2d or 3d curve. Computes parameters of projected point onto a curve.