The Gnome Chemistry Utils 0.13.3
Public Member Functions | Protected Member Functions | Protected Attributes
gcu::GLView Class Reference

#include <gcu/glview.h>

List of all members.

Public Member Functions

 GLView (GLDocument *pDoc) throw (std::runtime_error)
 Constructor.
virtual ~GLView ()
 Destructor.
virtual void Update ()
void SetRotation (double psi, double theta, double phi)
void SaveAsImage (std::string const &filename, char const *type, std::map< std::string, std::string > &options, unsigned width, unsigned height) const
GdkPixbuf * BuildPixbuf (unsigned width, unsigned height) const
void RenderToCairo (cairo_t *cr, unsigned width, unsigned height) const
void SetAngle (double val)
double GetAngle (void) const
double & GetRefAngle (void)
void SetPsi (double val)
double GetPsi (void) const
double & GetRefPsi (void)
void SetPhi (double val)
double GetPhi (void) const
double & GetRefPhi (void)
void SetTheta (double val)
double GetTheta (void) const
double & GetRefTheta (void)
void SetRed (float val)
float GetRed (void) const
float & GetRefRed (void)
void SetGreen (float val)
float GetGreen (void) const
float & GetRefGreen (void)
void SetBlue (float val)
float GetBlue (void) const
float & GetRefBlue (void)
void SetAlpha (float val)
float GetAlpha (void) const
float & GetRefAlpha (void)
GLDocumentGetDoc (void)
double GetRadius (void)

Protected Member Functions

void Rotate (gdouble x, gdouble y)

Protected Attributes

double m_Radius

Detailed Description

View class based on OpenGL for rendering. Used to display 3d chemical structures such as molecules or crystals cells.

Definition at line 47 of file glview.h.


Constructor & Destructor Documentation

gcu::GLView::GLView ( GLDocument pDoc) throw (std::runtime_error)

Constructor.

Parameters:
pDoc,:a pointer to the GLDocument instance.

Creates a view for the document.

virtual gcu::GLView::~GLView ( ) [virtual]

Destructor.

The destructor of GLView.


Member Function Documentation

GdkPixbuf* gcu::GLView::BuildPixbuf ( unsigned  width,
unsigned  height 
) const
Parameters:
widththe width of the generated image.
heightthe height of the generated image.

Generates a pixbuf from the current view.

Returns:
the pixbuf containing the generated image
gcu::GLView::GetAlpha ( void  ) const [inline]

The alpha value for the background is not supported in this version and this is only a place holder.

Returns:
the current alpha value of the background color.

Definition at line 206 of file glview.h.

gcu::GLView::GetAngle ( void  ) const [inline]
Returns:
the current half field of view.

Definition at line 129 of file glview.h.

gcu::GLView::GetBlue ( void  ) const [inline]
Returns:
the current blue component of the background color.

Definition at line 189 of file glview.h.

gcu::GLView::GetDoc ( void  ) [inline]
Returns:
the associated document.

Definition at line 210 of file glview.h.

gcu::GLView::GetGreen ( void  ) const [inline]
Returns:
the current green component of the background color.

Definition at line 179 of file glview.h.

gcu::GLView::GetPhi ( void  ) const [inline]
Returns:
the current phi Euler's angle.

Definition at line 149 of file glview.h.

gcu::GLView::GetPsi ( void  ) const [inline]
Returns:
the current psi Euler's angle.

Definition at line 139 of file glview.h.

gcu::GLView::GetRadius ( void  ) [inline]
Returns:
the distance between the center of the model and the point of view.

Definition at line 217 of file glview.h.

gcu::GLView::GetRed ( void  ) const [inline]
Returns:
the current red component of the background color.

Definition at line 169 of file glview.h.

gcu::GLView::GetRefAlpha ( void  ) [inline]

The alpha value for the background is not supported in this version and this is only a place holder.

Returns:
the current alpha value of the background color as a reference.

Definition at line 206 of file glview.h.

gcu::GLView::GetRefAngle ( void  ) [inline]
Returns:
the current half field of view as a reference.

Definition at line 129 of file glview.h.

gcu::GLView::GetRefBlue ( void  ) [inline]
Returns:
the current blue component of the background color as a reference.

Definition at line 189 of file glview.h.

gcu::GLView::GetRefGreen ( void  ) [inline]
Returns:
the current green component of the background color as a reference.

Definition at line 179 of file glview.h.

gcu::GLView::GetRefPhi ( void  ) [inline]
Returns:
the current psh Euler's angle as a reference.

Definition at line 149 of file glview.h.

gcu::GLView::GetRefPsi ( void  ) [inline]
Returns:
the current psi Euler's angle as a reference.

Definition at line 139 of file glview.h.

gcu::GLView::GetRefRed ( void  ) [inline]
Returns:
the current red component of the background color as a reference.

Definition at line 169 of file glview.h.

gcu::GLView::GetRefTheta ( void  ) [inline]
Returns:
the current theta Euler's angle as a reference.

Definition at line 159 of file glview.h.

gcu::GLView::GetTheta ( void  ) const [inline]
Returns:
the current theta Euler's angle.

Definition at line 159 of file glview.h.

void gcu::GLView::RenderToCairo ( cairo_t *  cr,
unsigned  width,
unsigned  height 
) const
Parameters:
cra cairo_t.
widththe width used for rendering.
heightthe height used for rendering.

Outputs a bitmap to cairo. Used internally for printing and various image formats exports.

void gcu::GLView::Rotate ( gdouble  x,
gdouble  y 
) [protected]
Parameters:
xthe x component of the rotation.
ythe y component of the rotation. std:: Called by OnMotion(). x and y are the displacement coordinates of the mouse.
void gcu::GLView::SaveAsImage ( std::string const &  filename,
char const *  type,
std::map< std::string, std::string > &  options,
unsigned  width,
unsigned  height 
) const
Parameters:
filenamethe name of the file.
typethe type as supported by GdkPixbuf (e.g. "png" or "jpeg").
optionsthe pairs of keys/values to pass GdkPixbuf.
widththe width of the generated image.
heightthe height of the generated image.

Export the view contents as an image. The size of the new image is defined by the width and height parameters.

gcu::GLView::SetAlpha ( float  alpha) [inline]
Parameters:
alphathe new alpha value for the background.

The alpha value for the background is not supported in this version and this is only a place holder.

Definition at line 206 of file glview.h.

gcu::GLView::SetAngle ( double  angle) [inline]
Parameters:
anglethe new half field of view.

Definition at line 129 of file glview.h.

gcu::GLView::SetBlue ( float  blue) [inline]
Parameters:
bluethe new blue component for the background color.

Definition at line 189 of file glview.h.

gcu::GLView::SetGreen ( float  green) [inline]
Parameters:
greenthe new green component for the background color.

Definition at line 179 of file glview.h.

gcu::GLView::SetPhi ( double  phi) [inline]
Parameters:
phithe new phi Euler's angle.

Definition at line 149 of file glview.h.

gcu::GLView::SetPsi ( double  psi) [inline]
Parameters:
psithe new psi Euler's angle.

Definition at line 139 of file glview.h.

gcu::GLView::SetRed ( float  red) [inline]
Parameters:
redthe new red component for the background color.

Definition at line 169 of file glview.h.

void gcu::GLView::SetRotation ( double  psi,
double  theta,
double  phi 
)
Parameters:
psithe first Euler's angle.
thetathe second Euler's angle.
phithe third Euler's angle.

Sets the orientation of the model, using the Euler's angles.

gcu::GLView::SetTheta ( double  theta) [inline]
Parameters:
thetathe new theta Euler's angle.

Definition at line 159 of file glview.h.

virtual void gcu::GLView::Update ( ) [virtual]

Update the contents of the associated widget if any. This method must be called each time the document or the view are modified. Default implementation doesn't do anything.


Member Data Documentation

gcu::GLView::m_Radius [protected]

The distance between the center of the model and the point of view.

Definition at line 217 of file glview.h.


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