Warning, file /include/opencascade/LProp3d_SLProps.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _LProp3d_SLProps_HeaderFile
0017 #define _LProp3d_SLProps_HeaderFile
0018
0019 #include <Adaptor3d_Surface.hxx>
0020 #include <LProp_Status.hxx>
0021
0022 class LProp3d_SLProps
0023 {
0024 public:
0025
0026 DEFINE_STANDARD_ALLOC
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039 Standard_EXPORT LProp3d_SLProps(const Handle(Adaptor3d_Surface)& S, const Standard_Real U, const Standard_Real V, const Standard_Integer N, const Standard_Real Resolution);
0040
0041
0042
0043 Standard_EXPORT LProp3d_SLProps(const Handle(Adaptor3d_Surface)& S, const Standard_Integer N, const Standard_Real Resolution);
0044
0045
0046
0047
0048 Standard_EXPORT LProp3d_SLProps(const Standard_Integer N, const Standard_Real Resolution);
0049
0050
0051
0052 Standard_EXPORT void SetSurface (const Handle(Adaptor3d_Surface)& S);
0053
0054
0055
0056 Standard_EXPORT void SetParameters (const Standard_Real U, const Standard_Real V);
0057
0058
0059 Standard_EXPORT const gp_Pnt& Value() const;
0060
0061
0062
0063 Standard_EXPORT const gp_Vec& D1U();
0064
0065
0066
0067 Standard_EXPORT const gp_Vec& D1V();
0068
0069
0070
0071 Standard_EXPORT const gp_Vec& D2U();
0072
0073
0074
0075 Standard_EXPORT const gp_Vec& D2V();
0076
0077
0078
0079 Standard_EXPORT const gp_Vec& DUV();
0080
0081
0082
0083
0084 Standard_EXPORT Standard_Boolean IsTangentUDefined();
0085
0086
0087 Standard_EXPORT void TangentU (gp_Dir& D);
0088
0089
0090
0091
0092 Standard_EXPORT Standard_Boolean IsTangentVDefined();
0093
0094
0095 Standard_EXPORT void TangentV (gp_Dir& D);
0096
0097
0098 Standard_EXPORT Standard_Boolean IsNormalDefined();
0099
0100
0101 Standard_EXPORT const gp_Dir& Normal();
0102
0103
0104 Standard_EXPORT Standard_Boolean IsCurvatureDefined();
0105
0106
0107
0108 Standard_EXPORT Standard_Boolean IsUmbilic();
0109
0110
0111 Standard_EXPORT Standard_Real MaxCurvature();
0112
0113
0114 Standard_EXPORT Standard_Real MinCurvature();
0115
0116
0117
0118 Standard_EXPORT void CurvatureDirections (gp_Dir& MaxD, gp_Dir& MinD);
0119
0120
0121 Standard_EXPORT Standard_Real MeanCurvature();
0122
0123
0124 Standard_EXPORT Standard_Real GaussianCurvature();
0125
0126 private:
0127
0128 Handle(Adaptor3d_Surface) mySurf;
0129 Standard_Real myU;
0130 Standard_Real myV;
0131 Standard_Integer myDerOrder;
0132 Standard_Integer myCN;
0133 Standard_Real myLinTol;
0134 gp_Pnt myPnt;
0135 gp_Vec myD1u;
0136 gp_Vec myD1v;
0137 gp_Vec myD2u;
0138 gp_Vec myD2v;
0139 gp_Vec myDuv;
0140 gp_Dir myNormal;
0141 Standard_Real myMinCurv;
0142 Standard_Real myMaxCurv;
0143 gp_Dir myDirMinCurv;
0144 gp_Dir myDirMaxCurv;
0145 Standard_Real myMeanCurv;
0146 Standard_Real myGausCurv;
0147 Standard_Integer mySignificantFirstDerivativeOrderU;
0148 Standard_Integer mySignificantFirstDerivativeOrderV;
0149 LProp_Status myUTangentStatus;
0150 LProp_Status myVTangentStatus;
0151 LProp_Status myNormalStatus;
0152 LProp_Status myCurvatureStatus;
0153
0154 };
0155
0156 #endif