Open CASCADE Technology
6.9.0
|
#include <ProjLib_CompProjectedCurve.hxx>
Public Member Functions | |
ProjLib_CompProjectedCurve () | |
ProjLib_CompProjectedCurve (const Handle< Adaptor3d_HSurface > &S, const Handle< Adaptor3d_HCurve > &C, const Standard_Real TolU, const Standard_Real TolV) | |
try to find all solutions More... | |
ProjLib_CompProjectedCurve (const Handle< Adaptor3d_HSurface > &S, const Handle< Adaptor3d_HCurve > &C, const Standard_Real TolU, const Standard_Real TolV, const Standard_Real MaxDist) | |
this constructor tries to optimize the search using the assamption that maximum distance between surface and curve less or equal then MaxDist. if MaxDist < 0 then algorithm works as above. More... | |
void | Init () |
computes a set of projected point and determine the continuous parts of the projected curves. The points corresponding to a projection on the bounds of the surface are included in this set of points. More... | |
void | Load (const Handle< Adaptor3d_HSurface > &S) |
Changes the surface. More... | |
void | Load (const Handle< Adaptor3d_HCurve > &C) |
Changes the curve. More... | |
const Handle < Adaptor3d_HSurface > & | GetSurface () const |
const Handle< Adaptor3d_HCurve > & | GetCurve () const |
void | GetTolerance (Standard_Real &TolU, Standard_Real &TolV) const |
Standard_Integer | NbCurves () const |
returns the number of continuous part of the projected curve More... | |
void | Bounds (const Standard_Integer Index, Standard_Real &Udeb, Standard_Real &Ufin) const |
returns the bounds of the continuous part corresponding to Index More... | |
Standard_Boolean | IsSinglePnt (const Standard_Integer Index, gp_Pnt2d &P) const |
returns True if part of projection with number Index is a single point and writes its coordinats in P More... | |
Standard_Boolean | IsUIso (const Standard_Integer Index, Standard_Real &U) const |
returns True if part of projection with number Index is an u-isoparametric curve of input surface More... | |
Standard_Boolean | IsVIso (const Standard_Integer Index, Standard_Real &V) const |
returns True if part of projection with number Index is an v-isoparametric curve of input surface More... | |
gp_Pnt2d | Value (const Standard_Real U) const |
Computes the point of parameter U on the curve. More... | |
void | D0 (const Standard_Real U, gp_Pnt2d &P) const |
Computes the point of parameter U on the curve. More... | |
void | D1 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V) const |
Computes the point of parameter U on the curve with its first derivative. Raised if the continuity of the current interval is not C1. More... | |
void | D2 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1, gp_Vec2d &V2) const |
Returns the point P of parameter U, the first and second derivatives V1 and V2. Raised if the continuity of the current interval is not C2. More... | |
gp_Vec2d | DN (const Standard_Real U, const Standard_Integer N) const |
The returned vector gives the value of the derivative for the order of derivation N. Raised if N < 1. Raised if N > 2. More... | |
Standard_Real | FirstParameter () const |
Returns the first parameter of the curve C which has a projection on S. More... | |
Standard_Real | LastParameter () const |
Returns the last parameter of the curve C which has a projection on S. More... | |
Standard_Integer | NbIntervals (const GeomAbs_Shape S) const |
Returns the number of intervals which define an S continuous part of the projected curve. More... | |
Handle< Adaptor2d_HCurve2d > | Trim (const Standard_Real FirstParam, const Standard_Real LastParam, const Standard_Real Tol) const |
Returns a curve equivalent of <me> between parameters <First> and <Last>. <Tol> is used to test for 2d points confusion. If <First> >= <Last> More... | |
void | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const |
Returns the parameters corresponding to S discontinuities. More... | |
Standard_Real | MaxDistance (const Standard_Integer Index) const |
returns the maximum distance between curve to project and surface More... | |
const Handle < ProjLib_HSequenceOfHSequenceOfPnt > & | GetSequence () const |
GeomAbs_CurveType | GetType () const |
Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve. More... | |
Public Member Functions inherited from Adaptor2d_Curve2d | |
virtual GeomAbs_Shape | Continuity () const |
virtual Standard_Boolean | IsClosed () const |
virtual Standard_Boolean | IsPeriodic () const |
virtual Standard_Real | Period () const |
virtual void | D3 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1, gp_Vec2d &V2, gp_Vec2d &V3) const |
Returns the point P of parameter U, the first, the second and the third derivative. Raised if the continuity of the current interval is not C3. More... | |
virtual Standard_Real | Resolution (const Standard_Real R3d) const |
Returns the parametric resolution corresponding to the real space resolution <R3d>. More... | |
virtual gp_Lin2d | Line () const |
virtual gp_Circ2d | Circle () const |
virtual gp_Elips2d | Ellipse () const |
virtual gp_Hypr2d | Hyperbola () const |
virtual gp_Parab2d | Parabola () const |
virtual Standard_Integer | Degree () const |
virtual Standard_Boolean | IsRational () const |
virtual Standard_Integer | NbPoles () const |
virtual Standard_Integer | NbKnots () const |
virtual Standard_Integer | NbSamples () const |
virtual Handle < Geom2d_BezierCurve > | Bezier () const |
virtual Handle < Geom2d_BSplineCurve > | BSpline () const |
virtual | ~Adaptor2d_Curve2d () |
ProjLib_CompProjectedCurve::ProjLib_CompProjectedCurve | ( | ) |
ProjLib_CompProjectedCurve::ProjLib_CompProjectedCurve | ( | const Handle< Adaptor3d_HSurface > & | S, |
const Handle< Adaptor3d_HCurve > & | C, | ||
const Standard_Real | TolU, | ||
const Standard_Real | TolV | ||
) |
try to find all solutions
ProjLib_CompProjectedCurve::ProjLib_CompProjectedCurve | ( | const Handle< Adaptor3d_HSurface > & | S, |
const Handle< Adaptor3d_HCurve > & | C, | ||
const Standard_Real | TolU, | ||
const Standard_Real | TolV, | ||
const Standard_Real | MaxDist | ||
) |
this constructor tries to optimize the search using the assamption that maximum distance between surface and curve less or equal then MaxDist. if MaxDist < 0 then algorithm works as above.
void ProjLib_CompProjectedCurve::Bounds | ( | const Standard_Integer | Index, |
Standard_Real & | Udeb, | ||
Standard_Real & | Ufin | ||
) | const |
returns the bounds of the continuous part corresponding to Index
|
virtual |
Computes the point of parameter U on the curve.
Reimplemented from Adaptor2d_Curve2d.
|
virtual |
Computes the point of parameter U on the curve with its first derivative. Raised if the continuity of the current interval is not C1.
Reimplemented from Adaptor2d_Curve2d.
|
virtual |
Returns the point P of parameter U, the first and second derivatives V1 and V2. Raised if the continuity of the current interval is not C2.
Reimplemented from Adaptor2d_Curve2d.
|
virtual |
The returned vector gives the value of the derivative for the order of derivation N. Raised if N < 1. Raised if N > 2.
Reimplemented from Adaptor2d_Curve2d.
|
virtual |
Returns the first parameter of the curve C which has a projection on S.
Reimplemented from Adaptor2d_Curve2d.
const Handle< Adaptor3d_HCurve >& ProjLib_CompProjectedCurve::GetCurve | ( | ) | const |
const Handle< ProjLib_HSequenceOfHSequenceOfPnt >& ProjLib_CompProjectedCurve::GetSequence | ( | ) | const |
const Handle< Adaptor3d_HSurface >& ProjLib_CompProjectedCurve::GetSurface | ( | ) | const |
void ProjLib_CompProjectedCurve::GetTolerance | ( | Standard_Real & | TolU, |
Standard_Real & | TolV | ||
) | const |
|
virtual |
Returns the type of the curve in the current interval : Line, Circle, Ellipse, Hyperbola, Parabola, BezierCurve, BSplineCurve, OtherCurve.
Reimplemented from Adaptor2d_Curve2d.
void ProjLib_CompProjectedCurve::Init | ( | ) |
computes a set of projected point and determine the continuous parts of the projected curves. The points corresponding to a projection on the bounds of the surface are included in this set of points.
|
virtual |
Returns the parameters corresponding to S discontinuities.
The array must provide enough room to accomodate for the parameters. i.e. T.Length() > NbIntervals()
Reimplemented from Adaptor2d_Curve2d.
Standard_Boolean ProjLib_CompProjectedCurve::IsSinglePnt | ( | const Standard_Integer | Index, |
gp_Pnt2d & | P | ||
) | const |
returns True if part of projection with number Index is a single point and writes its coordinats in P
Standard_Boolean ProjLib_CompProjectedCurve::IsUIso | ( | const Standard_Integer | Index, |
Standard_Real & | U | ||
) | const |
returns True if part of projection with number Index is an u-isoparametric curve of input surface
Standard_Boolean ProjLib_CompProjectedCurve::IsVIso | ( | const Standard_Integer | Index, |
Standard_Real & | V | ||
) | const |
returns True if part of projection with number Index is an v-isoparametric curve of input surface
|
virtual |
Returns the last parameter of the curve C which has a projection on S.
Reimplemented from Adaptor2d_Curve2d.
void ProjLib_CompProjectedCurve::Load | ( | const Handle< Adaptor3d_HSurface > & | S | ) |
Changes the surface.
void ProjLib_CompProjectedCurve::Load | ( | const Handle< Adaptor3d_HCurve > & | C | ) |
Changes the curve.
Standard_Real ProjLib_CompProjectedCurve::MaxDistance | ( | const Standard_Integer | Index | ) | const |
returns the maximum distance between curve to project and surface
Standard_Integer ProjLib_CompProjectedCurve::NbCurves | ( | ) | const |
returns the number of continuous part of the projected curve
|
virtual |
Returns the number of intervals which define an S continuous part of the projected curve.
Reimplemented from Adaptor2d_Curve2d.
|
virtual |
Returns a curve equivalent of <me> between parameters <First> and <Last>. <Tol> is used to test for 2d points confusion. If <First> >= <Last>
Reimplemented from Adaptor2d_Curve2d.
|
virtual |
Computes the point of parameter U on the curve.
Reimplemented from Adaptor2d_Curve2d.