OpenSceneGraph 3.6.5
SlideShowConstructor
Go to the documentation of this file.
1/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2018 Robert Osfield
2 *
3 * This library is open source and may be redistributed and/or modified under
4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
5 * (at your option) any later version. The full license is in LICENSE file
6 * included with this distribution, and on the openscenegraph.org website.
7 *
8 * This library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * OpenSceneGraph Public License for more details.
12*/
13
14#ifndef SLIDESHOWCONSTRUCTOR
15#define SLIDESHOWCONSTRUCTOR
16
17#include <osg/Vec3>
18#include <osg/Vec4>
19#include <osg/ImageUtils>
20#include <osg/Group>
21#include <osg/ClearNode>
22#include <osg/Switch>
23#include <osg/AnimationPath>
24#include <osg/TransferFunction>
25#include <osg/ImageStream>
26#include <osg/ImageSequence>
27#include <osg/ScriptEngine>
28#include <osgText/Text>
29#include <osgGA/GUIEventAdapter>
30
31#include <osgDB/FileUtils>
32
33#include <osgVolume/VolumeTile>
35
40
41namespace osgPresentation
42{
43
44
45
47{
48 public:
49
51
53
55
56protected:
57
58 virtual ~HUDTransform();
59
61
62};
63
65{
66public:
67
68
70
71
72
74
75 void setDuration(osg::Node* node,double duration)
76 {
77 getOrCreateLayerAttributes(node)->setDuration(duration);
78 }
79
80 void addKey(osg::Node* node,const KeyPosition& kp)
81 {
82 getOrCreateLayerAttributes(node)->addKey(kp);
83 }
84
85 void addRunString(osg::Node* node, const std::string& runString)
86 {
87 getOrCreateLayerAttributes(node)->addRunString(runString);
88 }
89
90 void setJump(osg::Node* node, const JumpData& jumpData)
91 {
92 getOrCreateLayerAttributes(node)->setJump(jumpData);
93 }
94
100
101 void addPresentationRunString(const std::string& runString)
102 {
104 if (_presentationSwitch.valid()) addRunString( _presentationSwitch.get(),runString);
105 }
106
107 void addSlideKey(const KeyPosition& kp)
108 {
109 if (!_slide) addSlide();
110 if (_slide.valid()) addKey(_slide.get(),kp);
111 }
112
113 void addSlideRunString(const std::string& runString)
114 {
115 if (!_slide) addSlide();
116 if (_slide.valid()) addRunString(_slide.get(),runString);
117 }
118
119 void setSlideJump(const JumpData& jumpData)
120 {
121 if (!_slide) addSlide();
122 if (_slide.valid()) setJump(_slide.get(),jumpData);
123 }
124
125 void addLayerKey(const KeyPosition& kp)
126 {
127 if (!_currentLayer) addLayer();
128 if (_currentLayer.valid()) addKey(_currentLayer.get(),kp);
129 }
130
131 void addLayerRunString(const std::string& runString)
132 {
133 if (!_currentLayer) addLayer();
134 if (_currentLayer.valid()) addRunString(_currentLayer.get(),runString);
135 }
136
137
138 void setLayerJump(const JumpData& jumpData)
139 {
140 if (!_currentLayer) addLayer();
141 if (_currentLayer.valid()) setJump(_currentLayer.get(),jumpData);
142 }
143
144
145
147 {
150 position(0.0f,1.0f,0.0f),
151 //position(0.5f,0.5f,0.0f),
152 scale(1.0f,1.0f,1.0f),
153 rotate(0.0f,0.0f,0.0f,1.0f),
154 rotation(0.0f,0.0f,1.0f,0.0f),
155 absolute_path(false),
156 inverse_path(false),
157 path_time_offset(0.0),
159 path_loop_mode(osg::AnimationPath::NO_LOOPING),
163 autoRotate(false),
164 autoScale(false),
165 hud(false) {}
166
167
168 bool requiresPosition() const
169 {
170 return (position[0]!=0.0f || position[1]!=1.0f || position[2]!=1.0f);
171 }
172
173 bool requiresScale() const
174 {
175 return (scale[0]!=1.0f || scale[1]!=1.0f || scale[2]!=1.0f);
176 }
177
178 bool requiresRotate() const
179 {
180 return rotate[0]!=0.0f;
181 }
182
183 bool requiresAnimation() const
184 {
185 return (rotation[0]!=0.0f || !path.empty());
186 }
187
189 {
190 return !animation_material_filename.empty() || !fade.empty();
191 }
192
198 std::string animation_name;
204 std::string path;
209 std::string fade;
212 bool hud;
213 };
214
216 {
218
219 std::string region;
220 std::string effect;
221 std::string options;
222 };
223
285
333
334
335 struct FontData
336 {
338 font("fonts/arial.ttf"),
339 layout(osgText::Text::LEFT_TO_RIGHT),
340 alignment(osgText::Text::LEFT_BASE_LINE),
341 axisAlignment(osgText::Text::XZ_PLANE),
342 characterSizeMode(osgText::Text::OBJECT_COORDS),
343 characterSize(0.04f),
344 maximumHeight(1.0f),
345 maximumWidth(1.0f),
346 color(1.0f,1.0f,1.0f,1.0f) {}
347
348 std::string font;
357 };
358
364
365 typedef std::pair<ScriptCallbackType, std::string> ScriptPair;
366
368 {
370
371 typedef std::vector<ScriptPair> Scripts;
373
374 bool hasScripts() const { return !scripts.empty(); }
375 };
376
378
380
381 void setBackgroundColor(const osg::Vec4& color, bool updateClearNode);
383
384 void setTextColor(const osg::Vec4& color);
385 const osg::Vec4& getTextColor() const { return _textFontDataDefault.color; }
386
387 void setPresentationName(const std::string& name);
388
389 void setPresentationAspectRatio(float aspectRatio);
390
391 void setPresentationAspectRatio(const std::string& str);
392
393 void setPresentationDuration(double duration);
394
395 void addScriptEngine(const std::string& scriptEngineName);
396
397 void addScriptFile(const std::string& name, const std::string& filename);
398
399 void addScript(const std::string& name, const std::string& language, const std::string& script);
400
401 void addSlide();
402
403 void selectSlide(int slideNum);
404
405
406 void setSlideTitle(const std::string& name, PositionData& positionData, FontData& fontData)
407 {
408 _titlePositionData = positionData;
409 _titleFontData = fontData;
410 _slideTitle = name;
411 }
412
414 void setSlideBackground(const std::string& name) { _slideBackgroundImageFileName = name; }
415
416 void setSlideDuration(double duration);
417
419
420 void addLayer(bool inheritPreviousLayers=true, bool defineAsBaseLayer=false);
421
422 void selectLayer(int layerNum);
423
424 void setLayerDuration(double duration);
425
426
427 // title settings
430
433
434 // text settings
437
440
441 void translateTextCursor(const osg::Vec3& delta) { _textPositionData.position += delta; }
442
443 // image settings
446
447 // model settings
450
451
457
459
460 void keyToDoOperation(PresentationContext presentationContext, int key, Operation operation, const JumpData& jumpData=JumpData());
461 void keyToDoOperation(PresentationContext presentationContext, int key, const std::string& command, Operation operation, const JumpData& jumpData=JumpData());
462 void keyEventOperation(PresentationContext presentationContext, int key, const KeyPosition& keyPos, const JumpData& jumpData=JumpData());
463
464 void layerClickToDoOperation(Operation operation, const JumpData& jumpData=JumpData());
465 void layerClickToDoOperation(const std::string& command, Operation operation, const JumpData& jumpData=JumpData());
466 void layerClickEventOperation(const KeyPosition& keyPos, const JumpData& jumpData=JumpData());
467
468 void addPropertyAnimation(PresentationContext presentationContext, PropertyAnimation* propertyAnimation);
469
470 void addScriptCallback(PresentationContext presentationContext, ScriptCallbackType scriptCallbackType, const std::string& functionName);
471
472 void addScriptToNode(ScriptCallbackType scriptCallbackType, const std::string& name, osg::Node* node);
473
474 void addScriptsToNode(const ScriptData& scriptData, osg::Node* node);
475
477
478 void addBullet(const std::string& bullet, PositionData& positionData, FontData& fontData, const ScriptData& scriptData);
479
480 void addParagraph(const std::string& paragraph, PositionData& positionData, FontData& fontData, const ScriptData& scriptData);
481
482 osg::ref_ptr<osg::Image> readImage(const std::string& filename, const ImageData& imageData);
483
484 void addImage(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const ScriptData& scriptData);
485
486 void addStereoImagePair(const std::string& filenameLeft, const ImageData& imageDataLeft, const std::string& filenameRight,const ImageData& imageDataRight, const PositionData& positionData, const ScriptData& scriptData);
487
488 void addGraph(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const ScriptData& scriptData);
489 void addVNC(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const std::string& password, const ScriptData& scriptData);
490 void addBrowser(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const ScriptData& scriptData);
491 void addPDF(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const ScriptData& scriptData);
492 osg::ref_ptr<osg::Image> addInteractiveImage(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const ScriptData& scriptData);
493
494 void addModel(osg::Node* subgraph, const PositionData& positionData, const ModelData& modelData, const ScriptData& scriptData);
495
496 void addModel(const std::string& filename, const PositionData& positionData, const ModelData& modelData, const ScriptData& scriptData);
497
498 void setUpVolumeScalarProperty(osgVolume::VolumeTile* tile, osgVolume::ScalarProperty* property, const std::string& source);
499
500 void addVolume(const std::string& filename, const PositionData& positionData, const VolumeData& volumeData, const ScriptData& scriptData);
501
502 osg::Group* takePresentation() { return _root.release(); }
503
504 osg::Group* getPresentation() { return _root.get(); }
505
507
508 osg::Switch* getCurrentSlide() { return _slide.get(); }
509
510 void pushCurrentLayer(osg::Group* newLayerGroup);
512
514
515 void setLoopPresentation(bool loop) { _loopPresentation = loop; }
516 bool getLoopPresentation() const { return _loopPresentation; }
517
518 void setAutoSteppingActive(bool flag = true) { _autoSteppingActive = flag; }
520
521 void setHUDSettings(HUDSettings* hudSettings) { _hudSettings = hudSettings; }
523 const HUDSettings* getHUDSettings() const { return _hudSettings.get(); }
524
525 osg::ScriptEngine* getOrCreateScriptEngine(const std::string& language);
526
527protected:
528
530
531 osg::Geometry* createTexturedQuadGeometry(const osg::Vec3& pos, const osg::Vec4& rotation, float width,float height, osg::Image* image, bool& usedTextureRectangle);
532 void setUpMovieVolume(osg::Node* subgraph, osg::ImageStream* imageStream, const ImageData& imageData);
533
535 void updatePositionFromInModelCoords(const osg::Vec3& vertex, PositionData& positionData) const;
536
539
541
543 bool attachTexMat(osg::StateSet* stateset, const ImageData& imageData, float s, float t, bool textureRectangle);
544
546 {
547 osg::StateSet* stateset = new osg::StateSet;
548 #if !defined(OSG_GLES2_AVAILABLE)
550 #endif
551 return stateset;
552 }
553
556
558
564 unsigned int _leftEyeMask;
565 unsigned int _rightEyeMask;
566
568
569 // title settings
572
575
576 // text settings
579
582
583 // image settings
586
587 // model settings
590
591
595 std::string _presentationName;
597
600
603
604 typedef std::map< std::string, osg::ref_ptr<osg::ScriptEngine> > ScriptEngineMap;
606
607 typedef std::map< std::string, osg::ref_ptr<osg::Script> > ScriptMap;
609
612 std::string _slideTitle;
615
618 typedef std::vector< osg::ref_ptr<osg::Group> > LayerStack;
620
622
624
625 typedef std::list< osg::ref_ptr<osgGA::GUIEventHandler> > EventHandlerList;
627
628
629 std::string findFileAndRecordPath(const std::string& filename);
630
632
633};
634
635}
636
637#endif
#define GL_NORMALIZE
Definition Transform:25
The core osg library provides the basic scene graph classes such as Nodes, State and Drawables,...
Definition AlphaFunc:19
ColorSpaceOperation
Definition ImageUtils:231
Vec3f Vec3
Definition Vec3:21
Matrixd Matrix
Definition Matrix:27
Vec4f Vec4
Definition Vec4:21
The osgPresentation library is a NodeKit that extends the core scene graph to support 3D scene graph ...
Definition AnimationMaterial:26
Operation
Operations related to click to run/load/key events.
Definition SlideEventHandler:36
The osgText library is a NodeKit that extends the core scene graph to support high quality text.
The osgVolume library is a NodeKit that extends the core scene graph to support volume rendering.
LoopMode
Definition AnimationPath:175
Definition AnimationPath:218
Definition Geometry:31
General group node which maintains a list of children.
Definition Group:29
Image class for encapsulating the storage texture image data.
Definition Image:179
Mode
Definition ImageSequence:73
Image Stream class.
Definition ImageStream:29
LoopingMode
Definition ImageStream:67
Base class for all internal nodes in the scene graph.
Definition Node:72
Visitor for type safe operations on osg::Nodes.
Definition NodeVisitor:82
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
ScriptEngine base class for integrating different scripting languages.
Definition ScriptEngine:101
@ ON
means that associated GLMode is enabled and Override is disabled.
Definition StateAttribute:103
Stores a set of modes and attributes which represent a set of OpenGL state.
Definition StateSet:46
void setMode(StateAttribute::GLMode mode, StateAttribute::GLModeValue value)
Set this StateSet to contain the specified GLMode with a given value.
Switch is a Group node that allows switching between children.
Definition Switch:27
A Transform is a group node for which all children are transformed by a 4x4 matrix.
Definition Transform:75
Options base class used for passing options into plugins to control their operation.
Definition Options:30
AnimationMaterial for specify the time varying transformation pathway to use when update camera and m...
Definition AnimationMaterial:33
LoopMode
Definition AnimationMaterial:56
Definition PropertyManager:133
Definition SlideEventHandler:46
Definition SlideEventHandler:161
Definition SlideEventHandler:220
HUDTransform(HUDSettings *hudSettings)
virtual bool computeLocalToWorldMatrix(osg::Matrix &matrix, osg::NodeVisitor *nv) const
osg::ref_ptr< HUDSettings > _hudSettings
Definition SlideShowConstructor:60
virtual bool computeWorldToLocalMatrix(osg::Matrix &matrix, osg::NodeVisitor *) const
unsigned int _leftEyeMask
Definition SlideShowConstructor:564
osg::ScriptEngine * getOrCreateScriptEngine(const std::string &language)
void addStereoImagePair(const std::string &filenameLeft, const ImageData &imageDataLeft, const std::string &filenameRight, const ImageData &imageDataRight, const PositionData &positionData, const ScriptData &scriptData)
PositionData & getImagePositionDataDefault()
Definition SlideShowConstructor:445
osg::ref_ptr< FilePathData > _filePathData
Definition SlideShowConstructor:621
void setAutoSteppingActive(bool flag=true)
Definition SlideShowConstructor:518
double _slideHeight
Definition SlideShowConstructor:562
void layerClickToDoOperation(const std::string &command, Operation operation, const JumpData &jumpData=JumpData())
EventHandlerList _currentEventCallbacksToApply
Definition SlideShowConstructor:626
PositionData & getModelPositionData()
Definition SlideShowConstructor:448
void addScriptsToNode(const ScriptData &scriptData, osg::Node *node)
LayerStack _layerStack
Definition SlideShowConstructor:619
FontData _titleFontData
Definition SlideShowConstructor:570
void translateTextCursor(const osg::Vec3 &delta)
Definition SlideShowConstructor:441
void addLayerRunString(const std::string &runString)
Definition SlideShowConstructor:131
void layerClickToDoOperation(Operation operation, const JumpData &jumpData=JumpData())
void addSlideRunString(const std::string &runString)
Definition SlideShowConstructor:113
std::string _slideTitle
Definition SlideShowConstructor:612
void addSlideKey(const KeyPosition &kp)
Definition SlideShowConstructor:107
HUDSettings * getHUDSettings()
Definition SlideShowConstructor:522
std::pair< ScriptCallbackType, std::string > ScriptPair
Definition SlideShowConstructor:365
void addParagraph(const std::string &paragraph, PositionData &positionData, FontData &fontData, const ScriptData &scriptData)
void pushCurrentLayer(osg::Group *newLayerGroup)
osg::StateSet * createTransformStateSet()
Definition SlideShowConstructor:545
PositionData & getTitlePositionData()
Definition SlideShowConstructor:431
osg::Group * getCurrentLayer()
Definition SlideShowConstructor:513
void layerClickEventOperation(const KeyPosition &keyPos, const JumpData &jumpData=JumpData())
void setBackgroundColor(const osg::Vec4 &color, bool updateClearNode)
void addToCurrentLayer(osg::Node *subgraph)
double _presentationDuration
Definition SlideShowConstructor:596
PositionData _imagePositionDataDefault
Definition SlideShowConstructor:585
FontData & getTextFontDataDefault()
Definition SlideShowConstructor:436
osg::ref_ptr< osg::Image > readImage(const std::string &filename, const ImageData &imageData)
double _slideDistance
Definition SlideShowConstructor:563
void addLayerKey(const KeyPosition &kp)
Definition SlideShowConstructor:125
std::string _slideBackgroundImageFileName
Definition SlideShowConstructor:613
void addPDF(const std::string &filename, const PositionData &positionData, const ImageData &imageData, const ScriptData &scriptData)
void addVolume(const std::string &filename, const PositionData &positionData, const VolumeData &volumeData, const ScriptData &scriptData)
const osg::Vec4 & getBackgroundColor() const
Definition SlideShowConstructor:382
PositionData _textPositionDataDefault
Definition SlideShowConstructor:581
bool getAutoSteppingActive() const
Definition SlideShowConstructor:519
osg::Group * getPresentation()
Definition SlideShowConstructor:504
PositionData _titlePositionDataDefault
Definition SlideShowConstructor:574
PositionData & getModelPositionDataDefault()
Definition SlideShowConstructor:449
osg::ref_ptr< osg::Switch > _slide
Definition SlideShowConstructor:611
void addKey(osg::Node *node, const KeyPosition &kp)
Definition SlideShowConstructor:80
PositionData & getTextPositionData()
Definition SlideShowConstructor:438
void setUpMovieVolume(osg::Node *subgraph, osg::ImageStream *imageStream, const ImageData &imageData)
PositionData _modelPositionData
Definition SlideShowConstructor:588
FontData & getTitleFontData()
Definition SlideShowConstructor:428
void setPresentationName(const std::string &name)
PositionData & getImagePositionData()
Definition SlideShowConstructor:444
osg::Node * decorateSubgraphForPosition(osg::Node *node, PositionData &positionData)
const HUDSettings * getHUDSettings() const
Definition SlideShowConstructor:523
void addBrowser(const std::string &filename, const PositionData &positionData, const ImageData &imageData, const ScriptData &scriptData)
PositionData & getTextPositionDataDefault()
Definition SlideShowConstructor:439
osg::Vec3 _eyeOrigin
Definition SlideShowConstructor:560
FontData _textFontDataDefault
Definition SlideShowConstructor:578
std::map< std::string, osg::ref_ptr< osg::ScriptEngine > > ScriptEngineMap
Definition SlideShowConstructor:604
FontData _textFontData
Definition SlideShowConstructor:577
osg::Group * takePresentation()
Definition SlideShowConstructor:502
void addScript(const std::string &name, const std::string &language, const std::string &script)
osg::ref_ptr< HUDSettings > _hudSettings
Definition SlideShowConstructor:567
osg::Switch * getCurrentSlide()
Definition SlideShowConstructor:508
osg::ref_ptr< osg::Image > addInteractiveImage(const std::string &filename, const PositionData &positionData, const ImageData &imageData, const ScriptData &scriptData)
osg::Vec3 computePositionInModelCoords(const PositionData &positionData) const
osg::AnimationPathCallback * getAnimationPathCallback(const PositionData &positionData)
void recordOptionsFilePath(const osgDB::Options *options)
CoordinateFrame
Definition SlideShowConstructor:69
@ MODEL
Definition SlideShowConstructor:69
@ SLIDE
Definition SlideShowConstructor:69
std::string _presentationName
Definition SlideShowConstructor:595
PositionData _imagePositionData
Definition SlideShowConstructor:584
osg::Vec3 convertModelToSlide(const osg::Vec3 &position) const
void setDuration(osg::Node *node, double duration)
Definition SlideShowConstructor:75
FontData _titleFontDataDefault
Definition SlideShowConstructor:571
void addImage(const std::string &filename, const PositionData &positionData, const ImageData &imageData, const ScriptData &scriptData)
void addPresentationRunString(const std::string &runString)
Definition SlideShowConstructor:101
void findImageStreamsAndAddCallbacks(osg::Node *node)
void setSlideJump(const JumpData &jumpData)
Definition SlideShowConstructor:119
void addScriptCallback(PresentationContext presentationContext, ScriptCallbackType scriptCallbackType, const std::string &functionName)
unsigned int _rightEyeMask
Definition SlideShowConstructor:565
osg::Vec3 _slideOrigin
Definition SlideShowConstructor:559
void setSlideDuration(double duration)
void setLayerDuration(double duration)
void setPresentationDuration(double duration)
void addEventHandler(PresentationContext presentationContext, osg::ref_ptr< osgGA::GUIEventHandler > handler)
ScriptCallbackType
Definition SlideShowConstructor:360
@ UPDATE_SCRIPT
Definition SlideShowConstructor:361
@ EVENT_SCRIPT
Definition SlideShowConstructor:362
PositionData & getTitlePositionDataDefault()
Definition SlideShowConstructor:432
void setJump(osg::Node *node, const JumpData &jumpData)
Definition SlideShowConstructor:90
void addPropertyAnimation(PresentationContext presentationContext, PropertyAnimation *propertyAnimation)
FontData & getTitleFontDataDefault()
Definition SlideShowConstructor:429
void setPresentationAspectRatio(float aspectRatio)
void setSlideTitle(const std::string &name, PositionData &positionData, FontData &fontData)
Definition SlideShowConstructor:406
osg::ref_ptr< osg::Switch > _presentationSwitch
Definition SlideShowConstructor:602
FontData & getTextFontData()
Definition SlideShowConstructor:435
void addGraph(const std::string &filename, const PositionData &positionData, const ImageData &imageData, const ScriptData &scriptData)
double _slideWidth
Definition SlideShowConstructor:561
osg::ref_ptr< osg::ClearNode > _slideClearNode
Definition SlideShowConstructor:610
osg::Geometry * createTexturedQuadGeometry(const osg::Vec3 &pos, const osg::Vec4 &rotation, float width, float height, osg::Image *image, bool &usedTextureRectangle)
std::list< osg::ref_ptr< osgGA::GUIEventHandler > > EventHandlerList
Definition SlideShowConstructor:625
bool _loopPresentation
Definition SlideShowConstructor:592
void updatePositionFromInModelCoords(const osg::Vec3 &vertex, PositionData &positionData) const
osg::ref_ptr< osgDB::Options > _options
Definition SlideShowConstructor:557
PositionData _textPositionData
Definition SlideShowConstructor:580
osg::ref_ptr< osg::Group > _root
Definition SlideShowConstructor:601
bool getLoopPresentation() const
Definition SlideShowConstructor:516
void addModel(const std::string &filename, const PositionData &positionData, const ModelData &modelData, const ScriptData &scriptData)
osg::Vec3 convertSlideToModel(const osg::Vec3 &position) const
void setUpVolumeScalarProperty(osgVolume::VolumeTile *tile, osgVolume::ScalarProperty *property, const std::string &source)
const osg::Vec4 & getTextColor() const
Definition SlideShowConstructor:385
osg::ref_ptr< osgPresentation::PropertyEventCallback > _propertyEventCallback
Definition SlideShowConstructor:599
std::vector< osg::ref_ptr< osg::Group > > LayerStack
Definition SlideShowConstructor:618
void addModel(osg::Node *subgraph, const PositionData &positionData, const ModelData &modelData, const ScriptData &scriptData)
osg::ref_ptr< osg::Group > _currentLayer
Definition SlideShowConstructor:617
void addVNC(const std::string &filename, const PositionData &positionData, const ImageData &imageData, const std::string &password, const ScriptData &scriptData)
bool attachTexMat(osg::StateSet *stateset, const ImageData &imageData, float s, float t, bool textureRectangle)
void keyEventOperation(PresentationContext presentationContext, int key, const KeyPosition &keyPos, const JumpData &jumpData=JumpData())
void addScriptToNode(ScriptCallbackType scriptCallbackType, const std::string &name, osg::Node *node)
void addLayer(bool inheritPreviousLayers=true, bool defineAsBaseLayer=false)
void setLayerJump(const JumpData &jumpData)
Definition SlideShowConstructor:138
osg::ref_ptr< osg::Group > _layerToApplyEventCallbackTo
Definition SlideShowConstructor:623
PositionData _modelPositionDataDefault
Definition SlideShowConstructor:589
void setPresentationAspectRatio(const std::string &str)
PositionData _titlePositionData
Definition SlideShowConstructor:573
void addRunString(osg::Node *node, const std::string &runString)
Definition SlideShowConstructor:85
void setHUDSettings(HUDSettings *hudSettings)
Definition SlideShowConstructor:521
osg::Vec4 _backgroundColor
Definition SlideShowConstructor:594
LayerAttributes * getOrCreateLayerAttributes(osg::Node *node)
void keyToDoOperation(PresentationContext presentationContext, int key, const std::string &command, Operation operation, const JumpData &jumpData=JumpData())
void keyToDoOperation(PresentationContext presentationContext, int key, Operation operation, const JumpData &jumpData=JumpData())
void setTextColor(const osg::Vec4 &color)
osg::Node * attachMaterialAnimation(osg::Node *model, const PositionData &positionData)
void setLoopPresentation(bool loop)
Definition SlideShowConstructor:515
void setSlideBackground(const std::string &name)
Definition SlideShowConstructor:414
void addBullet(const std::string &bullet, PositionData &positionData, FontData &fontData, const ScriptData &scriptData)
SlideShowConstructor(osgDB::Options *options)
void setSlideBackgrondHUD(bool hud)
Definition SlideShowConstructor:413
ScriptMap _scripts
Definition SlideShowConstructor:608
void addPresentationKey(const KeyPosition &kp)
Definition SlideShowConstructor:95
osg::Node * decorateSubgraphForPositionAndAnimation(osg::Node *node, const PositionData &positionData)
osg::Switch * getPresentationSwitch()
Definition SlideShowConstructor:506
void addScriptEngine(const std::string &scriptEngineName)
std::string findFileAndRecordPath(const std::string &filename)
void addScriptFile(const std::string &name, const std::string &filename)
osg::ref_ptr< osg::Group > _previousLayer
Definition SlideShowConstructor:616
osg::ref_ptr< osgPresentation::PropertyManager > _propertyManager
Definition SlideShowConstructor:598
ScriptEngineMap _scriptEngines
Definition SlideShowConstructor:605
bool _slideBackgroundAsHUD
Definition SlideShowConstructor:614
std::map< std::string, osg::ref_ptr< osg::Script > > ScriptMap
Definition SlideShowConstructor:607
PresentationContext
Definition SlideShowConstructor:452
@ CURRENT_LAYER
Definition SlideShowConstructor:455
@ CURRENT_PRESENTATION
Definition SlideShowConstructor:453
@ CURRENT_SLIDE
Definition SlideShowConstructor:454
bool _autoSteppingActive
Definition SlideShowConstructor:593
Definition SlideShowConstructor:147
bool requiresScale() const
Definition SlideShowConstructor:173
osg::Vec3 scale
Definition SlideShowConstructor:195
bool inverse_path
Definition SlideShowConstructor:200
double animation_material_time_offset
Definition SlideShowConstructor:205
bool requiresPosition() const
Definition SlideShowConstructor:168
bool requiresMaterialAnimation() const
Definition SlideShowConstructor:188
bool requiresAnimation() const
Definition SlideShowConstructor:183
osg::Vec4 rotation
Definition SlideShowConstructor:197
AnimationMaterial::LoopMode animation_material_loop_mode
Definition SlideShowConstructor:207
bool autoScale
Definition SlideShowConstructor:211
bool hud
Definition SlideShowConstructor:212
CoordinateFrame frame
Definition SlideShowConstructor:193
bool requiresRotate() const
Definition SlideShowConstructor:178
PositionData()
Definition SlideShowConstructor:148
osg::Vec3 position
Definition SlideShowConstructor:194
osg::AnimationPath::LoopMode path_loop_mode
Definition SlideShowConstructor:203
bool autoRotate
Definition SlideShowConstructor:210
std::string fade
Definition SlideShowConstructor:209
bool absolute_path
Definition SlideShowConstructor:199
std::string animation_name
Definition SlideShowConstructor:198
double animation_material_time_multiplier
Definition SlideShowConstructor:206
double path_time_multiplier
Definition SlideShowConstructor:202
double path_time_offset
Definition SlideShowConstructor:201
std::string animation_material_filename
Definition SlideShowConstructor:208
osg::Vec4 rotate
Definition SlideShowConstructor:196
std::string path
Definition SlideShowConstructor:204
Definition SlideShowConstructor:216
std::string effect
Definition SlideShowConstructor:220
std::string region
Definition SlideShowConstructor:219
ModelData()
Definition SlideShowConstructor:217
std::string options
Definition SlideShowConstructor:221
Definition SlideShowConstructor:225
osg::Vec4 region
Definition SlideShowConstructor:250
double duration
Definition SlideShowConstructor:257
float texcoord_rotate
Definition SlideShowConstructor:252
BlendingHint blendingHint
Definition SlideShowConstructor:277
int page
Definition SlideShowConstructor:254
float width
Definition SlideShowConstructor:248
ImageSequenceInteractionMode
Definition SlideShowConstructor:263
@ USE_MOUSE_X_POSITION
Definition SlideShowConstructor:265
@ USE_MOUSE_Y_POSITION
Definition SlideShowConstructor:266
@ PLAY_AUTOMATICALLY_LIKE_MOVIE
Definition SlideShowConstructor:264
bool region_in_pixel_coords
Definition SlideShowConstructor:251
std::string options
Definition SlideShowConstructor:247
ImageSequenceInteractionMode imageSequenceInteractionMode
Definition SlideShowConstructor:268
BlendingHint
Definition SlideShowConstructor:271
@ OFF
Definition SlideShowConstructor:273
@ ON
Definition SlideShowConstructor:274
@ USE_IMAGE_ALPHA
Definition SlideShowConstructor:272
double delayTime
Definition SlideShowConstructor:279
float height
Definition SlideShowConstructor:249
double startTime
Definition SlideShowConstructor:280
std::string volume
Definition SlideShowConstructor:282
double fps
Definition SlideShowConstructor:256
osg::Vec4 backgroundColor
Definition SlideShowConstructor:255
osg::ImageStream::LoopingMode loopingMode
Definition SlideShowConstructor:253
bool imageSequence
Definition SlideShowConstructor:259
ImageData()
Definition SlideShowConstructor:226
double stopTime
Definition SlideShowConstructor:281
osg::ImageSequence::Mode imageSequencePagingMode
Definition SlideShowConstructor:260
Definition SlideShowConstructor:287
std::string alphaValue
Definition SlideShowConstructor:318
osgVolume::VolumeSettings::Technique Technique
Definition SlideShowConstructor:289
osgVolume::VolumeSettings::ShadingModel ShadingModel
Definition SlideShowConstructor:288
bool region_in_pixel_coords
Definition SlideShowConstructor:317
osg::ref_ptr< osg::TransferFunction1D > transferFunction
Definition SlideShowConstructor:313
std::string cutoffValue
Definition SlideShowConstructor:319
osg::Vec4 colorModulate
Definition SlideShowConstructor:328
PositionData hullPositionData
Definition SlideShowConstructor:331
bool useTabbedDragger
Definition SlideShowConstructor:314
std::string region
Definition SlideShowConstructor:316
std::string exteriorTransparencyFactorValue
Definition SlideShowConstructor:320
std::string sampleRatioWhenMovingValue
Definition SlideShowConstructor:325
std::string options
Definition SlideShowConstructor:311
bool useTrackballDragger
Definition SlideShowConstructor:315
std::string hull
Definition SlideShowConstructor:330
std::string sampleDensityValue
Definition SlideShowConstructor:321
osg::ref_ptr< osgVolume::VolumeSettings > volumeSettings
Definition SlideShowConstructor:309
osg::ColorSpaceOperation colorSpaceOperation
Definition SlideShowConstructor:327
ShadingModel shadingModel
Definition SlideShowConstructor:312
VolumeData()
Definition SlideShowConstructor:291
std::string sampleDensityWhenMovingValue
Definition SlideShowConstructor:322
std::string sampleRatioValue
Definition SlideShowConstructor:324
Technique technique
Definition SlideShowConstructor:329
Definition SlideShowConstructor:336
osgText::Text::Layout layout
Definition SlideShowConstructor:349
std::string font
Definition SlideShowConstructor:348
float maximumHeight
Definition SlideShowConstructor:354
osg::Vec4 color
Definition SlideShowConstructor:356
osgText::Text::AlignmentType alignment
Definition SlideShowConstructor:350
osgText::Text::AxisAlignment axisAlignment
Definition SlideShowConstructor:351
float characterSize
Definition SlideShowConstructor:353
FontData()
Definition SlideShowConstructor:337
float maximumWidth
Definition SlideShowConstructor:355
osgText::Text::CharacterSizeMode characterSizeMode
Definition SlideShowConstructor:352
Definition SlideShowConstructor:368
Scripts scripts
Definition SlideShowConstructor:372
bool hasScripts() const
Definition SlideShowConstructor:374
ScriptData()
Definition SlideShowConstructor:369
std::vector< ScriptPair > Scripts
Definition SlideShowConstructor:371
Definition Timeout:24
Definition Timeout:43
AlignmentType
Definition TextBase:169
Layout
Definition TextBase:220
AxisAlignment
Definition TextBase:199
CharacterSizeMode
Definition TextBase:119
Definition Property:227
ShadingModel
Definition VolumeSettings:50
Technique
Definition VolumeSettings:40
VolumeTile provides a framework for loosely coupling 3d image data with rendering algorithms.
Definition VolumeTile:70
#define OSGPRESENTATION_EXPORT
Definition Export:38

osg logo
Generated at Wed Jul 23 2025 00:00:00 for the OpenSceneGraph by doxygen 1.14.0.