Show
Ignore:
Timestamp:
05/14/09 15:40:02 (6 years ago)
Author:
robert
Message:

Integrated support for relative paths, and http hosted presentations

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • OpenSceneGraph/trunk/applications/present3D/SlideShowConstructor.h

    r10117 r10207  
    115115    struct PositionData 
    116116    { 
    117         PositionData(): 
     117        PositionData(): 
    118118            frame(SlideShowConstructor::SLIDE), 
    119119            position(0.0f,1.0f,0.0f), 
     
    123123            rotation(0.0f,0.0f,1.0f,0.0f), 
    124124            absolute_path(false), 
    125             inverse_path(false), 
     125            inverse_path(false), 
    126126            path_time_offset(0.0), 
    127127            path_time_multiplier(1.0f), 
     
    156156        } 
    157157 
    158         CoordinateFrame                         frame; 
    159         osg::Vec3                               position; 
    160         osg::Vec3                               scale; 
    161         osg::Vec4                               rotate; 
    162         osg::Vec4                               rotation; 
     158        CoordinateFrame                         frame; 
     159        osg::Vec3                               position; 
     160        osg::Vec3                               scale; 
     161        osg::Vec4                               rotate; 
     162        osg::Vec4                               rotation; 
    163163        std::string                             animation_name; 
    164         bool                                    absolute_path; 
    165         bool                                    inverse_path; 
     164        bool                                    absolute_path; 
     165        bool                                    inverse_path; 
    166166        double                                  path_time_offset; 
    167167        double                                  path_time_multiplier; 
    168168        osg::AnimationPath::LoopMode            path_loop_mode; 
    169         std::string                             path; 
     169        std::string                             path; 
    170170        double                                  animation_material_time_offset; 
    171171        double                                  animation_material_time_multiplier; 
    172172        ss3d::AnimationMaterial::LoopMode       animation_material_loop_mode; 
    173         std::string                             animation_material_filename; 
    174         std::string                             fade; 
     173        std::string                             animation_material_filename; 
     174        std::string                             fade; 
    175175    }; 
    176176 
     
    207207    struct FontData 
    208208    { 
    209         FontData(): 
    210             font("fonts/arial.ttf"), 
    211             layout(osgText::Text::LEFT_TO_RIGHT), 
    212             alignment(osgText::Text::LEFT_BASE_LINE), 
    213             axisAlignment(osgText::Text::XZ_PLANE), 
    214             characterSize(0.04f), 
    215             maximumHeight(1.0f), 
    216             maximumWidth(1.0f), 
    217             color(1.0f,1.0f,1.0f,1.0f) {} 
    218      
    219         std::string                     font; 
    220         osgText::Text::Layout           layout; 
    221         osgText::Text::AlignmentType    alignment; 
    222         osgText::Text::AxisAlignment    axisAlignment; 
    223         float                           characterSize; 
    224         float                           maximumHeight; 
    225         float                           maximumWidth; 
    226         osg::Vec4                       color; 
     209        FontData(): 
     210            font("fonts/arial.ttf"), 
     211            layout(osgText::Text::LEFT_TO_RIGHT), 
     212            alignment(osgText::Text::LEFT_BASE_LINE), 
     213            axisAlignment(osgText::Text::XZ_PLANE), 
     214            characterSize(0.04f), 
     215            maximumHeight(1.0f), 
     216            maximumWidth(1.0f), 
     217            color(1.0f,1.0f,1.0f,1.0f) {} 
     218 
     219        std::string                     font; 
     220        osgText::Text::Layout           layout; 
     221        osgText::Text::AlignmentType    alignment; 
     222        osgText::Text::AxisAlignment    axisAlignment; 
     223        float                           characterSize; 
     224        float                           maximumHeight; 
     225        float                           maximumWidth; 
     226        osg::Vec4                       color; 
    227227    }; 
    228228 
    229229 
    230     SlideShowConstructor(); 
     230    SlideShowConstructor(const osgDB::ReaderWriter::Options* options); 
    231231 
    232232    void createPresentation(); 
     
    347347    osg::Vec3 convertModelToSlide(const osg::Vec3& position) const; 
    348348 
    349     osg::AnimationPath* readPivotPath(const std::string& filename) const; 
    350     osg::AnimationPath* readRotationPath(const std::string& filename) const; 
    351  
    352349    osg::AnimationPathCallback* getAnimationPathCallback(const PositionData& positionData); 
    353350     
     
    361358        return stateset; 
    362359    } 
     360 
     361    osg::ref_ptr<const osgDB::ReaderWriter::Options> _options; 
    363362 
    364363    osg::Vec3   _slideOrigin; 
     
    412411    std::string findFileAndRecordPath(const std::string& filename); 
    413412     
     413    void recordOptionsFilePath(const osgDB::Options* options); 
     414 
    414415}; 
    415416