|
楼主 |
发表于 2010-1-26 09:28:05
|
显示全部楼层
有一个师姐给我的程序可以看到三角形面片所所组成的样子,我把用osgViewer看到的图形的样子,跟三角形面片所组成的样子进行对比,发现有的模型在两种情况下看到的样子,相差很大。好像并不是你所的那两种情况。
例如:我有一个模型(osg文件),如果在程序中加了osgUtil::Optimizer optimizer ;
optimizer.optimize(root.get()) ;运行结果的前几行是这样的(这是正确的情况)
union
{triangle
{<-0.474997,1.9,0.1895>,<0.475003,1.9,0.1895>,<0.475003,1.9,-0.38>}
triangle{<0.475003,1.9,-0.38>,<-0.474997,1.9,-0.38>,<-0.474997,1.9,0.1895>}
triangle{<-0.474997,1.9,-0.38>,<0.475003,1.9,-0.38>,<0.475003,-3.8e-007,-0.38>}
如果不加osgUtil::Optimizer optimizer ;
optimizer.optimize(root.get()) ;运行结果的前几行则是(这是不正确的情况)
union
{triangle{<-51303.3,1898,90549.9>,<-52253.3,1898,90549.9>,<-52253.3,1898,91119.4>}
triangle{<-52253.3,1898,91119.4>,<-51303.3,1898,91119.4>,<-51303.3,1898,90549.9>}
triangle{<-51303.3,1898,91119.4>,<-52253.3,1898,91119.4>,<-52253.3,-2,91119.4>}
我不知道为什么对于同一个模型,加不加那两行代码,怎么运行出来结果如此不同。
谢谢了。 |
|