golib  0.5
goViewVolume Class Reference

#include <goviewvolume.h>

Public Member Functions

 goViewVolume (goViewPlane &p)
 
 goViewVolume (goViewVolume &v)
 
volFloat getDepth ()
 
void setDepth (volFloat d)
 
void setFrontClip (volFloat d)
 
volFloat getFrontClip ()
 
void calculateBounds (volFloat &minx, volFloat &maxx, volFloat &miny, volFloat &maxy, volFloat &minz, volFloat &maxz)
 
void operator= (goViewVolume &other)
 
void scale (volFloat factor)
 
void setSampleDistanceX (goFloat d)
 
void setSampleDistanceY (goFloat d)
 
void setSampleDistanceZ (goFloat d)
 
goFloat getSampleDistanceX ()
 
goFloat getSampleDistanceY ()
 
goFloat getSampleDistanceZ ()
 
- Public Member Functions inherited from goViewPlane
 goViewPlane (goViewPlane &other)
 
go3Vector< volFloat > & getPosition ()
 
go3Vector< volFloat > & getSize ()
 
go3Vector< volFloat > & getScreenSize ()
 
void setEyePos (go3Vector< volFloat > &p)
 
void setSize (go3Vector< volFloat > &s)
 
void setScreenSize (go3Vector< volFloat > &s)
 
void setScreenSize (goInt32 x, goInt32 y)
 For convenience. See setScreenSize(go3Vector<volFloat>& s)
 
void setSize (volFloat x, volFloat y)
 
void setEyePos (volFloat x, volFloat y, volFloat z)
 
void setPixelWidth (volFloat d)
 
void setPixelHeight (volFloat d)
 
volFloat getPixelWidth ()
 
volFloat getPixelHeight ()
 
go3Vector< volFloat > & getNormal ()
 
const go3Vector< volFloat > & getNormal () const
 
void setNormal (go3Vector< volFloat > &v)
 
go3Vector< volFloat > & getUp ()
 
const go3Vector< volFloat > & getUp () const
 
void setUp (go3Vector< volFloat > &u)
 
void setEyeDistance (volFloat f)
 
volFloat getEyeDistance () const
 
virtual void operator= (goViewPlane &other)
 
const go44Matrix< volFloat > & getViewMatrix () const
 
const go44Matrix< volFloat > & getViewMatrix ()
 
void update ()
 
go3Vector< volFloat > & getU ()
 
go3Vector< volFloat > & getV ()
 
go3Vector< volFloat > & getEyePos ()
 
void calculateUpperLeft (go3Vector< volFloat > &ul)
 
void calculateUpperRight (go3Vector< volFloat > &ur)
 
void calculateLowerLeft (go3Vector< volFloat > &ll)
 
void calculateLowerRight (go3Vector< volFloat > &lr)
 
void scale (volFloat factor)
 
void rotate (volFloat angle, Vol::GO_ROTATION_AXIS ax)
 
- Public Member Functions inherited from goObjectBase
 goObjectBase ()
 Constructor.
 
virtual ~goObjectBase ()
 Destructor. More...
 
const char * getClassName () const
 Returns the class name. More...
 
int getClassID () const
 
virtual goSize_t memoryUsage () const
 Returns the size of this object or some measure of its memory consumption. More...
 
void setObjectName (const char *name)
 Set name string for an object. More...
 
void setObjectName (const goString &name)
 Set name string for an object. More...
 
const goStringgetObjectName () const
 Get the object name. More...
 
virtual bool writeObjectFile (FILE *) const
 Write object to a file. More...
 
virtual bool readObjectFile (FILE *)
 Read object from a file. More...
 
void connectObject (goObjectBase *object)
 Connects an object to this object. More...
 
void disconnectObject (const goObjectBase *object)
 Disconnects an object from this object.
 
virtual bool callObjectMethod (int methodID, goObjectMethodParameters *param=NULL)
 Call an object method by identifier. More...
 
virtual bool queueObjectMethod (int methodID, goObjectMethodParameters *param=NULL, bool blocking=false)
 Enqueue a method call to an internal list of methods. More...
 
bool callQueuedMethods ()
 Call all queued methods. More...
 

Additional Inherited Members

- Protected Member Functions inherited from goObjectBase
void setClassID (int id)
 Sets the class name.
 
void printClassMessage (const char *msg)
 Sets the class name. More...
 
void printClassMessage (goString &msg)
 Prints an informational message to the calling console. More...
 
void sendObjectMessage (int messageID, void *data=NULL)
 Sends a message to all connected objects.
 
void sendObjectMessage (goObjectBase *object, int messageID, void *data=NULL)
 Sends a message to a specific object.
 
virtual void receiveObjectMessage (const goObjectMessage &message)
 Receive a message. More...
 
- Protected Attributes inherited from goViewPlane
go3Vector< volFloat > normal
 
go3Vector< volFloat > up
 
volFloat rotAngleX
 
volFloat rotAngleY
 
volFloat rotAngleZ
 
go3Vector< volFloat > position
 
go3Vector< volFloat > size
 
go3Vector< volFloat > screenSize
 
go3Vector< volFloat > u
 
go3Vector< volFloat > v
 
volFloat pixelWidth
 
volFloat pixelHeight
 
volFloat eyeDistance
 
go3Vector< volFloat > eyePos
 
go44Matrix< volFloat > Tproj
 

Detailed Description

Defines a visible volume. Coordinates are in world coordinates.

Author
Christian Gosch
Date
1.8.2001
Todo:
Define operations for this class as they are needed. (Development of goVolumeNavigator will need some more functionality in here).

Member Function Documentation

◆ calculateBounds()

void goViewVolume::calculateBounds ( volFloat &  minx,
volFloat &  maxx,
volFloat &  miny,
volFloat &  maxy,
volFloat &  minz,
volFloat &  maxz 
)

Calculates the bounds in world coordinates of the view volume and stores them in the variables referenced by the parameters. The values are representing a bounding box around the view frustum given by the front clip distance, the eye distance and the view depth.

Parameters
minxminimal x bound
maxxmaximal x bound
minyminimal y bound
minyminimal y bound
maxzmaximal z bound
maxzmaximal z bound

◆ scale()

void goViewVolume::scale ( volFloat  factor)
inline

Multiplies all scalable values with factor. Call update() afterwards.

Parameters
factorDouble scale factor.
See also
goViewPlane::scale()

The documentation for this class was generated from the following file: