OCC Main Page | Visualization | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

Visualization
TKNIS
NIS


NIS_Drawer< A > Class Template Reference

#include <NIS_Drawer.hxx>

Inheritance diagram for NIS_Drawer< A >:

Inheritance graph
[legend]

Public Types

enum  DrawType { Draw_Normal = 0, Draw_Transparent = 1, Draw_Hilighted = 2, Draw_DynHilighted = 3 }

Public Member Functions

 NIS_Drawer ()
virtual Standard_EXPORT ~NIS_Drawer ()
NIS_InteractiveContext * GetContext () const
virtual Standard_EXPORT void Assign (const Handle_NIS_Drawer &theOther)
virtual Standard_EXPORT const
Bnd_B3f & 
GetBox (const NIS_View *pView=0L) const
Standard_EXPORT void SetUpdated (const DrawType theType) const
Standard_EXPORT void SetUpdated (const DrawType theType1, const DrawType theType2) const
Standard_EXPORT void SetUpdated (const DrawType theType1, const DrawType theType2, const DrawType theType3) const
Standard_EXPORT void SetDynamicHilighted (const Standard_Boolean isHilighted, const Handle_NIS_InteractiveObject &theObj, const Handle_NIS_View &theView=0L)
virtual Standard_EXPORT Standard_Integer HashCode (const Standard_Integer theN) const
virtual Standard_EXPORT Standard_Boolean IsEqual (const Handle_NIS_Drawer &theOth) const
TColStd_MapIteratorOfPackedMapOfInteger ObjectIterator () const

Protected Member Functions

virtual Standard_EXPORT void BeforeDraw (const DrawType theType, const NIS_DrawList &theDrawList)
virtual Standard_EXPORT void AfterDraw (const DrawType theType, const NIS_DrawList &theDrawList)
virtual Standard_EXPORT void Draw (const Handle_NIS_InteractiveObject &, const DrawType theType, const NIS_DrawList &theDrawList)=0
virtual Standard_EXPORT void redraw (const DrawType theType, const Handle_NIS_View &theView)
Standard_EXPORT void addObject (const NIS_InteractiveObject *theObj, const Standard_Boolean isUpVws)
Standard_EXPORT void removeObject (const NIS_InteractiveObject *theObj, const Standard_Boolean isUpVws)
virtual Standard_EXPORT NIS_DrawList * createDefaultList (const Handle_NIS_View &) const

Protected Attributes

NCollection_List< NIS_DrawList * > myLists

Private Member Functions

 NIS_Drawer (const NIS_Drawer &theOther)
NIS_Drawer & operator= (const NIS_Drawer &theOther)
void prepareList (const NIS_Drawer::DrawType theType, const NIS_DrawList &theDrawLst)

Private Attributes

NIS_InteractiveContext * myCtx
TColStd_PackedMapOfInteger myMapID
Bnd_B3f myBox

Detailed Description

template<class A>
class NIS_Drawer< A >

Abstract Drawer type


Member Enumeration Documentation

template<class A>
enum NIS_Drawer::DrawType
 

Enumeration values:
Draw_Normal 
Draw_Transparent 
Draw_Hilighted 
Draw_DynHilighted 


Constructor & Destructor Documentation

template<class A>
NIS_Drawer< A >::NIS_Drawer (   )  [inline]
 

Empty constructor.

template<class A>
virtual Standard_EXPORT NIS_Drawer< A >::~NIS_Drawer (   )  [virtual]
 

Destructor.

template<class A>
NIS_Drawer< A >::NIS_Drawer (  const NIS_Drawer< A > &  theOther  )  [private]
 


Member Function Documentation

template<class A>
Standard_EXPORT void NIS_Drawer< A >::addObject (  const NIS_InteractiveObject *  theObj,
const Standard_Boolean  isUpVws
)  [protected]
 

template<class A>
virtual Standard_EXPORT void NIS_Drawer< A >::AfterDraw (  const DrawType  theType,
const NIS_DrawList &  theDrawList
)  [protected, virtual]
 

Called after execution of Draw(), once per group of interactive objects.

Reimplemented in NIS_SurfaceDrawer, and NIS_TriangulatedDrawer.

template<class A>
virtual Standard_EXPORT void NIS_Drawer< A >::Assign (  const Handle_NIS_Drawer< A > &  theOther  )  [virtual]
 

Copy the relevant information from another instance of Drawer. raises exception if theOther has incompatible type (test IsKind).

Reimplemented in NIS_SurfaceDrawer, and NIS_TriangulatedDrawer.

template<class A>
virtual Standard_EXPORT void NIS_Drawer< A >::BeforeDraw (  const DrawType  theType,
const NIS_DrawList &  theDrawList
)  [protected, virtual]
 

Called before execution of Draw(), once per group of interactive objects.

Reimplemented in NIS_SurfaceDrawer, and NIS_TriangulatedDrawer.

template<class A>
virtual Standard_EXPORT NIS_DrawList* NIS_Drawer< A >::createDefaultList (  const Handle_NIS_View &   )  const [protected, virtual]
 

template<class A>
virtual Standard_EXPORT void NIS_Drawer< A >::Draw (  const Handle_NIS_InteractiveObject &  ,
const DrawType  theType,
const NIS_DrawList &  theDrawList
)  [protected, pure virtual]
 

Main function: display the given interactive object in the given view.

Implemented in NIS_SurfaceDrawer, and NIS_TriangulatedDrawer.

template<class A>
virtual Standard_EXPORT const Bnd_B3f& NIS_Drawer< A >::GetBox (  const NIS_View *  pView = 0L  )  const [virtual]
 

Create a3D bounding box of drawn objects.

Parameters:
pView In not NULL, only objects visible in this view are taken.

template<class A>
NIS_InteractiveContext* NIS_Drawer< A >::GetContext (   )  const [inline]
 

Query the Interactive Context.

template<class A>
virtual Standard_EXPORT Standard_Integer NIS_Drawer< A >::HashCode (  const Standard_Integer  theN  )  const [virtual]
 

Hash value, for Map interface.

template<class A>
virtual Standard_EXPORT Standard_Boolean NIS_Drawer< A >::IsEqual (  const Handle_NIS_Drawer< A > &  theOth  )  const [virtual]
 

Matching two instances, for Map interface.

Reimplemented in NIS_SurfaceDrawer, and NIS_TriangulatedDrawer.

template<class A>
TColStd_MapIteratorOfPackedMapOfInteger NIS_Drawer< A >::ObjectIterator (   )  const [inline]
 

Obtain the iterator of IDs of associated objects.

template<class A>
NIS_Drawer& NIS_Drawer< A >::operator= (  const NIS_Drawer< A > &  theOther  )  [private]
 

template<class A>
void NIS_Drawer< A >::prepareList (  const NIS_Drawer< A >::DrawType  theType,
const NIS_DrawList &  theDrawLst
)  [private]
 

template<class A>
virtual Standard_EXPORT void NIS_Drawer< A >::redraw (  const DrawType  theType,
const Handle_NIS_View &  theView
)  [protected, virtual]
 

Reimplemented in NIS_SurfaceDrawer.

template<class A>
Standard_EXPORT void NIS_Drawer< A >::removeObject (  const NIS_InteractiveObject *  theObj,
const Standard_Boolean  isUpVws
)  [protected]
 

template<class A>
Standard_EXPORT void NIS_Drawer< A >::SetDynamicHilighted (  const Standard_Boolean  isHilighted,
const Handle_NIS_InteractiveObject &  theObj,
const Handle_NIS_View &  theView = 0L
) 
 

Switch on/off the dynamic hilight of the given object in the given view.

Parameters:
isHilighted True if the object should be hilighted, False - if not hilighted
theObj Object instance that should be hilighted or unhilighted.
theView View where the status of object must be changed. If NULL, the object is hilighted/unhilighted in all views.

template<class A>
Standard_EXPORT void NIS_Drawer< A >::SetUpdated (  const DrawType  theType1,
const DrawType  theType2,
const DrawType  theType3
)  const
 

template<class A>
Standard_EXPORT void NIS_Drawer< A >::SetUpdated (  const DrawType  theType1,
const DrawType  theType2
)  const
 

template<class A>
Standard_EXPORT void NIS_Drawer< A >::SetUpdated (  const DrawType  theType  )  const
 

Mark all draw lists for update


Field Documentation

template<class A>
Bnd_B3f NIS_Drawer< A >::myBox [private]
 

template<class A>
NIS_InteractiveContext* NIS_Drawer< A >::myCtx [private]
 

template<class A>
NCollection_List<NIS_DrawList*> NIS_Drawer< A >::myLists [protected]
 

template<class A>
TColStd_PackedMapOfInteger NIS_Drawer< A >::myMapID [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:55:53 2008 for OpenCASCADE by  doxygen 1.4.1