该用户从未签到
osg::ref_ptr<osg::Group>makedelaunay(osg::ref_ptr<osg::Vec3Array>bounds) { osg::ref_ptr<osg::Group> grp= viewer->getSceneData()->asGroup(); osg::ref_ptr<osg::Geode> geode=new osg::Geode; osg::ref_ptr<osgUtil:elaunayTriangulator> trig=new osgUtil::DelaunayTriangulator(); osg::ref_ptr<osg::Geometry> gm=new osg::Geometry; trig->setInputPointArray(bounds); osg::Vec3Array *norms=new osg::Vec3Array; trig->setOutputNormalArray(norms); trig->triangulate(); gm->addPrimitiveSet(trig->getTriangles()); gm->setNormalArray(trig->getOutputNormalArray()); gm->setNormalBinding(osg::Geometry::BIND_PER_PRIMITIVE); osg::StateSet *stateset=geode->getOrCreateStateSet(); osg::ref_ptr<osgUtil::DelaunayConstraint> dc=new osgUtil::DelaunayConstraint; int vmax=bounds->getNumElements(); dc->setVertexArray(bounds); dc->addPrimitiveSet(new osg::DrawArrays(osg:rimitiveSet:INE_LOOP,0,vmax) ); geode->addDrawable(gm.get()); trig->addInputConstraint(dc.get()); trig->removeInternalTriangles(dc.get()); return grp; }
源码效果
使用道具 举报
mxl12315 发表于 2012-8-22 14:12 跪求高手求指导~挑了两天但还是异常,
sunnk 发表于 2012-9-27 17:53 新人!求一份osgdelaunay源码!!!找了很多地方没找到!
mxl12315 发表于 2012-9-27 18:09
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。
|小黑屋|手机版|Archiver|OSG中国官方论坛 ( 陕ICP备14000835号-1 )
GMT+8, 2024-11-28 04:39