Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
ProjLib_CompProjectedCurve Class Reference

#include <ProjLib_CompProjectedCurve.hxx>

Inheritance diagram for ProjLib_CompProjectedCurve:
Inheritance graph
[legend]

Public Member Functions

DEFINE_STANDARD_ALLOC 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 (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 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.

void Load (const Handle< Adaptor3d_HSurface > &S)
 Changes the surface.

void Load (const Handle< Adaptor3d_HCurve > &C)
 Changes the curve.

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

void Bounds (const Standard_Integer Index, Standard_Real &Udeb, Standard_Real &Ufin) const
 returns the bounds of the continuous part corresponding to Index

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

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

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

gp_Pnt2d Value (const Standard_Real U) const
 Computes the point of parameter U on the curve.

void D0 (const Standard_Real U, gp_Pnt2d &P) const
 Computes the point of parameter U on the curve.

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.

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.

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.

Standard_Real FirstParameter () const
 Returns the first parameter of the curve C
which has a projection on S.

Standard_Real LastParameter () const
 Returns the last parameter of the curve C
which has a projection on S.

Standard_Integer NbIntervals (const GeomAbs_Shape S) const
 Returns the number of intervals which define
an S continuous part of the projected curve

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>

void Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const
 Returns the parameters corresponding to
S discontinuities.

The array must provide enough room to accomodate
for the parameters. i.e. T.Length() > NbIntervals()

Standard_Real MaxDistance (const Standard_Integer Index) const
 returns the maximum distance between
curve to project and surface

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.


Constructor & Destructor Documentation


Member Function Documentation

Reimplemented from Adaptor2d_Curve2d.

void ProjLib_CompProjectedCurve::D1 ( const Standard_Real  U,
gp_Pnt2d P,
gp_Vec2d V 
) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

void ProjLib_CompProjectedCurve::D2 ( const Standard_Real  U,
gp_Pnt2d P,
gp_Vec2d V1,
gp_Vec2d V2 
) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

Reimplemented from Adaptor2d_Curve2d.

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

Reimplemented from Adaptor2d_Curve2d.

Reimplemented from Adaptor2d_Curve2d.

Reimplemented from Adaptor2d_Curve2d.

Reimplemented from Adaptor2d_Curve2d.

Handle_Adaptor2d_HCurve2d ProjLib_CompProjectedCurve::Trim ( const Standard_Real  FirstParam,
const Standard_Real  LastParam,
const Standard_Real  Tol 
) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

Reimplemented from Adaptor2d_Curve2d.


The documentation for this class was generated from the following file: