File indexing completed on 2026-07-03 08:33:46
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Prs3d_ArrowAspect_HeaderFile
0018 #define _Prs3d_ArrowAspect_HeaderFile
0019
0020 #include <Graphic3d_AspectLine3d.hxx>
0021 #include <Prs3d_BasicAspect.hxx>
0022
0023
0024 class Prs3d_ArrowAspect : public Prs3d_BasicAspect
0025 {
0026 DEFINE_STANDARD_RTTIEXT(Prs3d_ArrowAspect, Prs3d_BasicAspect)
0027 public:
0028
0029
0030
0031
0032 Standard_EXPORT Prs3d_ArrowAspect();
0033
0034
0035
0036
0037 Standard_EXPORT Prs3d_ArrowAspect(const Standard_Real anAngle, const Standard_Real aLength);
0038
0039 Standard_EXPORT Prs3d_ArrowAspect(const Handle(Graphic3d_AspectLine3d)& theAspect);
0040
0041
0042 Standard_EXPORT void SetAngle(const Standard_Real anAngle);
0043
0044
0045 Standard_Real Angle() const { return myAngle; }
0046
0047
0048 void SetLength(const Standard_Real theLength) { myLength = theLength; }
0049
0050
0051 Standard_Real Length() const { return myLength; }
0052
0053
0054 void SetZoomable(bool theIsZoomable) { myIsZoomable = theIsZoomable; }
0055
0056
0057 bool IsZoomable() const { return myIsZoomable; }
0058
0059 void SetColor(const Quantity_Color& theColor) { myArrowAspect->SetColor(theColor); }
0060
0061 const Handle(Graphic3d_AspectLine3d)& Aspect() const { return myArrowAspect; }
0062
0063 void SetAspect(const Handle(Graphic3d_AspectLine3d)& theAspect) { myArrowAspect = theAspect; }
0064
0065
0066 Standard_EXPORT virtual void DumpJson(Standard_OStream& theOStream,
0067 Standard_Integer theDepth = -1) const Standard_OVERRIDE;
0068
0069 protected:
0070 Handle(Graphic3d_AspectLine3d) myArrowAspect;
0071 Standard_Real myAngle;
0072 Standard_Real myLength;
0073 Standard_Boolean myIsZoomable;
0074 };
0075
0076 DEFINE_STANDARD_HANDLE(Prs3d_ArrowAspect, Prs3d_BasicAspect)
0077
0078 #endif