1 #ifndef _Sample2D_Image_HeaderFile
2 #define _Sample2D_Image_HeaderFile
3 #include <Standard_Macro.hxx>
4 #include <Standard_DefineHandle.hxx>
6 #include <OSD_File.hxx>
7 #include <Quantity_Length.hxx>
8 #include <Aspect_CardinalPoints.hxx>
9 #include <Quantity_Factor.hxx>
10 #include <Standard_Boolean.hxx>
11 #include <Standard_CString.hxx>
12 #include <Standard_Integer.hxx>
13 #include <Handle_SelectMgr_Selection.hxx>
14 #include <Standard_OStream.hxx>
15 #include <Standard_IStream.hxx>
17 DEFINE_STANDARD_HANDLE(Sample2D_Image,AIS2D_InteractiveObject)
18 class Sample2D_Image : public AIS2D_InteractiveObject {
24 Standard_EXPORT Sample2D_Image(OSD_File& aFile,
25 const Quantity_Length X = 0.0,
26 const Quantity_Length Y = 0.0,
27 const Quantity_Length adx = 0.0,
28 const Quantity_Length ady = 0.0,
29 const Aspect_CardinalPoints aTypeOfPlacement = Aspect_CP_Center,
30 const Quantity_Factor aScale = 1.0);
31 Standard_EXPORT Sample2D_Image(Standard_CString& aFileName,
32 const Quantity_Length X = 0.0,
33 const Quantity_Length Y = 0.0,
34 const Quantity_Length adx = 0.0,
35 const Quantity_Length ady = 0.0,
36 const Aspect_CardinalPoints aTypeOfPlacement = Aspect_CP_Center,
37 const Quantity_Factor aScale = 1.0);
38 Standard_EXPORT inline virtual OSD_File GetFile() const;
39 Standard_EXPORT inline virtual void SetFile(const OSD_File& anImage) ;
40 Standard_EXPORT virtual Standard_CString GetFileName() const;
41 Standard_EXPORT virtual void SetFileName(const Standard_CString anImageName) ;
42 Standard_EXPORT inline virtual void GetCoord(Quantity_Length& X,Quantity_Length& Y) const;
43 Standard_EXPORT inline virtual void SetCoord(const Quantity_Length X,const Quantity_Length Y) ;
44 Standard_EXPORT inline virtual void GetOffset(Quantity_Length& adX,Quantity_Length& adY) const;
45 Standard_EXPORT inline virtual void SetOffset(const Quantity_Length adX,const Quantity_Length adY) ;
46 Standard_EXPORT inline virtual Aspect_CardinalPoints GetTypeOfPlacement() const;
47 Standard_EXPORT inline virtual void SetTypeOfPlacement(const Aspect_CardinalPoints aTypeOfPlacement = Aspect_CP_Center) ;
48 Standard_EXPORT inline Quantity_Factor GetScale() const;
49 Standard_EXPORT inline void SetScale(const Quantity_Factor aNewScale) ;
50 Standard_EXPORT inline Standard_Boolean GetIsZoomable() const;
51 Standard_EXPORT inline void SetIsZoomable(const Standard_Boolean aIsZoomable) ;
53 Standard_EXPORT virtual void SetContext(const Handle(AIS2D_InteractiveContext)& theContext) ;
55 DEFINE_STANDARD_RTTI(Sample2D_Image)
69 Aspect_CardinalPoints myTypeOfPlacement;
70 Quantity_Factor myScale;
71 Standard_Boolean myIsZoomable;
83 // other inline functions and methods (like "C++: function call" methods)
86 inline void Sample2D_Image::GetCoord(Quantity_Length& X, Quantity_Length& Y) const
92 inline void Sample2D_Image::SetCoord(const Quantity_Length X, const Quantity_Length Y)
98 inline OSD_File Sample2D_Image::GetFile() const
103 inline void Sample2D_Image::SetFile(const OSD_File& aFile)
108 inline void Sample2D_Image::GetOffset(Quantity_Length& adX,Quantity_Length& adY) const
114 inline void Sample2D_Image::SetOffset(const Quantity_Length adX,const Quantity_Length adY)
120 inline Aspect_CardinalPoints Sample2D_Image::GetTypeOfPlacement() const
122 return myTypeOfPlacement;
125 inline void Sample2D_Image::SetTypeOfPlacement(const Aspect_CardinalPoints aTypeOfPlacement)
127 myTypeOfPlacement = aTypeOfPlacement;
131 inline Quantity_Factor Sample2D_Image::GetScale() const
136 inline void Sample2D_Image::SetScale(const Quantity_Factor aNewScale)
141 inline Standard_Boolean Sample2D_Image::GetIsZoomable() const
146 inline void Sample2D_Image::SetIsZoomable(const Standard_Boolean aIsZoomable)
148 myIsZoomable = aIsZoomable;