#include <Scene.h>
Inheritance diagram for Scene:
Public Methods | |
Scene (void) | |
constructor. More... | |
virtual | ~Scene (void) |
destructor. More... | |
void | set_background_mode (int mode) |
Change background drawing mode. More... | |
int | background_mode (void) |
void | reset_lights () |
virtual int | prepare () |
prepare all registered Displayables return whether we need an update or not. More... | |
virtual void | draw (DisplayDevice *) |
draw the scene to the given DisplayDevice, can change display states XXX note, this method should really be a 'const' method since it is run concurrently by several processes that share memory, but we can't actually write it that way since the locking routines do indeed write to lock variables. The code in draw() should be written as though it were a const method however. More... | |
int | filedraw (FileRenderer *, const char *, DisplayDevice *) |
draw the scene to a file in a given format, trying to match the view of the given DisplayDevice as closely as possible returns TRUE if successful, FALSE if not There are no stereo output formats; if there are, then things will become somewhat more difficult. More... | |
void | draw_finished () |
perform any post-drawing cleanup, reset state caching variables, etc. More... | |
void | define_light (int n, const float *color, const float *position) |
routines to deal with standard directional light sources. More... | |
void | activate_light (int n, int turnon) |
routines to deal with standard directional light sources. More... | |
void | highlight_light (int, int) |
routines to deal with standard directional light sources. More... | |
void | rotate_light (int n, float theta, char axis) |
routines to deal with standard directional light sources. More... | |
void | move_light (int n, const float *) |
routines to deal with standard directional light sources. More... | |
const float * | light_pos (int n) const |
routines to deal with standard directional light sources. More... | |
const float * | light_pos_default (int n) const |
routines to deal with standard directional light sources. More... | |
const float * | light_color (int n) const |
routines to deal with standard directional light sources. More... | |
const float * | light_color_default (int n) const |
routines to deal with standard directional light sources. More... | |
int | light_active (int n) const |
routines to deal with standard directional light sources. More... | |
int | light_highlighted (int) const |
routines to deal with standard directional light sources. More... | |
void | define_adv_light (int n, const float *color, const float *position, float constant, float linear, float quad, float *spotdir, float fallstart, float fallend, int spoton) |
routines to deal with advanced positional light sources. More... | |
void | activate_adv_light (int n, int turnon) |
routines to deal with advanced positional light sources. More... | |
void | highlight_adv_light (int, int) |
routines to deal with advanced positional light sources. More... | |
void | move_adv_light (int n, const float *) |
routines to deal with advanced positional light sources. More... | |
const float * | adv_light_pos (int n) const |
routines to deal with advanced positional light sources. More... | |
const float * | adv_light_pos_default (int n) const |
routines to deal with advanced positional light sources. More... | |
const float * | adv_light_color (int n) const |
routines to deal with advanced positional light sources. More... | |
const float * | adv_light_color_default (int n) const |
routines to deal with advanced positional light sources. More... | |
void | adv_light_attenuation (int n, float constant, float linear, float quad) |
routines to deal with advanced positional light sources. More... | |
void | adv_light_get_attenuation (int n, float &constant, float &linear, float &quad) const |
routines to deal with advanced positional light sources. More... | |
void | adv_light_spotlight (int n, float *spotdir, float fallstart, float fallend, int spoton) |
routines to deal with advanced positional light sources. More... | |
const float * | adv_light_get_spotlight (int n, float &fallstart, float &fallend, int &spoton) const |
routines to deal with advanced positional light sources. More... | |
int | adv_light_active (int n) const |
routines to deal with advanced positional light sources. More... | |
int | adv_light_highlighted (int) const |
routines to deal with advanced positional light sources. More... | |
int | add_color_category (const char *catname) |
routines to get/set color properties. More... | |
int | add_color_item (int cat_id, const char *name, int init_color) |
routines to get/set color properties. More... | |
void | set_category_item (int cat_id, int item, int color) |
change color properties These return void because there is _no_ error checking. More... | |
void | set_color_value (int n, const float *rgb) |
routines to get/set color properties. More... | |
int | get_category_item (int cat_id, int item) |
routines to get/set color properties. More... | |
int | num_categories () const |
query color information; all const methods that assume valid inputs. More... | |
const char * | category_name (int cat) const |
routines to get/set color properties. More... | |
int | category_index (const char *catname) const |
routines to get/set color properties. More... | |
int | num_colors () const |
routines to get/set color properties. More... | |
int | num_regular_colors () const |
routines to get/set color properties. More... | |
const char * | color_name (int n) const |
routines to get/set color properties. More... | |
int | color_index (const char *name) const |
return index of color; returns -1 if name is not a valid color name. More... | |
const float * | color_value (int n) const |
routines to get/set color properties. More... | |
const float * | color_default_value (int n) const |
routines to get/set color properties. More... | |
int | num_category_items (int cat) const |
routines to get/set color properties. More... | |
const char * | category_item_name (int cat, int item) const |
routines to get/set color properties. More... | |
int | category_item_index (int cat, const char *item) const |
routines to get/set color properties. More... | |
int | category_item_value (int cat, const char *item) const |
routines to get/set color properties. More... | |
int | category_item_value (int cat, int item) const |
routines to get/set color properties. More... | |
int | nearest_index (float r, float g, float b) const |
nearest_index: deprecated but needed by ImportGraphicsPlugin and MoleculeRaster3D for now. More... | |
void | set_colorscale_params (float min, float mid, float max, int reverse, int posterize) |
Color scale management methods. More... | |
void | set_colorscale_method (int index) |
routines to get/set color properties. More... | |
int | get_colorscale_colors (int whichScale, float min[3], float mid[3], float max[3]) |
Store the color scale colors in the given arrays. More... | |
int | set_colorscale_colors (int whichScale, const float min[3], const float mid[3], const float max[3]) |
Set the color scale colors from the given arrays. More... | |
void | colorscale_params (float *mid, float *min, float *max, int *reverse, int *posterize) const |
color scale methods. More... | |
int | colorscale_method () const |
routines to get/set color properties. More... | |
int | num_colorscale_methods () const |
routines to get/set color properties. More... | |
const char * | colorscale_method_name (int n) const |
routines to get/set color properties. More... | |
const char * | colorscale_method_menuname (int n) const |
routines to get/set color properties. More... | |
int | colorscale_type (int index) |
routines to get/set color properties. More... | |
Public Attributes | |
Displayable | root |
The top level Displayable, parent of all other displayables in the scene. public for now since Scene replicates essentially the entire interface of Displayable. More... |
Definition at line 88 of file Scene.h.
|
constructor.
Definition at line 284 of file Scene.C. References NameList< int >::add_name, ResizeArray< const char * >::append, ResizeArray< ColorScale >::append, BEGREGCLRS, colScaleMenuNames, defColorNames, num_scalemethods, REGBLACK, REGBLUE2, REGCLRS, REGWHITE, reset_lights, root, set_background_mode, and set_color_value. |
|
destructor.
Definition at line 329 of file Scene.C. References NameList< NameList< int > * >::data, and NameList< NameList< int > * >::num. |
|
routines to deal with advanced positional light sources.
Definition at line 440 of file Scene.C. References DISP_LIGHTS, and n. Referenced by reset_lights, and text_cmd_point_light. |
|
routines to deal with standard directional light sources.
Definition at line 375 of file Scene.C. References DISP_LIGHTS, and n. Referenced by VMDApp::light_on, and reset_lights. |
|
routines to get/set color properties.
Definition at line 214 of file Scene.h. References NameList::add_name, and NameList::typecode. Referenced by Axes::Axes, VMDApp::color_add_item, DisplayColor::DisplayColor, FPS::FPS, GeometryList::GeometryList, MoleculeList::init_colors, and Stage::Stage. |
|
routines to get/set color properties.
Definition at line 218 of file Scene.h. References NameList::add_name, and NameList::data. Referenced by MoleculeList::add_color_names, Axes::Axes, VMDApp::color_add_item, DisplayColor::DisplayColor, FPS::FPS, GeometryList::GeometryList, MoleculeList::init_colors, VMDApp::molecule_from_selection_list, VMDApp::molecule_new, VMDApp::molecule_rename, and Stage::Stage. |
|
routines to deal with advanced positional light sources.
Definition at line 208 of file Scene.h. References n. Referenced by text_cmd_point_light. |
|
routines to deal with advanced positional light sources.
Definition at line 474 of file Scene.C. References DISP_LIGHTS, and n. Referenced by text_cmd_point_light. |
|
routines to deal with advanced positional light sources.
Definition at line 464 of file Scene.C. References DISP_LIGHTS, n, and NULL. |
|
routines to deal with advanced positional light sources.
Definition at line 469 of file Scene.C. References def_light_color, DISP_LIGHTS, n, and NULL. |
|
routines to deal with advanced positional light sources.
Definition at line 482 of file Scene.C. References DISP_LIGHTS, and n. Referenced by text_cmd_point_light. |
|
routines to deal with advanced positional light sources.
Definition at line 500 of file Scene.C. References DISP_LIGHTS, n, and NULL. |
|
routines to deal with advanced positional light sources.
Definition at line 209 of file Scene.h. Referenced by text_cmd_point_light. |
|
routines to deal with advanced positional light sources.
Definition at line 454 of file Scene.C. References DISP_LIGHTS, n, and NULL. Referenced by text_cmd_point_light. |
|
routines to deal with advanced positional light sources.
Definition at line 459 of file Scene.C. References def_adv_light_pos, DISP_LIGHTS, n, and NULL. Referenced by text_cmd_point_light. |
|
routines to deal with advanced positional light sources.
Definition at line 490 of file Scene.C. References DISP_LIGHTS, and n. |
|
Definition at line 342 of file Scene.C. Referenced by text_cmd_display. |
|
routines to get/set color properties.
Definition at line 244 of file Scene.h. References NameList::typecode. Referenced by VMDApp::color_add_item, VMDApp::color_category_item, VMDApp::color_change_name, VMDApp::color_change_namelist, VMDApp::color_get_from_name, VMDApp::color_mapping, DisplayColor::DisplayColor, DrawMolItem::do_color_changed, DrawMolItem::do_color_rgb_changed, FPS::FPS, and VMDApp::num_color_category_items. |
|
routines to get/set color properties.
Definition at line 261 of file Scene.h. References NameList::data. Referenced by VMDApp::color_change_name, VMDApp::color_change_namelist, VMDApp::color_get_from_name, VMDApp::color_mapping, VMDApp::color_set_restype, Stage::do_color_changed, and GeometryList::do_color_changed. |
|
routines to get/set color properties.
Definition at line 258 of file Scene.h. References NameList::data. Referenced by VMDApp::color_category_item, and VMDApp::color_set_restype. |
|
routines to get/set color properties.
Definition at line 267 of file Scene.h. References NameList::data. |
|
routines to get/set color properties.
Definition at line 264 of file Scene.h. References NameList::data. Referenced by VMDApp::color_mapping, Stage::do_color_changed, DisplayColor::do_color_changed, GeometryList::do_color_changed, FPS::do_color_changed, Axes::do_color_changed, DrawMolItem::do_color_rgb_changed, and AtomColor::find. |
|
routines to get/set color properties.
Definition at line 243 of file Scene.h. References NameList::name. Referenced by VMDApp::color_category. |
|
routines to get/set color properties.
Definition at line 254 of file Scene.h. References n. Referenced by VMDApp::color_default_value. |
|
return index of color; returns -1 if name is not a valid color name.
Definition at line 252 of file Scene.h. References NameList::typecode. Referenced by VMDApp::color_add_item, VMDApp::color_index, and MoleculeList::init_colors. |
|
routines to get/set color properties.
Definition at line 249 of file Scene.h. References n, and NameList::name. Referenced by VMDApp::color_mapping, VMDApp::color_name, and GraphicsFltkMenu::GraphicsFltkMenu. |
|
routines to get/set color properties.
Definition at line 253 of file Scene.h. References n. Referenced by MoleculeGraphics::add_spheretube, VMDApp::color_value, draw, ColorscaleLumaChart::draw, ColorscaleImage::draw, filedraw, VolumeTexture::generateColorScaleTexture, hill_reilly_ring_colorscale, nearest_index, and DispCmdPointArray::putdata. |
|
routines to get/set color properties.
Definition at line 306 of file Scene.h. Referenced by VMDApp::colorscale_method_current. |
|
routines to get/set color properties.
Definition at line 312 of file Scene.h. References n. Referenced by VMDApp::colorscale_method_menuname. |
|
routines to get/set color properties.
Definition at line 309 of file Scene.h. References n. Referenced by VMDApp::colorscale_method_index, VMDApp::colorscale_method_name, VMDApp::colorscale_setmethod, and VMDApp::set_colorscale_colors. |
|
color scale methods.
Definition at line 299 of file Scene.h. Referenced by VMDApp::colorscale_params. |
|
routines to get/set color properties.
Definition at line 865 of file Scene.C. References num_scalemethods, and SCALE_TYPE_TABULATED. |
|
routines to deal with advanced positional light sources.
Definition at line 418 of file Scene.C. References DISP_LIGHTS, and n. Referenced by reset_lights. |
|
routines to deal with standard directional light sources.
Definition at line 364 of file Scene.C. References DISP_LIGHTS, and n. Referenced by reset_lights. |
|
|
perform any post-drawing cleanup, reset state caching variables, etc.
Reimplemented in VRJugglerScene. Definition at line 747 of file Scene.C. Referenced by VRJugglerScene::draw_finished, and VMDApp::VMDupdate. |
|
draw the scene to a file in a given format, trying to match the view of the given DisplayDevice as closely as possible returns TRUE if successful, FALSE if not There are no stereo output formats; if there are, then things will become somewhat more difficult.
Definition at line 691 of file Scene.C. References DisplayColor::color_id, color_value, DISP_LIGHTS, FileRenderer::do_activate_adv_light, FileRenderer::do_activate_light, FileRenderer::do_define_adv_light, FileRenderer::do_define_light, Displayable::draw, FileRenderer::open_file, FileRenderer::prepare3D, DisplayDevice::render_done, root, FileRenderer::set_backgradient, FileRenderer::set_background, FileRenderer::update, and DisplayDevice::use_colors. Referenced by FileRenderList::render. |
|
routines to get/set color properties.
Definition at line 236 of file Scene.h. References NameList::data. Referenced by VMDApp::color_get_from_name. |
|
Store the color scale colors in the given arrays.
Definition at line 892 of file Scene.C. References ColorScale::max, ColorScale::mid, ColorScale::min, and ResizeArray< ColorScale >::num. Referenced by VMDApp::get_colorscale_colors. |
|
routines to deal with advanced positional light sources.
Definition at line 196 of file Scene.h. Referenced by text_cmd_point_light. |
|
routines to deal with standard directional light sources.
Definition at line 178 of file Scene.h. Referenced by VMDApp::light_highlight. |
|
routines to deal with standard directional light sources.
Definition at line 185 of file Scene.h. References n. Referenced by text_cmd_light. |
|
routines to deal with standard directional light sources.
Definition at line 407 of file Scene.C. References DISP_LIGHTS, n, and NULL. |
|
routines to deal with standard directional light sources.
Definition at line 412 of file Scene.C. References def_light_color, DISP_LIGHTS, n, and NULL. |
|
routines to deal with standard directional light sources.
Definition at line 186 of file Scene.h. Referenced by text_cmd_light. |
|
routines to deal with standard directional light sources.
Definition at line 397 of file Scene.C. References DISP_LIGHTS, n, and NULL. Referenced by text_cmd_light. |
|
routines to deal with standard directional light sources.
Definition at line 402 of file Scene.C. References def_light_pos, DISP_LIGHTS, n, and NULL. Referenced by text_cmd_light. |
|
routines to deal with advanced positional light sources.
Definition at line 447 of file Scene.C. References DISP_LIGHTS, and n. Referenced by text_cmd_point_light. |
|
routines to deal with standard directional light sources.
Definition at line 391 of file Scene.C. References DISP_LIGHTS, and n. Referenced by VMDApp::light_move. |
|
nearest_index: deprecated but needed by ImportGraphicsPlugin and MoleculeRaster3D for now.
Definition at line 872 of file Scene.C. References BEGREGCLRS, color_value, n, and REGCLRS. Referenced by AtomColor::find, and MolFilePlugin::read_rawgraphics. |
|
query color information; all const methods that assume valid inputs.
Definition at line 242 of file Scene.h. References NameList::num. Referenced by VMDApp::num_color_categories. |
|
routines to get/set color properties.
Definition at line 255 of file Scene.h. References NameList::data. Referenced by MoleculeList::add_color_names, and VMDApp::num_color_category_items. |
|
routines to get/set color properties.
Definition at line 247 of file Scene.h. References MAXCOLORS. |
|
routines to get/set color properties.
Definition at line 308 of file Scene.h. References ResizeArray::num. Referenced by VMDApp::colorscale_method_index, VMDApp::colorscale_method_menuname, VMDApp::colorscale_method_name, VMDApp::colorscale_setmethod, and VMDApp::num_colorscale_methods. |
|
routines to get/set color properties.
Definition at line 248 of file Scene.h. References REGCLRS. |
|
prepare all registered Displayables return whether we need an update or not.
Reimplemented in CaveScene. Definition at line 532 of file Scene.C. References DisplayColor::clear_changed, DisplayColor::color_changed, DisplayColor::color_id, Displayable::draw_prepare, and root. Referenced by VRJugglerScene::prepare, FreeVRScene::prepare, CaveScene::prepare, and VMDApp::VMDupdate. |
|
Definition at line 509 of file Scene.C. References activate_adv_light, activate_light, def_light_color, def_light_on, def_light_pos, define_adv_light, define_light, and DISP_LIGHTS. Referenced by Scene. |
|
routines to deal with standard directional light sources.
Definition at line 382 of file Scene.C. References DISP_LIGHTS, mat, Matrix4::multpoint3d, n, and Matrix4::rot. Referenced by VMDApp::light_rotate. |
|
Change background drawing mode.
Definition at line 336 of file Scene.C. Referenced by VMDApp::display_set_background_mode, and Scene. |
|
change color properties These return void because there is _no_ error checking.
Definition at line 225 of file Scene.h. References Displayable::color_changed, NameList::data, and NameList::set_data. Referenced by VMDApp::color_change_name, and VMDApp::color_change_namelist. |
|
routines to get/set color properties.
Definition at line 230 of file Scene.h. References Displayable::color_rgb_changed, and n. Referenced by VMDApp::color_change_rgb, VMDApp::color_change_rgblist, and Scene. |
|
Set the color scale colors from the given arrays.
Definition at line 905 of file Scene.C. References ColorScale::max, ColorScale::mid, ColorScale::min, and ResizeArray< ColorScale >::num. Referenced by VMDApp::set_colorscale_colors. |
|
routines to get/set color properties.
Definition at line 283 of file Scene.h. Referenced by VMDApp::colorscale_setmethod. |
|
Color scale management methods.
Definition at line 276 of file Scene.h. Referenced by VMDApp::colorscale_setparams. |
|
The top level Displayable, parent of all other displayables in the scene. public for now since Scene replicates essentially the entire interface of Displayable.
Definition at line 166 of file Scene.h. Referenced by VMDApp::color_set_restype, VMDApp::display_titlescreen, draw, filedraw, VMDApp::molecule_from_selection_list, VMDApp::molecule_new, prepare, Scene, VMDApp::scene_resetview, VMDApp::scene_rotate_by, VMDApp::scene_rotate_to, VMDApp::scene_scale_by, VMDApp::scene_scale_to, VMDApp::scene_translate_by, VMDApp::scene_translate_to, and VMDApp::VMDinit. |