Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

InSpace::DrawObj Class Reference

#include <DrawObj.H>

Inherits PropertyChangedNotifier.

Inherited by InSpace::AnimTexPlane, InSpace::DrawPoint, InSpace::GLLine3D, InSpace::GLPtCloud, InSpace::ISMeshObj, InSpace::StatusBar, InSpace::TexPalette, InSpace::TexPlane, and InSpace::WorldRotAxisDrawObj.

List of all members.

Public Member Functions

 DrawObj (str_ptr name, int roomObj=0, int display=1)
virtual ~DrawObj ()
virtual void draw ()
virtual void drawG3D ()
virtual void contextInit ()
str_ptr name ()
void setName (str_ptr n)
virtual void drawWrapper (bool useG3D)
virtual void contextInitWrapper ()
virtual void setDLMode (DL_MODE mode)
virtual void highlight ()
virtual void unhighlight ()
virtual void reColor (const Color c)
virtual void reColor (ColorMap *cm)
virtual void reTexture (str_ptr texname)
virtual int drawInPass (int pass)
virtual Wtransf xform () const
virtual Wtransf trans () const
virtual Wtransf rot () const
virtual Wtransf scale () const
virtual void scaleBy (const double s)
virtual void scaleBy (const Wvec sv)
virtual void transBy (const Wvec v)
virtual void rotBy (const Wtransf m)
virtual void setXform (cWtransf &m, bool propagate=true)
virtual void setTrans (cWtransf &m)
virtual void setRot (cWtransf &m)
virtual void setScale (cWtransf &m)
virtual BBox * bbox ()
virtual int display () const
virtual int displayBBox () const
virtual int selectable () const
virtual int movable () const
virtual int transparent () const
virtual int isRoomObj () const
virtual void show ()
virtual void hide ()
virtual void showBBox ()
virtual void hideBBox ()
virtual void setRoomObj (const int i)
virtual void setSelectable (const int s)
virtual void setMovable (const int m)
virtual void setTransparent (const int t)
virtual void writeVRML (ostream *os)
virtual void writeCPS (ostream *os)
virtual bool isLightOn (const int i) const
virtual void turnOnLight (const int l)
virtual void turnOffLight (const int l)
virtual int pointSelectCoarse (Wpt pw)
virtual int pointSelectCoarse (ROOMpt pr)
virtual int pointSelectFine (Wpt pw)
virtual int pointSelectFine (ROOMpt pr)
virtual int raySelectCoarse (Wpt p, Wvec dir, Wpt &isect_point)
virtual int raySelectFine (Wpt p, Wvec dir, Wpt &isect_point)

Protected Attributes

Wtransf _trans
Wtransf _rot
Wtransf _scale
BBox _bbox
str_ptr _name
int _roomObj
int _display
int _dispBBox
int _selectable
int _movable
int _transparent
DL_MODE _pendingDLMode
isGlContextData< DL_MODE > _dlMode
isGlContextData< GLuint > _dl
bool _useLights [8]


Constructor & Destructor Documentation

InSpace::DrawObj::DrawObj (  str_ptr  name,
int  roomObj = 0,
int  display = 1
) 
 

virtual InSpace::DrawObj::~DrawObj (   )  [virtual]
 


Member Function Documentation

virtual BBox* InSpace::DrawObj::bbox (   )  [inline, virtual]
 

virtual void InSpace::DrawObj::contextInit (   )  [inline, virtual]
 

Implement this to do any GL specific initialization that you need to within your object. Called once per GL context.

Reimplemented in InSpace::WorldRotAxisDrawObj.

virtual void InSpace::DrawObj::contextInitWrapper (   )  [virtual]
 

virtual int InSpace::DrawObj::display (   )  const [inline, virtual]
 

virtual int InSpace::DrawObj::displayBBox (   )  const [inline, virtual]
 

virtual void InSpace::DrawObj::draw (   )  [inline, virtual]
 

This is the most important function to implement in your subclass. Use GL calls inside this to draw something. This object's xform() has already been pushed onto the MODELVIEW stack when this gets called. If using inspace with G3D, use drawG3D() as a replacement for this function.

Reimplemented in InSpace::AnimTexPlane, InSpace::DrawPoint, InSpace::GLLine3D, InSpace::GLPtCloud, InSpace::ISMeshObj, InSpace::StatusBar, InSpace::TexPalette, InSpace::TexPlane, and InSpace::WorldRotAxisDrawObj.

virtual void InSpace::DrawObj::drawG3D (   )  [virtual]
 

This is a replacement for the draw() function when you are using inspace with the G3D library. Ideally, your subclass overrides this function and uses G3D renderdevice calls to do drawing, but if you want to draw in straight GL, you can wrap a normal draw routine inside a push/pop all attrib bits. this is the default action to facilitate compatability with older straight GL code. So, if you don't override this and you are using G3D, your old draw() routines will get called as usual.

virtual int InSpace::DrawObj::drawInPass (  int  pass  )  [inline, virtual]
 

virtual void InSpace::DrawObj::drawWrapper (  bool  useG3D  )  [virtual]
 

handle calling draw appropriately given that we sometimes want to call a display list..

virtual void InSpace::DrawObj::hide (   )  [virtual]
 

Reimplemented in InSpace::TexPalette.

virtual void InSpace::DrawObj::hideBBox (   )  [inline, virtual]
 

virtual void InSpace::DrawObj::highlight (   )  [inline, virtual]
 

virtual bool InSpace::DrawObj::isLightOn (  const int  i  )  const [inline, virtual]
 

virtual int InSpace::DrawObj::isRoomObj (   )  const [inline, virtual]
 

