ARB
|
#include "RNA3D_GlobalHeader.hxx"
#include "RNA3D_Global.hxx"
#include "RNA3D_OpenGLEngine.hxx"
#include "RNA3D_OpenGLGraphics.hxx"
#include "RNA3D_StructureData.hxx"
#include "RNA3D_Textures.hxx"
#include "RNA3D_Renderer.hxx"
#include "RNA3D_Graphics.hxx"
#include "RNA3D_Interface.hxx"
#include <iostream>
#include <aw_root.hxx>
#include <aw_awars.hxx>
#include <BI_basepos.hxx>
#include <GL/aw_window_ogl.hxx>
Go to the source code of this file.
Functions | |
void | RNA3D_init_global_data (ED4_plugin_host &host) |
static void | ShowVendorInformation () |
static void | initExtensions () |
void | ReshapeOpenGLWindow (GLint width, GLint height) |
static void | CalculateRotationMatrix () |
void | InitializeOpenGLEngine (GLint width, GLint height) |
void | ComputeRotationXY (int x, int y) |
static void | update_HelixNrDispList () |
void | MapDisplayParameters (AW_root *root) |
void | DisplayPostionsIntervalChanged_CB (AW_root *awr) |
void | MapSelectedSpeciesChanged_CB (AW_root *awr) |
void | MapSaiToEcoliTemplateChanged_CB (AW_root *) |
void | MapSearchStringsToEcoliTemplateChanged_CB (AW_root *awr) |
void | CursorPositionChanged_CB (AW_root *awr) |
void | DisplayHelixNrsChanged_CB (AW_root *awr, bool upper_limit_changed) |
static void | DrawStructure () |
void | RenderOpenGLScene (Widget w) |
void | InitializeOpenGLWindow (Widget w) |
Variables | |
RNA3D_Global * | RNA3D = NULp |
static float | fAspectRatio |
const float | fViewAngle = 40.0 |
const float | fClipNear = 0.5f |
const float | fClipFar = 100 |
static Display * | dpy |
static GLXContext | glx_context |
static int | DoubleBufferWithAlpha [] |
static int | DoubleBuffer [] |
static int | SingleBuffer [] |
static GLfloat | rotation_matrix [16] |
static GLfloat | rot_x = 0.0 |
static GLfloat | rot_y = 0.0 |
static int | iScreenWidth |
static int | iScreenHeight |
static bool | bMapSpDispListCreated = false |
static bool | bCursorPosDispListCreated = false |
static bool | bHelixNrDispListCreated = false |
void RNA3D_init_global_data | ( | ED4_plugin_host & | host | ) |
Definition at line 24 of file RNA3D_OpenGLEngine.cxx.
Referenced by CreateRNA3DMainWindow().
|
static |
Definition at line 108 of file RNA3D_OpenGLEngine.cxx.
References NULp.
Referenced by InitializeOpenGLEngine().
|
static |
Definition at line 115 of file RNA3D_OpenGLEngine.cxx.
References RNA3D_Global::bPointSpritesSupported, and GBK_terminatef().
Referenced by InitializeOpenGLEngine().
void ReshapeOpenGLWindow | ( | GLint | width, |
GLint | height | ||
) |
Definition at line 146 of file RNA3D_OpenGLEngine.cxx.
References fAspectRatio, fClipFar, fClipNear, and fViewAngle.
Referenced by ExposeOpenGLWindow(), InitializeOpenGLEngine(), and ResizeOpenGLWindow().
|
static |
Definition at line 160 of file RNA3D_OpenGLEngine.cxx.
References initialized, rot_x, rot_y, and rotation_matrix.
Referenced by InitializeOpenGLEngine(), and RenderOpenGLScene().
void InitializeOpenGLEngine | ( | GLint | width, |
GLint | height | ||
) |
Definition at line 185 of file RNA3D_OpenGLEngine.cxx.
References CalculateRotationMatrix(), Structure3D::Combine2Dand3DstructureInfo(), ComputeRotationXY(), RNA3D_Global::cStructure, RNA3D_Global::cTexture, Structure3D::GenerateDisplayLists(), Structure3D::GetSecondaryStructureInfo(), initExtensions(), Structure3D::ReadCoOrdinateFile(), ReshapeOpenGLWindow(), RNA3D_Global::saved_x, RNA3D_Global::saved_y, and ShowVendorInformation().
Referenced by ExposeOpenGLWindow().
Definition at line 229 of file RNA3D_OpenGLEngine.cxx.
References rot_x, rot_y, RNA3D_Global::ROTATION_SPEED, RNA3D_Global::saved_x, RNA3D_Global::saved_y, and y.
Referenced by InitializeOpenGLEngine(), and MouseMoveEventHandler().
|
static |
Definition at line 236 of file RNA3D_OpenGLEngine.cxx.
References bHelixNrDispListCreated, RNA3D_Global::cRenderer, RNA3D_Global::cStructure, and Structure3D::GenerateHelixNrDispList().
Referenced by MapDisplayParameters().
void MapDisplayParameters | ( | AW_root * | root | ) |
Definition at line 247 of file RNA3D_OpenGLEngine.cxx.
References AW_root::awar(), AWAR_3D_BASES_HELIX, AWAR_3D_BASES_MODE, AWAR_3D_BASES_NON_HELIX, AWAR_3D_BASES_UNPAIRED_HELIX, AWAR_3D_CURSOR_POSITION, AWAR_3D_DISPLAY_BASES, AWAR_3D_DISPLAY_HELIX, AWAR_3D_DISPLAY_SIZE, AWAR_3D_DISPLAY_TERTIARY_INTRACTIONS, AWAR_3D_HELIX_BACKBONE, AWAR_3D_HELIX_FROM, AWAR_3D_HELIX_MIDPOINT, AWAR_3D_HELIX_NUMBER, AWAR_3D_HELIX_SIZE, AWAR_3D_HELIX_TO, AWAR_3D_MAP_ENABLE, AWAR_3D_MAP_SAI, AWAR_3D_MAP_SEARCH_STRINGS, AWAR_3D_MAP_SPECIES, AWAR_3D_MAP_SPECIES_DISP_BASE, AWAR_3D_MAP_SPECIES_DISP_DELETIONS, AWAR_3D_MAP_SPECIES_DISP_INSERTIONS, AWAR_3D_MAP_SPECIES_DISP_INSERTIONS_INFO, AWAR_3D_MAP_SPECIES_DISP_MISSING, AWAR_3D_MAP_SPECIES_DISP_POS, AWAR_3D_MOL_BACKBONE, AWAR_3D_MOL_COLORIZE, AWAR_3D_MOL_DISP_POS, AWAR_3D_MOL_POS_INTERVAL, AWAR_3D_MOL_ROTATE, AWAR_3D_MOL_SIZE, AWAR_3D_SHAPES_HELIX, AWAR_3D_SHAPES_NON_HELIX, AWAR_3D_SHAPES_UNPAIRED_HELIX, RNA3D_Global::bMapSaiDispListCreated, RNA3D_Global::bMapSearchStringsDispListCreated, bMapSpDispListCreated, Structure3D::calc_helix_count(), RNA3D_Global::cRenderer, RNA3D_Global::cStructure, Structure3D::iInterval, Structure3D::iMapEnable, Structure3D::iMapSAI, Structure3D::iMapSearch, RNA3D_Global::iRotateMolecule, Structure3D::MapCurrentSpeciesToEcoliTemplate(), Structure3D::MapSaiToEcoliTemplate(), Structure3D::MapSearchStringsToEcoliTemplate(), AW_awar::read_float(), AW_awar::read_int(), update_HelixNrDispList(), and AW_awar::write_int().
Referenced by DisplayHelixNrsChanged_CB(), DisplayPostionsIntervalChanged_CB(), RNA3D_Graphics::paint(), RefreshCanvas(), and RotateMoleculeStateChanged_cb().
void DisplayPostionsIntervalChanged_CB | ( | AW_root * | awr | ) |
Definition at line 322 of file RNA3D_OpenGLEngine.cxx.
References Structure3D::ComputeBasePositions(), RNA3D_Global::cStructure, MapDisplayParameters(), RefreshOpenGLDisplay(), and STRUCTURE_POS.
Referenced by AddCallBacks().
void MapSelectedSpeciesChanged_CB | ( | AW_root * | awr | ) |
Definition at line 329 of file RNA3D_OpenGLEngine.cxx.
References bMapSpDispListCreated, RNA3D_Global::cRenderer, RNA3D_Global::cStructure, Structure3D::iMapEnable, MAP_SPECIES_BASE_DIFFERENCE, Structure3D::MapCurrentSpeciesToEcoliTemplate(), MapSearchStringsToEcoliTemplateChanged_CB(), and RefreshOpenGLDisplay().
Referenced by AddCallBacks().
void MapSaiToEcoliTemplateChanged_CB | ( | AW_root * | ) |
Definition at line 351 of file RNA3D_OpenGLEngine.cxx.
References RNA3D_Global::bMapSaiDispListCreated, RNA3D_Global::cStructure, Structure3D::iMapEnable, Structure3D::iMapSAI, MAP_SAI_TO_STRUCTURE, Structure3D::MapSaiToEcoliTemplate(), and RefreshOpenGLDisplay().
Referenced by AddCallBacks(), and RefreshMappingDisplay().
void MapSearchStringsToEcoliTemplateChanged_CB | ( | AW_root * | awr | ) |
Definition at line 366 of file RNA3D_OpenGLEngine.cxx.
References RNA3D_Global::bMapSearchStringsDispListCreated, RNA3D_Global::cStructure, Structure3D::iMapEnable, Structure3D::iMapSearch, MAP_SEARCH_STRINGS_TO_STRUCTURE, and Structure3D::MapSearchStringsToEcoliTemplate().
Referenced by MapSelectedSpeciesChanged_CB(), and RefreshMappingDisplay().
void CursorPositionChanged_CB | ( | AW_root * | awr | ) |
Definition at line 381 of file RNA3D_OpenGLEngine.cxx.
References BasePosition::abs_2_rel(), AW_root::awar(), AWAR_CURSOR_POSITION, bCursorPosDispListCreated, RNA3D_Global::bEColiRefInitialized, bMapSpDispListCreated, RNA3D_Global::cStructure, ECOLI_CURSOR_POSITION, Structure3D::EColiRef, Structure3D::GenerateCursorPositionDispList(), AW_awar::read_int(), and RefreshOpenGLDisplay().
Referenced by AddCallBacks().
void DisplayHelixNrsChanged_CB | ( | AW_root * | awr, |
bool | upper_limit_changed | ||
) |
Definition at line 399 of file RNA3D_OpenGLEngine.cxx.
References AW_root::awar(), AWAR_3D_HELIX_FROM, AWAR_3D_HELIX_TO, bHelixNrDispListCreated, Structure3D::calc_helix_count(), RNA3D_Global::cStructure, force_in_range(), HELIX_NUMBERS, MapDisplayParameters(), AW_awar::read_int(), RefreshOpenGLDisplay(), and AW_awar::write_int().
Referenced by AddCallBacks().
|
static |
Definition at line 422 of file RNA3D_OpenGLEngine.cxx.
References RNA3D_Global::cRenderer, RNA3D_Global::cStructure, and RNA3D_Global::cTexture.
Referenced by RenderOpenGLScene().
void RenderOpenGLScene | ( | Widget | w | ) |
Definition at line 437 of file RNA3D_OpenGLEngine.cxx.
References RNA3D_Global::bAutoRotate, RNA3D_Global::bRotateMolecule, CalculateRotationMatrix(), RNA3D_Global::Center, RNA3D_Global::cGraphics, RNA3D_Global::cRenderer, RNA3D_Global::cStructure, DrawStructure(), rotation_matrix, RNA3D_Global::scale, Structure3D::strCen, RNA3D_Global::Up, RNA3D_Global::Viewer, Vector3::x, Vector3::y, and Vector3::z.
Referenced by RefreshOpenGLDisplay().
void InitializeOpenGLWindow | ( | Widget | w | ) |
Definition at line 473 of file RNA3D_OpenGLEngine.cxx.
References AW_alpha_Size_Supported, RNA3D_Global::cGraphics, CREATED, dpy, RNA3D_Global::glw, GLwDrawingAreaMakeCurrent(), GLwNvisualInfo, glx_context, NULp, and RNA3D_Global::OpenGLEngineState.
Referenced by ExposeOpenGLWindow().
RNA3D_Global* RNA3D = NULp |
Definition at line 22 of file RNA3D_OpenGLEngine.cxx.
Referenced by Structure3D::BuildDisplayList(), ButtonPressEventHandler(), ButtonReleaseEventHandler(), Change3DMolecule_CB(), Structure3D::Combine2Dand3DstructureInfo(), CreateDisplayHelices_window(), CreateRNA3DMainWindow(), DisplayMoleculeMask(), ExposeOpenGLWindow(), Structure3D::GenerateBaseDifferenceDisplayList(), Structure3D::GenerateHelixNrDispList(), Structure3D::GenerateInsertionDisplayList(), KeyPressEventHandler(), Structure3D::MapCurrentSpeciesToEcoliTemplate(), Structure3D::MapSaiToEcoliTemplate(), Structure3D::MapSearchStringsToEcoliTemplate(), MouseMoveEventHandler(), Structure3D::PointsToQuads(), Structure3D::PositionsToCoordinatesDispList(), Structure3D::ReadCoOrdinateFile(), RefreshMappingDisplay(), RefreshOpenGLDisplay(), ResizeOpenGLWindow(), RotateMoleculeStateChanged(), and SpinMolecule().
|
static |
Definition at line 65 of file RNA3D_OpenGLEngine.cxx.
Referenced by ReshapeOpenGLWindow().
const float fViewAngle = 40.0 |
Definition at line 66 of file RNA3D_OpenGLEngine.cxx.
Referenced by ReshapeOpenGLWindow().
const float fClipNear = 0.5f |
Definition at line 67 of file RNA3D_OpenGLEngine.cxx.
Referenced by ReshapeOpenGLWindow().
const float fClipFar = 100 |
Definition at line 68 of file RNA3D_OpenGLEngine.cxx.
Referenced by ReshapeOpenGLWindow().
|
static |
Definition at line 70 of file RNA3D_OpenGLEngine.cxx.
Referenced by aw_create_shell(), AW_window_menu_modes_opengl::init(), and InitializeOpenGLWindow().
|
static |
Definition at line 71 of file RNA3D_OpenGLEngine.cxx.
Referenced by InitializeOpenGLWindow().
|
static |
Definition at line 73 of file RNA3D_OpenGLEngine.cxx.
|
static |
Definition at line 82 of file RNA3D_OpenGLEngine.cxx.
|
static |
Definition at line 90 of file RNA3D_OpenGLEngine.cxx.
|
static |
Definition at line 97 of file RNA3D_OpenGLEngine.cxx.
Referenced by CalculateRotationMatrix(), and RenderOpenGLScene().
|
static |
Definition at line 98 of file RNA3D_OpenGLEngine.cxx.
Referenced by CalculateRotationMatrix(), and ComputeRotationXY().
|
static |
Definition at line 98 of file RNA3D_OpenGLEngine.cxx.
Referenced by CalculateRotationMatrix(), and ComputeRotationXY().
|
static |
Definition at line 100 of file RNA3D_OpenGLEngine.cxx.
|
static |
Definition at line 100 of file RNA3D_OpenGLEngine.cxx.
|
static |
Definition at line 102 of file RNA3D_OpenGLEngine.cxx.
Referenced by CursorPositionChanged_CB(), MapDisplayParameters(), and MapSelectedSpeciesChanged_CB().
|
static |
Definition at line 103 of file RNA3D_OpenGLEngine.cxx.
Referenced by CursorPositionChanged_CB().
|
static |
Definition at line 104 of file RNA3D_OpenGLEngine.cxx.
Referenced by DisplayHelixNrsChanged_CB(), and update_HelixNrDispList().