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.
|
GtkWidget * | GetWidget () |
void | Init () |
void | Reshape (int width, int height) |
void | Draw () |
bool | OnPressed (GdkEventButton *event) |
bool | OnMotion (GdkEventMotion *event) |
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 | DoPrint (GtkPrintOperation *print, GtkPrintContext *context, int page) const |
GtkWindow * | GetGtkWindow () |
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) |
GLDocument * | GetDoc (void) |
double | GetRadius (void) |
Protected Attributes |
GtkWidget * | m_pWidget |
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 49 of file glview.h.
Constructor & Destructor Documentation
gcu::GLView::GLView |
( |
GLDocument * |
pDoc |
) |
throw (std::runtime_error) |
Constructor.
- Parameters:
-
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:
-
| width | the width of the generated image. |
| height | the height of the generated image. |
Generates a pixbuf from the current view.
- Returns:
- the pixbuf containing the generated image
void gcu::GLView::DoPrint |
( |
GtkPrintOperation * |
print, |
|
|
GtkPrintContext * |
context, |
|
|
int |
page | |
|
) |
| | const [virtual] |
- Parameters:
-
| print | a GtkPrintOperation. |
| context | a GtkPrintContext. |
| page | the page to print. |
Prints the current view at 300 dpi.
Implements gcu::Printable.
void gcu::GLView::Draw |
( |
|
) |
|
Draws the contents of the associated widget. Automatically called by the framework.
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 263 of file glview.h.
gcu::GLView::GetAngle |
( |
void |
|
) |
const [inline] |
- Returns:
- the current half field of view.
Definition at line 186 of file glview.h.
gcu::GLView::GetBlue |
( |
void |
|
) |
const [inline] |
- Returns:
- the current blue component of the background color.
Definition at line 246 of file glview.h.
gcu::GLView::GetDoc |
( |
void |
|
) |
[inline] |
- Returns:
- the associated document.
Definition at line 267 of file glview.h.
gcu::GLView::GetGreen |
( |
void |
|
) |
const [inline] |
- Returns:
- the current green component of the background color.
Definition at line 236 of file glview.h.
GtkWindow* gcu::GLView::GetGtkWindow |
( |
|
) |
[inline, virtual] |
gcu::GLView::GetPhi |
( |
void |
|
) |
const [inline] |
- Returns:
- the current phi Euler's angle.
Definition at line 206 of file glview.h.
gcu::GLView::GetPsi |
( |
void |
|
) |
const [inline] |
- Returns:
- the current psi Euler's angle.
Definition at line 196 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 274 of file glview.h.
gcu::GLView::GetRed |
( |
void |
|
) |
const [inline] |
- Returns:
- the current red component of the background color.
Definition at line 226 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 263 of file glview.h.
gcu::GLView::GetRefAngle |
( |
void |
|
) |
[inline] |
- Returns:
- the current half field of view as a reference.
Definition at line 186 of file glview.h.
gcu::GLView::GetRefBlue |
( |
void |
|
) |
[inline] |
- Returns:
- the current blue component of the background color as a reference.
Definition at line 246 of file glview.h.
gcu::GLView::GetRefGreen |
( |
void |
|
) |
[inline] |
- Returns:
- the current green component of the background color as a reference.
Definition at line 236 of file glview.h.
gcu::GLView::GetRefPhi |
( |
void |
|
) |
[inline] |
- Returns:
- the current psh Euler's angle as a reference.
Definition at line 206 of file glview.h.
gcu::GLView::GetRefPsi |
( |
void |
|
) |
[inline] |
- Returns:
- the current psi Euler's angle as a reference.
Definition at line 196 of file glview.h.
gcu::GLView::GetRefRed |
( |
void |
|
) |
[inline] |
- Returns:
- the current red component of the background color as a reference.
Definition at line 226 of file glview.h.
gcu::GLView::GetRefTheta |
( |
void |
|
) |
[inline] |
- Returns:
- the current theta Euler's angle as a reference.
Definition at line 216 of file glview.h.
gcu::GLView::GetTheta |
( |
void |
|
) |
const [inline] |
- Returns:
- the current theta Euler's angle.
Definition at line 216 of file glview.h.
GtkWidget* gcu::GLView::GetWidget |
( |
|
) |
[inline] |
- Returns:
- the associated GtkWidget.
Definition at line 68 of file glview.h.
References m_pWidget.
void gcu::GLView::Init |
( |
|
) |
|
Initialize the associated widget. Automatically called by the framework.
bool gcu::GLView::OnMotion |
( |
GdkEventMotion * |
event |
) |
|
- Parameters:
-
| event,: | a pointer to a GdkEvent. |
Automatically called by the framework when the mouse cursor moves over the associated widget drawing area.
- Returns:
- true if a motion really occured, false otherwise.
bool gcu::GLView::OnPressed |
( |
GdkEventButton * |
event |
) |
|
- Parameters:
-
| event,: | a pointer to a GdkEvent. |
Automatically called by the framework when a left button click occurs in the associated widget drawing area.
void gcu::GLView::RenderToCairo |
( |
cairo_t * |
cr, |
|
|
unsigned |
width, |
|
|
unsigned |
height | |
|
) |
| | const |
- Parameters:
-
| cr | a cairo_t. |
| width | the width used for rendering. |
| height | the height used for rendering. |
Outputs a bitmap to cairo. Used internally for printing and various image formats exports.
void gcu::GLView::Reshape |
( |
int |
width, |
|
|
int |
height | |
|
) |
| | |
Automatically called by the framework when the associated widget size changes.
void gcu::GLView::SaveAsImage |
( |
std::string const & |
filename, |
|
|
char const * |
type, |
|
|
std::map< std::string, std::string > & |
options, |
|
|
unsigned |
width, |
|
|
unsigned |
height | |
|
) |
| | const |
- Parameters:
-
| filename | the name of the file. |
| type | the type as supported by GdkPixbuf (e.g. "png" or "jpeg"). |
| options | the pairs of keys/values to pass GdkPixbuf. |
| width | the width of the generated image. |
| height | the 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:
-
| alpha | the 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 263 of file glview.h.
gcu::GLView::SetAngle |
( |
double |
angle |
) |
[inline] |
- Parameters:
-
| angle | the new half field of view. |
Definition at line 186 of file glview.h.
gcu::GLView::SetBlue |
( |
float |
blue |
) |
[inline] |
- Parameters:
-
| blue | the new blue component for the background color. |
Definition at line 246 of file glview.h.
gcu::GLView::SetGreen |
( |
float |
green |
) |
[inline] |
- Parameters:
-
| green | the new green component for the background color. |
Definition at line 236 of file glview.h.
gcu::GLView::SetPhi |
( |
double |
phi |
) |
[inline] |
- Parameters:
-
| phi | the new phi Euler's angle. |
Definition at line 206 of file glview.h.
gcu::GLView::SetPsi |
( |
double |
psi |
) |
[inline] |
- Parameters:
-
| psi | the new psi Euler's angle. |
Definition at line 196 of file glview.h.
gcu::GLView::SetRed |
( |
float |
red |
) |
[inline] |
- Parameters:
-
| red | the new red component for the background color. |
Definition at line 226 of file glview.h.
void gcu::GLView::SetRotation |
( |
double |
psi, |
|
|
double |
theta, |
|
|
double |
phi | |
|
) |
| | |
- Parameters:
-
| psi | the first Euler's angle. |
| theta | the second Euler's angle. |
| phi | the third Euler's angle. |
Sets the orientation of the model, using the Euler's angles.
gcu::GLView::SetTheta |
( |
double |
theta |
) |
[inline] |
- Parameters:
-
| theta | the new theta Euler's angle. |
Definition at line 216 of file glview.h.
void gcu::GLView::Update |
( |
|
) |
|
Update the contents of the associated widget. This method must be called each time the document or the view are modified.
Member Data Documentation
The distance between the center of the model and the point of view.
Definition at line 274 of file glview.h.
The documentation for this class was generated from the following file: