File indexing completed on 2026-09-29 09:18:37
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _DrawTrSurf_Curve_HeaderFile
0018 #define _DrawTrSurf_Curve_HeaderFile
0019
0020 #include <Draw_Color.hxx>
0021 #include <DrawTrSurf_Drawable.hxx>
0022 #include <Draw_Interpretor.hxx>
0023
0024 class Geom_Curve;
0025 class Draw_Display;
0026
0027
0028 class DrawTrSurf_Curve : public DrawTrSurf_Drawable
0029 {
0030 DEFINE_STANDARD_RTTIEXT(DrawTrSurf_Curve, DrawTrSurf_Drawable)
0031 Draw_Drawable3D_FACTORY
0032 public:
0033
0034 Standard_EXPORT DrawTrSurf_Curve(const occ::handle<Geom_Curve>& C, const bool DispOrigin = true);
0035
0036 Standard_EXPORT DrawTrSurf_Curve(const occ::handle<Geom_Curve>& C,
0037 const Draw_Color& aColor,
0038 const int Discret,
0039 const double Deflection,
0040 const int DrawMode,
0041 const bool DispOrigin = true,
0042 const bool DispCurvRadius = false,
0043 const double RadiusMax = 1.0e3,
0044 const double RatioOfRadius = 0.1);
0045
0046 Standard_EXPORT void DrawOn(Draw_Display& dis) const override;
0047
0048 occ::handle<Geom_Curve> GetCurve() const { return curv; }
0049
0050 void SetColor(const Draw_Color& theColor) { look = theColor; }
0051
0052 bool DisplayOrigin() const { return disporigin; }
0053
0054 void DisplayOrigin(const bool V) { disporigin = V; }
0055
0056 void ShowCurvature() { dispcurvradius = true; }
0057
0058 void ClearCurvature() { dispcurvradius = false; }
0059
0060 void SetRadiusMax(const double theRadius) { radiusmax = theRadius; }
0061
0062 void SetRadiusRatio(const double theRatio) { radiusratio = theRatio; }
0063
0064 Draw_Color Color() const { return look; }
0065
0066 double RadiusMax() const { return radiusmax; }
0067
0068 double RadiusRatio() const { return radiusratio; }
0069
0070
0071 Standard_EXPORT occ::handle<Draw_Drawable3D> Copy() const override;
0072
0073
0074 Standard_EXPORT void Dump(Standard_OStream& S) const override;
0075
0076
0077 Standard_EXPORT void Save(Standard_OStream& theStream) const override;
0078
0079
0080 Standard_EXPORT void Whatis(Draw_Interpretor& I) const override;
0081
0082 protected:
0083 occ::handle<Geom_Curve> curv;
0084 Draw_Color look;
0085 bool disporigin;
0086 bool dispcurvradius;
0087 double radiusmax;
0088 double radiusratio;
0089 };
0090
0091 #endif