File indexing completed on 2025-01-18 10:03:01
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Blend_Point_HeaderFile
0018 #define _Blend_Point_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <gp_Pnt.hxx>
0025 #include <gp_Vec.hxx>
0026 #include <Standard_Boolean.hxx>
0027 #include <gp_Vec2d.hxx>
0028 class gp_Vec2d;
0029
0030
0031
0032 class Blend_Point
0033 {
0034 public:
0035
0036 DEFINE_STANDARD_ALLOC
0037
0038
0039 Standard_EXPORT Blend_Point();
0040
0041
0042 Standard_EXPORT Blend_Point(const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const gp_Vec& Tg1, const gp_Vec& Tg2, const gp_Vec2d& Tg12d, const gp_Vec2d& Tg22d);
0043
0044
0045 Standard_EXPORT Blend_Point(const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2);
0046
0047
0048 Standard_EXPORT Blend_Point(const gp_Pnt& Pts, const gp_Pnt& Ptc, const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W, const gp_Vec& Tgs, const gp_Vec& Tgc, const gp_Vec2d& Tg2d);
0049
0050
0051 Standard_EXPORT Blend_Point(const gp_Pnt& Pts, const gp_Pnt& Ptc, const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W);
0052
0053
0054
0055 Standard_EXPORT Blend_Point(const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC, const gp_Vec& Tg1, const gp_Vec& Tg2, const gp_Vec2d& Tg12d, const gp_Vec2d& Tg22d);
0056
0057
0058
0059 Standard_EXPORT Blend_Point(const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC);
0060
0061
0062 Standard_EXPORT Blend_Point(const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC1, const Standard_Real PC2, const gp_Vec& Tg1, const gp_Vec& Tg2, const gp_Vec2d& Tg12d, const gp_Vec2d& Tg22d);
0063
0064
0065 Standard_EXPORT Blend_Point(const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC1, const Standard_Real PC2);
0066
0067
0068 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const gp_Vec& Tg1, const gp_Vec& Tg2, const gp_Vec2d& Tg12d, const gp_Vec2d& Tg22d);
0069
0070
0071 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2);
0072
0073
0074
0075 Standard_EXPORT void SetValue (const gp_Pnt& Pts, const gp_Pnt& Ptc, const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W, const gp_Vec& Tgs, const gp_Vec& Tgc, const gp_Vec2d& Tg2d);
0076
0077
0078
0079 Standard_EXPORT void SetValue (const gp_Pnt& Pts, const gp_Pnt& Ptc, const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W);
0080
0081
0082
0083 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC, const gp_Vec& Tg1, const gp_Vec& Tg2, const gp_Vec2d& Tg12d, const gp_Vec2d& Tg22d);
0084
0085
0086
0087 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC);
0088
0089
0090 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC1, const Standard_Real PC2, const gp_Vec& Tg1, const gp_Vec& Tg2, const gp_Vec2d& Tg12d, const gp_Vec2d& Tg22d);
0091
0092
0093 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real PC1, const Standard_Real PC2);
0094
0095
0096 Standard_EXPORT void SetValue (const gp_Pnt& Pt1, const gp_Pnt& Pt2, const Standard_Real Param, const Standard_Real PC1, const Standard_Real PC2);
0097
0098
0099 void SetParameter (const Standard_Real Param);
0100
0101 Standard_Real Parameter() const;
0102
0103
0104
0105 Standard_Boolean IsTangencyPoint() const;
0106
0107 const gp_Pnt& PointOnS1() const;
0108
0109 const gp_Pnt& PointOnS2() const;
0110
0111 void ParametersOnS1 (Standard_Real& U, Standard_Real& V) const;
0112
0113 void ParametersOnS2 (Standard_Real& U, Standard_Real& V) const;
0114
0115 const gp_Vec& TangentOnS1() const;
0116
0117 const gp_Vec& TangentOnS2() const;
0118
0119 gp_Vec2d Tangent2dOnS1() const;
0120
0121 gp_Vec2d Tangent2dOnS2() const;
0122
0123 const gp_Pnt& PointOnS() const;
0124
0125 const gp_Pnt& PointOnC() const;
0126
0127 void ParametersOnS (Standard_Real& U, Standard_Real& V) const;
0128
0129 Standard_Real ParameterOnC() const;
0130
0131 const gp_Vec& TangentOnS() const;
0132
0133 const gp_Vec& TangentOnC() const;
0134
0135 gp_Vec2d Tangent2d() const;
0136
0137 const gp_Pnt& PointOnC1() const;
0138
0139 const gp_Pnt& PointOnC2() const;
0140
0141 Standard_Real ParameterOnC1() const;
0142
0143 Standard_Real ParameterOnC2() const;
0144
0145 const gp_Vec& TangentOnC1() const;
0146
0147 const gp_Vec& TangentOnC2() const;
0148
0149
0150
0151
0152 protected:
0153
0154
0155
0156
0157
0158 private:
0159
0160
0161
0162 gp_Pnt pt1;
0163 gp_Pnt pt2;
0164 gp_Vec tg1;
0165 gp_Vec tg2;
0166 Standard_Real prm;
0167 Standard_Real u1;
0168 Standard_Real v1;
0169 Standard_Real u2;
0170 Standard_Real v2;
0171 Standard_Real pc1;
0172 Standard_Real pc2;
0173 Standard_Real utg12d;
0174 Standard_Real vtg12d;
0175 Standard_Real utg22d;
0176 Standard_Real vtg22d;
0177 Standard_Boolean hass1;
0178 Standard_Boolean hass2;
0179 Standard_Boolean hasc1;
0180 Standard_Boolean hasc2;
0181 Standard_Boolean istgt;
0182
0183
0184 };
0185
0186
0187 #include <Blend_Point.lxx>
0188
0189
0190
0191
0192
0193 #endif