virtual int InSpace::DrawObj::movable (   )  const [inline, virtual]
 

str_ptr InSpace::DrawObj::name (  void   )  [inline]
 

virtual int InSpace::DrawObj::pointSelectCoarse (  ROOMpt  pr  )  [virtual]
 

virtual int InSpace::DrawObj::pointSelectCoarse (  Wpt  pw  )  [virtual]
 

virtual int InSpace::DrawObj::pointSelectFine (  ROOMpt  pr  )  [virtual]
 

Reimplemented in InSpace::ISMeshObj.

virtual int InSpace::DrawObj::pointSelectFine (  Wpt  pw  )  [virtual]
 

Reimplemented in InSpace::ISMeshObj.

virtual int InSpace::DrawObj::raySelectCoarse (  Wpt  p,
Wvec  dir,
Wpt &  isect_point
)  [virtual]
 

virtual int InSpace::DrawObj::raySelectFine (  Wpt  p,
Wvec  dir,
Wpt &  isect_point
)  [virtual]
 

virtual void InSpace::DrawObj::reColor (  ColorMap *  cm  )  [virtual]
 

virtual void InSpace::DrawObj::reColor (  const Color  c  )  [virtual]
 

Reimplemented in InSpace::DrawPoint, InSpace::ISMeshObj, and InSpace::TexPlane.

virtual void InSpace::DrawObj::reTexture (  str_ptr  texname  )  [virtual]
 

Reimplemented in InSpace::ISMeshObj.

virtual Wtransf InSpace::DrawObj::rot (   )  const [inline, virtual]
 

virtual void InSpace::DrawObj::rotBy (  const Wtransf  m  )  [virtual]
 

virtual Wtransf InSpace::DrawObj::scale (   )  const [inline, virtual]
 

virtual void InSpace::DrawObj::scaleBy (  const Wvec  sv  )  [virtual]
 

virtual void InSpace::DrawObj::scaleBy (  const double  s  )  [virtual]
 

virtual int InSpace::DrawObj::selectable (   )  const [inline, virtual]
 

virtual void InSpace::DrawObj::setDLMode (  DL_MODE  mode  )  [virtual]
 

virtual void InSpace::DrawObj::setMovable (  const int  m  )  [inline, virtual]
 

void InSpace::DrawObj::setName (  str_ptr  n  )  [inline]
 

virtual void InSpace::DrawObj::setRoomObj (  const int  i  )  [inline, virtual]
 

virtual void InSpace::DrawObj::setRot (  cWtransf &  m  )  [virtual]
 

Reimplemented in InSpace::TexPalette.

virtual void InSpace::DrawObj::setScale (  cWtransf &  m  )  [virtual]
 

Reimplemented in InSpace::TexPalette.

virtual void InSpace::DrawObj::setSelectable (  const int  s  )  [inline, virtual]
 

virtual void InSpace::DrawObj::setTrans (  cWtransf &  m  )  [virtual]
 

Reimplemented in InSpace::TexPalette.

virtual void InSpace::DrawObj::setTransparent (  const int  t  )  [inline, virtual]
 

virtual void InSpace::DrawObj::setXform (  cWtransf &  m,
bool  propagate = true
)  [virtual]
 

virtual void InSpace::DrawObj::show (   )  [inline, virtual]
 

Reimplemented in InSpace::TexPalette.

virtual void InSpace::DrawObj::showBBox (   )  [inline, virtual]
 

virtual Wtransf InSpace::DrawObj::trans (   )  const [inline, virtual]
 

virtual void InSpace::DrawObj::transBy (  const Wvec  v  )  [virtual]
 

virtual int InSpace::DrawObj::transparent (   )  const [inline, virtual]
 

virtual void InSpace::DrawObj::turnOffLight (  const int  l  )  [inline, virtual]
 

virtual void InSpace::DrawObj::turnOnLight (  const int  l  )  [inline, virtual]
 

virtual void InSpace::DrawObj::unhighlight (   )  [inline, virtual]
 

virtual void InSpace::DrawObj::writeCPS (  ostream *  os  )  [virtual]
 

Reimplemented in InSpace::TexPlane.

virtual void InSpace::DrawObj::writeVRML (  ostream *  os  )  [virtual]
 

Reimplemented in InSpace::ISMeshObj.

virtual Wtransf InSpace::DrawObj::xform (   )  const [inline, virtual]
 


Member Data Documentation

BBox InSpace::DrawObj::_bbox [protected]
 

int InSpace::DrawObj::_dispBBox [protected]
 

int InSpace::DrawObj::_display [protected]
 

isGlContextData<GLuint> InSpace::DrawObj::_dl [protected]
 

isGlContextData<DL_MODE> InSpace::DrawObj::_dlMode [protected]
 

int InSpace::DrawObj::_movable [protected]
 

str_ptr InSpace::DrawObj::_name [protected]
 

DL_MODE InSpace::DrawObj::_pendingDLMode [protected]
 

int InSpace::DrawObj::_roomObj [protected]
 

Wtransf InSpace::DrawObj::_rot [protected]
 

Wtransf InSpace::DrawObj::_scale [protected]
 

Reimplemented in InSpace::StatusBar.

int InSpace::DrawObj::_selectable [protected]
 

Wtransf InSpace::DrawObj::_trans [protected]
 

int InSpace::DrawObj::_transparent [protected]
 

bool InSpace::DrawObj::_useLights[8] [protected]
 


The documentation for this class was generated from the following file:
Generated on Thu Jul 8 15:19:30 2004 for inspace by doxygen 1.3.4