Open CASCADE Technology
6.5.4
|
defines the WINDOW oriented output driver.
Warning: A limited number of mono attribute and translatable BUFFERS can be defined
for retaining a lot of primitives for DRAGGING .
#include <Aspect_WindowDriver.hxx>
Public Member Functions | |
virtual void | BeginDraw (const Standard_Boolean DoubleBuffer=Standard_True, const Standard_Integer aRetainBuffer=0)=0 |
Begin graphics and drawn directly to the Window or Pixmap if | |
virtual Aspect_TypeOfResize | ResizeSpace ()=0 |
Handle_Aspect_Window | Window () const |
virtual void | SetDrawMode (const Aspect_TypeOfDrawMode aMode)=0 |
Change the current drawing mode of the Driver XW_REPLACE : the primitive is drawn with his defined color. XW_ERASE : the primitive is erased from the window. XW_XOR : the primitive is xored to the window. XW_XORLIGHT: the primitive is xored depending of the current highlight and background colors. | |
virtual Standard_Boolean | OpenBuffer (const Standard_Integer aRetainBuffer, const Standard_ShortReal aPivotX=0.0, const Standard_ShortReal aPivotY=0.0, const Standard_Integer aWidthIndex=0, const Standard_Integer aColorIndex=0, const Standard_Integer aFontIndex=0, const Aspect_TypeOfDrawMode aDrawMode=Aspect_TODM_REPLACE)=0 |
Allocate the retain buffer <aRetainBuffer> , Defines the DWU coordinates of the pivot point for all primitives | |
virtual void | CloseBuffer (const Standard_Integer aRetainBuffer) const =0 |
Clear & Deallocate the retain buffer <aRetainBuffer>. | |
virtual void | ClearBuffer (const Standard_Integer aRetainBuffer) const =0 |
Erase & Clear ALL primitives retains in the buffer <aRetainBuffer>. | |
virtual void | DrawBuffer (const Standard_Integer aRetainBuffer) const =0 |
Draw ALL primitives retains in the buffer <aRetainBuffer>. Warning: Note that the aspect of a retain buffer drawing is mono-colored with the current buffer Attributes and Depending of the DoubleBuffer state flag at the BeginDraw() buffer time, when DB is TRUE,an XOR method is use for drawing and erasing buffers in the same way.In this case,some color side effect can occurs depending of the traversal primitive colors and the supported hardware. when DB is FALSE and the background drawing has been generated with DB at TRUE,no color side effect occurs because the DB is used for restoring the drawing context at EraseBuffer() time,this is more powerfull for the drawing quality excepted for large buffers (flicking) . | |
virtual void | EraseBuffer (const Standard_Integer aRetainBuffer) const =0 |
Erase ALL primitives retains in the buffer <aRetainBuffer>. | |
virtual void | MoveBuffer (const Standard_Integer aRetainBuffer, const Standard_ShortReal aPivotX=0.0, const Standard_ShortReal aPivotY=0.0) const =0 |
Erase , Translate and reDraw ALL primitives retains in the buffer | |
virtual void | ScaleBuffer (const Standard_Integer aRetainBuffer, const Quantity_Factor aScaleX=1.0, const Quantity_Factor aScaleY=1.0) const =0 |
Erase , Scale the buffer from the Pivot point and reDraw ALL primitives | |
virtual void | RotateBuffer (const Standard_Integer aRetainBuffer, const Quantity_PlaneAngle anAngle=0.0) const =0 |
Erase , Rotate the buffer from the Pivot point and reDraw ALL primitives | |
virtual Standard_Boolean | BufferIsOpen (const Standard_Integer aRetainBuffer) const =0 |
Returns TRUE if the retain buffer <aRetainBuffer> is enabled | |
virtual Standard_Boolean | BufferIsEmpty (const Standard_Integer aRetainBuffer) const =0 |
Returns TRUE if the retain buffer has not been opened or empty. Returns FALSE if a lot of primitives have been stored inside because a BeginDraw(..,<aRetainBuffer>) has been done previously. | |
virtual Standard_Boolean | BufferIsDrawn (const Standard_Integer aRetainBuffer) const =0 |
Returns TRUE if the retain buffer s actually displayed at screen. | |
virtual void | AngleOfBuffer (const Standard_Integer aRetainBuffer, Quantity_PlaneAngle &anAngle) const =0 |
Returns the current buffer rotate angle from the X axis. | |
virtual void | ScaleOfBuffer (const Standard_Integer aRetainBuffer, Quantity_Factor &aScaleX, Quantity_Factor &aScaleY) const =0 |
Returns the current buffer scale factors. | |
virtual void | PositionOfBuffer (const Standard_Integer aRetainBuffer, Standard_ShortReal &aPivotX, Standard_ShortReal &aPivotY) const =0 |
Returns the current buffer position. | |
virtual void | TextSize (const TCollection_ExtendedString &aText, Standard_ShortReal &aWidth, Standard_ShortReal &aHeight, const Standard_Integer aFontIndex=-1) const =0 |
Returns the TEXT size in DWU space depending of the required FontIndex if aFontIndex is >= 0 or the current FontIndex if < 0 (default). | |
virtual void | TextSize (const TCollection_ExtendedString &aText, Standard_ShortReal &aWidth, Standard_ShortReal &aHeight, Standard_ShortReal &anXoffset, Standard_ShortReal &anYoffset, const Standard_Integer aFontIndex=-1) const =0 |
Returns the TEXT size and offsets in DWU space depending of the required FontIndex if aFontIndex is >= 0 or the current FontIndex if < 0 (default). | |
virtual Standard_CString | FontSize (Quantity_PlaneAngle &aSlant, Standard_ShortReal &aSize, Standard_ShortReal &aBheight, const Standard_Integer aFontIndex=-1) const =0 |
Returns the font string,slant,size and | |
virtual void | ColorBoundIndexs (Standard_Integer &aMinIndex, Standard_Integer &aMaxIndex) const =0 |
Returns the min and max driver virtual color indexs. | |
virtual Standard_Integer | LocalColorIndex (const Standard_Integer anIndex) const =0 |
Returns the local colormap hardware index from a virtual driver color index or returns -1 if the index is not defined. | |
virtual void | FontBoundIndexs (Standard_Integer &aMinIndex, Standard_Integer &aMaxIndex) const =0 |
Returns the min and max driver virtual font indexs. | |
virtual Standard_Integer | LocalFontIndex (const Standard_Integer anIndex) const =0 |
Returns the associated fontmap hardware index from a virtual driver font index or returns -1 if the index is not defined. | |
virtual void | TypeBoundIndexs (Standard_Integer &aMinIndex, Standard_Integer &aMaxIndex) const =0 |
Returns the min and max driver virtual type indexs. | |
virtual Standard_Integer | LocalTypeIndex (const Standard_Integer anIndex) const =0 |
Returns the associated typemap hardware index from a virtual driver type index or returns -1 if the index is not defined. | |
virtual void | WidthBoundIndexs (Standard_Integer &aMinIndex, Standard_Integer &aMaxIndex) const =0 |
Returns the min and max driver virtual width indexs. | |
virtual Standard_Integer | LocalWidthIndex (const Standard_Integer anIndex) const =0 |
Returns the associated widthmap hardware index from a virtual driver width index or returns -1 if the index is not defined. | |
virtual void | MarkBoundIndexs (Standard_Integer &aMinIndex, Standard_Integer &aMaxIndex) const =0 |
Returns the min and max driver virtual marker indexs. | |
virtual Standard_Integer | LocalMarkIndex (const Standard_Integer anIndex) const =0 |
Returns the local markmap hardware index from a virtual driver marker index or returns -1 if the index is not defined. | |
Protected Member Functions | |
Aspect_WindowDriver (const Handle< Aspect_Window > &aWindow) | |
Protected Attributes | |
Handle_Aspect_Window | MyWindow |
Aspect_TypeOfDrawMode | MyDrawMode |
Standard_Integer | MyRetainBuffer |
Aspect_WindowDriver::Aspect_WindowDriver | ( | const Handle< Aspect_Window > & | aWindow | ) | [protected] |
virtual void Aspect_WindowDriver::AngleOfBuffer | ( | const Standard_Integer | aRetainBuffer, |
Quantity_PlaneAngle & | anAngle | ||
) | const [pure virtual] |
Implemented in Xw_Driver, and WNT_WDriver.
virtual void Aspect_WindowDriver::BeginDraw | ( | const Standard_Boolean | DoubleBuffer = Standard_True , |
const Standard_Integer | aRetainBuffer = 0 |
||
) | [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Boolean Aspect_WindowDriver::BufferIsDrawn | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in Xw_Driver, and WNT_WDriver.
virtual Standard_Boolean Aspect_WindowDriver::BufferIsEmpty | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in Xw_Driver, and WNT_WDriver.
virtual Standard_Boolean Aspect_WindowDriver::BufferIsOpen | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in Xw_Driver, and WNT_WDriver.
virtual void Aspect_WindowDriver::ClearBuffer | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::CloseBuffer | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::ColorBoundIndexs | ( | Standard_Integer & | aMinIndex, |
Standard_Integer & | aMaxIndex | ||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::DrawBuffer | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::EraseBuffer | ( | const Standard_Integer | aRetainBuffer | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::FontBoundIndexs | ( | Standard_Integer & | aMinIndex, |
Standard_Integer & | aMaxIndex | ||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_CString Aspect_WindowDriver::FontSize | ( | Quantity_PlaneAngle & | aSlant, |
Standard_ShortReal & | aSize, | ||
Standard_ShortReal & | aBheight, | ||
const Standard_Integer | aFontIndex = -1 |
||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Integer Aspect_WindowDriver::LocalColorIndex | ( | const Standard_Integer | anIndex | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Integer Aspect_WindowDriver::LocalFontIndex | ( | const Standard_Integer | anIndex | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Integer Aspect_WindowDriver::LocalMarkIndex | ( | const Standard_Integer | anIndex | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Integer Aspect_WindowDriver::LocalTypeIndex | ( | const Standard_Integer | anIndex | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Integer Aspect_WindowDriver::LocalWidthIndex | ( | const Standard_Integer | anIndex | ) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::MarkBoundIndexs | ( | Standard_Integer & | aMinIndex, |
Standard_Integer & | aMaxIndex | ||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::MoveBuffer | ( | const Standard_Integer | aRetainBuffer, |
const Standard_ShortReal | aPivotX = 0.0 , |
||
const Standard_ShortReal | aPivotY = 0.0 |
||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual Standard_Boolean Aspect_WindowDriver::OpenBuffer | ( | const Standard_Integer | aRetainBuffer, |
const Standard_ShortReal | aPivotX = 0.0 , |
||
const Standard_ShortReal | aPivotY = 0.0 , |
||
const Standard_Integer | aWidthIndex = 0 , |
||
const Standard_Integer | aColorIndex = 0 , |
||
const Standard_Integer | aFontIndex = 0 , |
||
const Aspect_TypeOfDrawMode | aDrawMode = Aspect_TODM_REPLACE |
||
) | [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::PositionOfBuffer | ( | const Standard_Integer | aRetainBuffer, |
Standard_ShortReal & | aPivotX, | ||
Standard_ShortReal & | aPivotY | ||
) | const [pure virtual] |
Implemented in Xw_Driver, and WNT_WDriver.
virtual Aspect_TypeOfResize Aspect_WindowDriver::ResizeSpace | ( | ) | [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::RotateBuffer | ( | const Standard_Integer | aRetainBuffer, |
const Quantity_PlaneAngle | anAngle = 0.0 |
||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::ScaleBuffer | ( | const Standard_Integer | aRetainBuffer, |
const Quantity_Factor | aScaleX = 1.0 , |
||
const Quantity_Factor | aScaleY = 1.0 |
||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::ScaleOfBuffer | ( | const Standard_Integer | aRetainBuffer, |
Quantity_Factor & | aScaleX, | ||
Quantity_Factor & | aScaleY | ||
) | const [pure virtual] |
Implemented in Xw_Driver, and WNT_WDriver.
virtual void Aspect_WindowDriver::SetDrawMode | ( | const Aspect_TypeOfDrawMode | aMode | ) | [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::TextSize | ( | const TCollection_ExtendedString & | aText, |
Standard_ShortReal & | aWidth, | ||
Standard_ShortReal & | aHeight, | ||
const Standard_Integer | aFontIndex = -1 |
||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::TextSize | ( | const TCollection_ExtendedString & | aText, |
Standard_ShortReal & | aWidth, | ||
Standard_ShortReal & | aHeight, | ||
Standard_ShortReal & | anXoffset, | ||
Standard_ShortReal & | anYoffset, | ||
const Standard_Integer | aFontIndex = -1 |
||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::TypeBoundIndexs | ( | Standard_Integer & | aMinIndex, |
Standard_Integer & | aMaxIndex | ||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
virtual void Aspect_WindowDriver::WidthBoundIndexs | ( | Standard_Integer & | aMinIndex, |
Standard_Integer & | aMaxIndex | ||
) | const [pure virtual] |
Implemented in WNT_WDriver, and Xw_Driver.
Handle_Aspect_Window Aspect_WindowDriver::Window | ( | ) | const |
Aspect_TypeOfDrawMode Aspect_WindowDriver::MyDrawMode [protected] |
Standard_Integer Aspect_WindowDriver::MyRetainBuffer [protected] |
Handle_Aspect_Window Aspect_WindowDriver::MyWindow [protected] |