#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... | |
| void | set_colorscale_value (float min, float mid, float max) |
| routines to get/set color properties. More... | |
| void | set_colorscale_method (int method) |
| routines to get/set color properties. More... | |
| int | get_category_item (int cat_id, int item) |
| 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... | |
| 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... | |
| void | colorscale_value (float *mid, float *min, float *max) const |
| color scale methods. More... | |
| int | num_colorscale_methods () const |
| routines to get/set color properties. More... | |
| int | colorscale_method () const |
| routines to get/set color properties. More... | |
| const char * | colorscale_method_name (int n) 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... | |
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 85 of file Scene.h.
|
|
constructor.
Definition at line 137 of file Scene.C. References NameList< int >::add_name, ResizeArray< ColorScale >::append, BEGREGCLRS, defColorNames, num_scalemethods, REGBLACK, REGBLUE2, REGCLRS, REGWHITE, reset_lights, root, set_background_mode, and set_color_value. |
|
|
destructor.
Definition at line 176 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 287 of file Scene.C. References DISP_LIGHTS. Referenced by reset_lights, and text_cmd_point_light. |
|
||||||||||||
|
routines to deal with standard directional light sources.
Definition at line 222 of file Scene.C. References DISP_LIGHTS. Referenced by VMDApp::light_on, and reset_lights. |
|
|
routines to get/set color properties.
Definition at line 208 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 212 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_new, VMDApp::molecule_rename, and Stage::Stage. |
|
|
routines to deal with advanced positional light sources.
Definition at line 202 of file Scene.h. Referenced by text_cmd_point_light. |
|
||||||||||||||||||||
|
routines to deal with advanced positional light sources.
Definition at line 321 of file Scene.C. References DISP_LIGHTS. Referenced by text_cmd_point_light. |
|
|
routines to deal with advanced positional light sources.
Definition at line 311 of file Scene.C. References DISP_LIGHTS, and NULL. |
|
|
routines to deal with advanced positional light sources.
Definition at line 316 of file Scene.C. References def_light_color, DISP_LIGHTS, and NULL. |
|
||||||||||||||||||||
|
routines to deal with advanced positional light sources.
Definition at line 329 of file Scene.C. References DISP_LIGHTS. Referenced by text_cmd_point_light. |
|
||||||||||||||||||||
|
routines to deal with advanced positional light sources.
Definition at line 347 of file Scene.C. References DISP_LIGHTS, and NULL. |
|
|
routines to deal with advanced positional light sources.
Definition at line 203 of file Scene.h. Referenced by text_cmd_point_light. |
|
|
routines to deal with advanced positional light sources.
Definition at line 301 of file Scene.C. References DISP_LIGHTS, and NULL. Referenced by text_cmd_point_light. |
|
|
routines to deal with advanced positional light sources.
Definition at line 306 of file Scene.C. References def_adv_light_pos, DISP_LIGHTS, and NULL. Referenced by text_cmd_point_light. |
|
||||||||||||||||||||||||
|
routines to deal with advanced positional light sources.
Definition at line 337 of file Scene.C. References DISP_LIGHTS. |
|
|
Definition at line 189 of file Scene.C. Referenced by text_cmd_display. |
|
|
routines to get/set color properties.
Definition at line 255 of file Scene.h. References NameList::typecode. Referenced by VMDApp::color_add_item, VMDApp::color_category_item, VMDApp::color_changename, 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 272 of file Scene.h. References NameList::data. Referenced by VMDApp::color_changename, 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 269 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 278 of file Scene.h. References NameList::data. |
|
||||||||||||
|
routines to get/set color properties.
Definition at line 275 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 254 of file Scene.h. References NameList::name. Referenced by VMDApp::color_category. |
|
|
routines to get/set color properties.
Definition at line 265 of file Scene.h. Referenced by VMDApp::color_default_value. |
|
|
return index of color; returns -1 if name is not a valid color name.
Definition at line 263 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 260 of file Scene.h. References NameList::name. Referenced by VMDApp::color_mapping, VMDApp::color_name, and GraphicsFltkMenu::GraphicsFltkMenu. |
|
|
routines to get/set color properties.
Definition at line 264 of file Scene.h. Referenced by VMDApp::color_value, draw, ColorscaleImage::draw, filedraw, VolumeTexture::generateColorScaleTexture, hill_reilly_ring_colorscale, nearest_index, and DispCmdPointArray::putdata. |
|
|
routines to get/set color properties.
Definition at line 287 of file Scene.h. Referenced by VMDApp::colorscale_method_current. |
|
|
routines to get/set color properties.
Definition at line 288 of file Scene.h. Referenced by VMDApp::colorscale_method_index, VMDApp::colorscale_method_name, VMDApp::colorscale_setmethod, and VMDApp::set_colorscale_colors. |
|
||||||||||||||||
|
color scale methods.
Definition at line 283 of file Scene.h. Referenced by VMDApp::colorscale_info. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
routines to deal with advanced positional light sources.
Definition at line 265 of file Scene.C. References DISP_LIGHTS. Referenced by reset_lights. |
|
||||||||||||||||
|
routines to deal with standard directional light sources.
Definition at line 211 of file Scene.C. References DISP_LIGHTS. Referenced by reset_lights. |
|
|
|
perform any post-drawing cleanup, reset state caching variables, etc.
Reimplemented in VRJugglerScene. Definition at line 594 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 538 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::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 239 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 678 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 190 of file Scene.h. Referenced by text_cmd_point_light. |
|
||||||||||||
|
routines to deal with standard directional light sources.
Definition at line 172 of file Scene.h. Referenced by VMDApp::light_highlight. |
|
|
routines to deal with standard directional light sources.
Definition at line 179 of file Scene.h. Referenced by text_cmd_light. |
|
|
routines to deal with standard directional light sources.
Definition at line 254 of file Scene.C. References DISP_LIGHTS, and NULL. |
|
|
routines to deal with standard directional light sources.
Definition at line 259 of file Scene.C. References def_light_color, DISP_LIGHTS, and NULL. |
|
|
routines to deal with standard directional light sources.
Definition at line 180 of file Scene.h. Referenced by text_cmd_light. |
|
|
routines to deal with standard directional light sources.
Definition at line 244 of file Scene.C. References DISP_LIGHTS, and NULL. Referenced by text_cmd_light. |
|
|
routines to deal with standard directional light sources.
Definition at line 249 of file Scene.C. References def_light_pos, DISP_LIGHTS, and NULL. Referenced by text_cmd_light. |
|
||||||||||||
|
routines to deal with advanced positional light sources.
Definition at line 294 of file Scene.C. References DISP_LIGHTS. Referenced by text_cmd_point_light. |
|
||||||||||||
|
routines to deal with standard directional light sources.
Definition at line 238 of file Scene.C. References DISP_LIGHTS. Referenced by VMDApp::light_move. |
|
||||||||||||||||
|
nearest_index: deprecated but needed by ImportGraphicsPlugin and MoleculeRaster3D for now.
Definition at line 658 of file Scene.C. References BEGREGCLRS, color_value, and REGCLRS. Referenced by AtomColor::find, and MolFilePlugin::read_rawgraphics. |
|
|
query color information; all const methods that assume valid inputs.
Definition at line 253 of file Scene.h. References NameList::num. Referenced by VMDApp::num_color_categories. |
|
|
routines to get/set color properties.
Definition at line 266 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 258 of file Scene.h. References MAXCOLORS. |
|
|
routines to get/set color properties.
Definition at line 286 of file Scene.h. References ResizeArray::num. Referenced by VMDApp::colorscale_method_index, VMDApp::colorscale_method_name, VMDApp::colorscale_setmethod, and VMDApp::num_colorscale_methods. |
|
|
routines to get/set color properties.
Definition at line 259 of file Scene.h. References REGCLRS. |
|
|
prepare all registered Displayables return whether we need an update or not.
Reimplemented in CaveScene. Definition at line 379 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 356 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 229 of file Scene.C. References DISP_LIGHTS, mat, Matrix4::multpoint3d, and Matrix4::rot. Referenced by VMDApp::light_rotate. |
|
|
Change background drawing mode.
Definition at line 183 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 218 of file Scene.h. References Displayable::color_changed, NameList::data, and NameList::set_data. Referenced by VMDApp::color_changename. |
|
||||||||||||
|
routines to get/set color properties.
Definition at line 223 of file Scene.h. References Displayable::color_rgb_changed. Referenced by VMDApp::color_changevalue, and Scene. |
|
||||||||||||||||||||
|
Set the color scale colors from the given arrays.
Definition at line 691 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 231 of file Scene.h. Referenced by VMDApp::colorscale_setmethod. |
|
||||||||||||||||
|
routines to get/set color properties.
Definition at line 227 of file Scene.h. Referenced by VMDApp::colorscale_setvalues. |
|
|
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 160 of file Scene.h. Referenced by VMDApp::color_set_restype, VMDApp::display_titlescreen, draw, filedraw, 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. |
1.2.14 written by Dimitri van Heesch,
© 1997-2002