// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _Graphic2d_ImageFile_HeaderFile #define _Graphic2d_ImageFile_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_Graphic2d_ImageFile_HeaderFile #include #endif #ifndef _OSD_File_HeaderFile #include #endif #ifndef _TCollection_AsciiString_HeaderFile #include #endif #ifndef _Standard_ShortReal_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Aspect_CardinalPoints_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Graphic2d_Primitive_HeaderFile #include #endif #ifndef _Handle_Graphic2d_GraphicObject_HeaderFile #include #endif #ifndef _Quantity_Length_HeaderFile #include #endif #ifndef _Quantity_Factor_HeaderFile #include #endif #ifndef _Handle_Graphic2d_Drawer_HeaderFile #include #endif #ifndef _Standard_Address_HeaderFile #include #endif #ifndef _Aspect_FStream_HeaderFile #include #endif class Graphic2d_ImageDefinitionError; class Graphic2d_GraphicObject; class OSD_File; class Graphic2d_Drawer; //! The primitive ImageFile
class Graphic2d_ImageFile : public Graphic2d_Primitive { public: //! Defines an image with its center location;
//! , defines the position in the space model.
//! , defines an offset in the device space.
//! defines a scale factor applied to the
//! original size of the image.
//! The image will be placed at this offset
//! according to the type of placement.
Standard_EXPORT Graphic2d_ImageFile(const Handle(Graphic2d_GraphicObject)& aGraphicObject,OSD_File& aFile,const Quantity_Length X,const Quantity_Length Y,const Quantity_Length adx = 0.0,const Quantity_Length ady = 0.0,const Aspect_CardinalPoints aTypeOfPlacement = Aspect_CP_Center,const Quantity_Factor aScale = 1.0); //! Modifies the center location of the image .
Standard_EXPORT void SetCenter(const Quantity_Length X,const Quantity_Length Y) ; //! Modifies the offset of the image .
Standard_EXPORT void SetOffset(const Quantity_Length dx,const Quantity_Length dy) ; //! Modifies the type of placement of the image .
Standard_EXPORT void SetPlacement(const Aspect_CardinalPoints aPlacement) ; //! Modifies the center location of the image
//! by translating it.
Standard_EXPORT void Translate(const Quantity_Length DX,const Quantity_Length DY) ; //! Changes the scale factor of the image.
Standard_EXPORT void SetScale(const Quantity_Factor aScale) ; //! The image follows the scale factor of the view
//! if the flag is Standard_True.
Standard_EXPORT void SetZoomable(const Standard_Boolean aFlag = Standard_False) ; //! Clear the reference to this imagefile if something
//! inside have changed,Forced the reload of this at Draw()
//! time.
Standard_EXPORT void Clear() ; //! Returns the original scale factor applied to
//! the image .
Standard_EXPORT Quantity_Factor Scale() const; //! Returns Standard_True if the image follows
//! the scale factor of the view.
Standard_EXPORT Standard_Boolean IsZoomable() const; //! returns the position in the space model
Standard_EXPORT void Position(Quantity_Length& X,Quantity_Length& Y) const; //! returns the offset in the device space
Standard_EXPORT void Offset(Quantity_Length& aX,Quantity_Length& aY) const; //! returns the type of placement
Standard_EXPORT Aspect_CardinalPoints Placement() const; //! returns the image file
Standard_EXPORT OSD_File ImageFile() const; //! Returns Standard_True, the Image pixel size
//! and the Image planes depth, if the image file :
//! - is not open
//! - exists
//! - have the extension .xwd
//! NOTE that only XWD image file type are recognized.
Standard_EXPORT static Standard_Boolean Values(OSD_File& aFile,Standard_Integer& aWidth,Standard_Integer& aHeight,Standard_Integer& aDepth) ; //! Swaps long ints
Standard_EXPORT static void SwapLong(const Standard_Address anAddress,const Standard_Integer aNumOfBytes) ; Standard_EXPORT virtual void Save(Aspect_FStream& aFStream) const; DEFINE_STANDARD_RTTI(Graphic2d_ImageFile) protected: //! Draws the image at the required center location
//! defined by the SetCenter method.
Standard_EXPORT void Draw(const Handle(Graphic2d_Drawer)& aDrawer) ; //! Returns Standard_True if the image is picked,
//! Standard_False if not.
Standard_EXPORT Standard_Boolean Pick(const Standard_ShortReal X,const Standard_ShortReal Y,const Standard_ShortReal aPrecision,const Handle(Graphic2d_Drawer)& aDrawer) ; private: //! Evaluates the center of the image in the device space.
//! Called by the methods :
//! - Graphic2d_ImageFile::Draw
//! - Graphic2d_ImageFile::Pick
//! - Graphic2d_ImageFile::FillAndDraw
Standard_EXPORT Standard_Boolean ComputeCenterAndSize(const Handle(Graphic2d_Drawer)& aDrawer,Standard_ShortReal& cx,Standard_ShortReal& cy,Standard_ShortReal& width,Standard_ShortReal& height) ; OSD_File myFile; TCollection_AsciiString myFileName; Standard_ShortReal myX; Standard_ShortReal myY; Standard_ShortReal mydx; Standard_ShortReal mydy; Standard_Integer myWidth; Standard_Integer myHeight; Aspect_CardinalPoints myPlacement; Standard_Boolean myIsZoomable; Standard_ShortReal myScale; Standard_Boolean myIsModified; }; // other Inline functions and methods (like "C++: function call" methods) #endif