File indexing completed on 2026-07-11 08:20:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _AdvApp2Var_Iso_HeaderFile
0018 #define _AdvApp2Var_Iso_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <GeomAbs_IsoType.hxx>
0025 #include <Standard_Real.hxx>
0026 #include <Standard_Integer.hxx>
0027 #include <Standard_Boolean.hxx>
0028 #include <TColStd_HArray1OfReal.hxx>
0029 #include <TColStd_HArray2OfReal.hxx>
0030 #include <AdvApp2Var_EvaluatorFunc2Var.hxx>
0031 class AdvApp2Var_Context;
0032 class AdvApp2Var_Node;
0033
0034
0035 class AdvApp2Var_Iso : public Standard_Transient
0036 {
0037 DEFINE_STANDARD_RTTIEXT(AdvApp2Var_Iso, Standard_Transient)
0038 public:
0039 Standard_EXPORT AdvApp2Var_Iso();
0040
0041 Standard_EXPORT AdvApp2Var_Iso(const GeomAbs_IsoType type,
0042 const Standard_Integer iu,
0043 const Standard_Integer iv);
0044
0045 Standard_EXPORT AdvApp2Var_Iso(const GeomAbs_IsoType type,
0046 const Standard_Real cte,
0047 const Standard_Real Ufirst,
0048 const Standard_Real Ulast,
0049 const Standard_Real Vfirst,
0050 const Standard_Real Vlast,
0051 const Standard_Integer pos,
0052 const Standard_Integer iu,
0053 const Standard_Integer iv);
0054
0055 Standard_EXPORT Standard_Boolean IsApproximated() const;
0056
0057 Standard_EXPORT Standard_Boolean HasResult() const;
0058
0059 Standard_EXPORT void MakeApprox(const AdvApp2Var_Context& Conditions,
0060 const Standard_Real a,
0061 const Standard_Real b,
0062 const Standard_Real c,
0063 const Standard_Real d,
0064 const AdvApp2Var_EvaluatorFunc2Var& func,
0065 AdvApp2Var_Node& NodeBegin,
0066 AdvApp2Var_Node& NodeEnd);
0067
0068 Standard_EXPORT void ChangeDomain(const Standard_Real a, const Standard_Real b);
0069
0070 Standard_EXPORT void ChangeDomain(const Standard_Real a,
0071 const Standard_Real b,
0072 const Standard_Real c,
0073 const Standard_Real d);
0074
0075 Standard_EXPORT void SetConstante(const Standard_Real newcte);
0076
0077 Standard_EXPORT void SetPosition(const Standard_Integer newpos);
0078
0079 Standard_EXPORT void ResetApprox();
0080
0081 Standard_EXPORT void OverwriteApprox();
0082
0083 Standard_EXPORT GeomAbs_IsoType Type() const;
0084
0085 Standard_EXPORT Standard_Real Constante() const;
0086
0087 Standard_EXPORT Standard_Real T0() const;
0088
0089 Standard_EXPORT Standard_Real T1() const;
0090
0091 Standard_EXPORT Standard_Real U0() const;
0092
0093 Standard_EXPORT Standard_Real U1() const;
0094
0095 Standard_EXPORT Standard_Real V0() const;
0096
0097 Standard_EXPORT Standard_Real V1() const;
0098
0099 Standard_EXPORT Standard_Integer UOrder() const;
0100
0101 Standard_EXPORT Standard_Integer VOrder() const;
0102
0103 Standard_EXPORT Standard_Integer Position() const;
0104
0105 Standard_EXPORT Standard_Integer NbCoeff() const;
0106
0107 Standard_EXPORT const Handle(TColStd_HArray1OfReal)& Polynom() const;
0108
0109 Standard_EXPORT Handle(TColStd_HArray1OfReal) SomTab() const;
0110
0111 Standard_EXPORT Handle(TColStd_HArray1OfReal) DifTab() const;
0112
0113 Standard_EXPORT Handle(TColStd_HArray2OfReal) MaxErrors() const;
0114
0115 Standard_EXPORT Handle(TColStd_HArray2OfReal) MoyErrors() const;
0116
0117 private:
0118 AdvApp2Var_Iso(const AdvApp2Var_Iso& Other);
0119 AdvApp2Var_Iso& operator=(const AdvApp2Var_Iso& theOther);
0120
0121 private:
0122 GeomAbs_IsoType myType;
0123 Standard_Real myConstPar;
0124 Standard_Real myU0;
0125 Standard_Real myU1;
0126 Standard_Real myV0;
0127 Standard_Real myV1;
0128 Standard_Integer myPosition;
0129 Standard_Integer myExtremOrder;
0130 Standard_Integer myDerivOrder;
0131 Standard_Integer myNbCoeff;
0132 Standard_Boolean myApprIsDone;
0133 Standard_Boolean myHasResult;
0134 Handle(TColStd_HArray1OfReal) myEquation;
0135 Handle(TColStd_HArray2OfReal) myMaxErrors;
0136 Handle(TColStd_HArray2OfReal) myMoyErrors;
0137 Handle(TColStd_HArray1OfReal) mySomTab;
0138 Handle(TColStd_HArray1OfReal) myDifTab;
0139 };
0140
0141 #endif