Open CASCADE Technology 6.6.0
Public Member Functions
ProjLib_CompProjectedCurve Class Reference

#include <ProjLib_CompProjectedCurve.hxx>

Inheritance diagram for ProjLib_CompProjectedCurve:
Inheritance graph
[legend]

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

 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

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 
)
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 
)

Member Function Documentation

void ProjLib_CompProjectedCurve::Bounds ( const Standard_Integer  Index,
Standard_Real Udeb,
Standard_Real Ufin 
) const
void ProjLib_CompProjectedCurve::D0 ( const Standard_Real  U,
gp_Pnt2d P 
) const [virtual]

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.

gp_Vec2d ProjLib_CompProjectedCurve::DN ( const Standard_Real  U,
const Standard_Integer  N 
) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

Standard_Real ProjLib_CompProjectedCurve::FirstParameter ( ) const [virtual]

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
GeomAbs_CurveType ProjLib_CompProjectedCurve::GetType ( ) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

void ProjLib_CompProjectedCurve::Init ( )
void ProjLib_CompProjectedCurve::Intervals ( TColStd_Array1OfReal T,
const GeomAbs_Shape  S 
) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

Standard_Boolean ProjLib_CompProjectedCurve::IsSinglePnt ( const Standard_Integer  Index,
gp_Pnt2d P 
) const
Standard_Boolean ProjLib_CompProjectedCurve::IsUIso ( const Standard_Integer  Index,
Standard_Real U 
) const
Standard_Boolean ProjLib_CompProjectedCurve::IsVIso ( const Standard_Integer  Index,
Standard_Real V 
) const
Standard_Real ProjLib_CompProjectedCurve::LastParameter ( ) const [virtual]

Reimplemented from Adaptor2d_Curve2d.

void ProjLib_CompProjectedCurve::Load ( const Handle< Adaptor3d_HCurve > &  C)
void ProjLib_CompProjectedCurve::Load ( const Handle< Adaptor3d_HSurface > &  S)
Standard_Real ProjLib_CompProjectedCurve::MaxDistance ( const Standard_Integer  Index) const
Standard_Integer ProjLib_CompProjectedCurve::NbCurves ( ) const
Standard_Integer ProjLib_CompProjectedCurve::NbIntervals ( const GeomAbs_Shape  S) const [virtual]

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.

gp_Pnt2d ProjLib_CompProjectedCurve::Value ( const Standard_Real  U) const [virtual]

Reimplemented from Adaptor2d_Curve2d.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines