Changeset 3247
- Timestamp:
- 08/06/04 10:56:18 (9 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/src/osgPlugins/osg/ReaderWriterOSG.cpp
r2501 r3247 1 #include <sstream> 2 1 3 #include <osg/Image> 2 4 #include <osg/Group> … … 80 82 } 81 83 82 v irtual WriteResult writeObject(const Object& obj,const std::string& fileName, const osgDB::ReaderWriter::Options*)84 void setPrecision(Output& fout, const osgDB::ReaderWriter::Options* options) 83 85 { 84 Output fout; 85 fout.open(fileName.c_str()); 86 if (options) 87 { 88 std::istringstream iss(options->getOptionString()); 89 std::string opt; 90 while (iss >> opt) { 91 if(opt=="PRECISION" || opt=="precision") { 92 int prec; 93 iss >> prec; 94 fout.precision(prec); 95 } 96 } 97 } 98 } 99 100 virtual WriteResult writeObject(const Object& obj,const std::string& fileName, const osgDB::ReaderWriter::Options* options) 101 { 102 Output fout(fileName.c_str()); 86 103 if (fout) 87 104 { 105 setPrecision(fout,options); 106 88 107 fout.writeObject(obj); 89 108 fout.close(); … … 93 112 } 94 113 95 virtual WriteResult writeNode(const Node& node,const std::string& fileName, const osgDB::ReaderWriter::Options* )114 virtual WriteResult writeNode(const Node& node,const std::string& fileName, const osgDB::ReaderWriter::Options* options) 96 115 { 97 116 std::string ext = getFileExtension(fileName); 98 117 if (!acceptsExtension(ext)) return WriteResult::FILE_NOT_HANDLED; 99 118 119 100 120 Output fout(fileName.c_str()); 101 121 if (fout) 102 122 { 123 setPrecision(fout,options); 124 103 125 fout.writeObject(node); 104 126 fout.close();
