1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
|
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _BRepBlend_SurfCurvConstRadInv_HeaderFile
#define _BRepBlend_SurfCurvConstRadInv_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>
#include <Handle_Adaptor3d_HSurface.hxx>
#include <Handle_Adaptor3d_HCurve.hxx>
#include <Handle_Adaptor2d_HCurve2d.hxx>
#include <Standard_Real.hxx>
#include <Standard_Integer.hxx>
#include <Blend_SurfCurvFuncInv.hxx>
#include <Standard_Boolean.hxx>
#include <math_Vector.hxx>
class Adaptor3d_HSurface;
class Adaptor3d_HCurve;
class Adaptor2d_HCurve2d;
class math_Matrix;
//! Function of reframing between a restriction surface of the
//! surface and a curve.
//! Class used to compute a solution of the
//! surfRstConstRad problem on a done restriction of the
//! surface.
//! The vector <X> used in Value, Values and Derivatives
//! methods has to be the vector of the parametric
//! coordinates wguide, wcurv, wrst where wguide is the
//! parameter on the guide line, wcurv is the parameter on
//! the curve, wrst is the parameter on the restriction on
//! the surface.
class BRepBlend_SurfCurvConstRadInv : public Blend_SurfCurvFuncInv
{
public:
DEFINE_STANDARD_ALLOC
Standard_EXPORT BRepBlend_SurfCurvConstRadInv(const Handle(Adaptor3d_HSurface)& S, const Handle(Adaptor3d_HCurve)& C, const Handle(Adaptor3d_HCurve)& Cg);
Standard_EXPORT void Set (const Standard_Real R, const Standard_Integer Choix) ;
//! returns 3.
Standard_EXPORT Standard_Integer NbEquations() const;
//! computes the values <F> of the Functions for the
//! variable <X>.
//! Returns True if the computation was done successfully,
//! False otherwise.
Standard_EXPORT Standard_Boolean Value (const math_Vector& X, math_Vector& F) ;
//! returns the values <D> of the derivatives for the
//! variable <X>.
//! Returns True if the computation was done successfully,
//! False otherwise.
Standard_EXPORT Standard_Boolean Derivatives (const math_Vector& X, math_Matrix& D) ;
//! returns the values <F> of the functions and the derivatives
//! <D> for the variable <X>.
//! Returns True if the computation was done successfully,
//! False otherwise.
Standard_EXPORT Standard_Boolean Values (const math_Vector& X, math_Vector& F, math_Matrix& D) ;
//! Set the restriction on which a solution has to be found.
Standard_EXPORT void Set (const Handle(Adaptor2d_HCurve2d)& Rst) ;
//! Returns in the vector Tolerance the parametric tolerance
//! for each of the 3 variables;
//! Tol is the tolerance used in 3d space.
Standard_EXPORT void GetTolerance (math_Vector& Tolerance, const Standard_Real Tol) const;
//! Returns in the vector InfBound the lowest values allowed
//! for each of the 3 variables.
//! Returns in the vector SupBound the greatest values allowed
//! for each of the 3 variables.
Standard_EXPORT void GetBounds (math_Vector& InfBound, math_Vector& SupBound) const;
//! Returns Standard_True if Sol is a zero of the function.
//! Tol is the tolerance used in 3d space.
Standard_EXPORT Standard_Boolean IsSolution (const math_Vector& Sol, const Standard_Real Tol) ;
protected:
private:
Handle(Adaptor3d_HSurface) surf;
Handle(Adaptor3d_HCurve) curv;
Handle(Adaptor3d_HCurve) guide;
Handle(Adaptor2d_HCurve2d) rst;
Standard_Real ray;
Standard_Integer choix;
};
#endif // _BRepBlend_SurfCurvConstRadInv_HeaderFile
|