- Timestamp:
- 11/07/05 11:29:24 (8 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/examples/osgsimplifier/osgsimplifier.cpp
r4552 r4685 69 69 arguments.getApplicationUsage()->setCommandLineUsage(arguments.getApplicationName()+" [options] filename ..."); 70 70 arguments.getApplicationUsage()->addCommandLineOption("-h or --help","Display this information"); 71 arguments.getApplicationUsage()->addCommandLineOption("--ratio <ratio>","Specify the sample ratio","0.5]"); 72 arguments.getApplicationUsage()->addCommandLineOption("--max-error <error>","Specify the maximum error","4.0"); 71 73 72 74 73 75 float sampleRatio = 0.5f; 76 float maxError = 4.0f; 74 77 75 78 // construct the viewer. … … 83 86 84 87 // read the sample ratio if one is supplied 85 while (arguments.read("-s",sampleRatio)) {} 88 while (arguments.read("--ratio",sampleRatio)) {} 89 while (arguments.read("--max-error",maxError)) {} 86 90 87 91 // if user request help write it out to cout. … … 130 134 std::cout << "Time to load = "<<osg::Timer::instance()->delta_s(start_tick,end_tick)<<std::endl; 131 135 132 osgUtil::Simplifier simplifier(sampleRatio); 133 simplifier.setSampleRatio(1.0f); 134 simplifier.setMaximumError(0.4f); 136 osgUtil::Simplifier simplifier(sampleRatio, maxError); 135 137 136 138 //loadedModel->accept(simplifier); … … 146 148 147 149 float multiplier = 0.99f; 148 float minRatio = 0.00 f;149 float ratio = 0.5f;150 float minRatio = 0.001f; 151 float ratio = sampleRatio; 150 152 151 153 while( !viewer.done() ) … … 169 171 170 172 simplifier.setSampleRatio(ratio); 173 174 std::cout<<"Runing osgUtil::Simplifier with SampleRatio="<<ratio<<" maxError="<<maxError<<" ..."; 175 std::cout.flush(); 176 171 177 osg::ref_ptr<osg::Node> root = (osg::Node*)loadedModel->clone(osg::CopyOp::DEEP_COPY_ALL); 178 172 179 root->accept(simplifier); 180 181 std::cout<<"done"<<std::endl; 182 173 183 viewer.setSceneData(root.get()); 174 184 keyFlag = 0;
