root/OpenSceneGraph/trunk/src/osgPlugins/Inventor/ReaderWriterIV.h @ 11032

Revision 11032, 1.1 kB (checked in by robert, 5 years ago)

From Jan Peciva, "I am sending improved version of Inventor plugin. Attaching just
modified files, while GroupSoLOD.h and .cpp was deleted. Please, delete
it from repository, it is not used any longer and I doubt if it is
probably not used for anything meaningful for a while. In the new code,
there is no GroupSoLOD. Please, delete it.

I am using new plugin version for about 1.5 month so I consider it
stable by myself.

List of changes:
- rewritten Inventor state stack
- shaders support
- light attenuation support
- support for reading from stream (readNode(std::istream& fin, options))
- improved grouping node handling (SoSeparator?, SoGroup?,...)
- fixed transformation bug when two SoShapes/Drawables? with different transformations are placed bellow one grouping node
- introduced preprocessing to handle more advanced usage schemes of SoLOD and SoSwitch? nodes
- unused code clean up
- improved notify messages
- animation callbacks fixes
- FindInventor?.cmake improved finding routines, support for Coin3 and Coin4"

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
RevLine 
[2225]1#ifndef _READERWRITERIV_H_
2#define _READERWRITERIV_H_
3
4#include <osgDB/Registry>
5#include <osgDB/FileNameUtils>
6
7class ReaderWriterIV : public osgDB::ReaderWriter
8{
9    public:
10        ReaderWriterIV();
[11032]11
[3539]12        virtual const char* className() const
[11032]13        {
14            return "Inventor reader/writer";
[2225]15        }
[11032]16
[7348]17        bool isInventorExtension(const std::string& extension) const
18        {
19            return osgDB::equalCaseInsensitive(extension, "iv") ? true : false;
20        }
21
[11032]22        virtual ReadResult readNode(const std::string& filename,
23                                    const osgDB::ReaderWriter::Options*) const;
24        virtual ReadResult readNode(std::istream& fin,
25                                    const osgDB::ReaderWriter::Options* = NULL) const;
[2225]26
[11032]27
[7348]28        virtual WriteResult writeNode(const osg::Node& node, const std::string& filename,
29                                      const osgDB::ReaderWriter::Options* options = NULL) const;
[11032]30
31    protected:
32        void initInventor() const;
33        ReadResult readNodeFromSoInput(class SoInput&,
34                  std::string &fileName, const osgDB::ReaderWriter::Options*) const;
[2225]35};
36
37#endif
Note: See TracBrowser for help on using the browser.