Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Object::updateWireframe() {
- // Geode -> Drawable -> asGeometry() -> getPrimitiveSetList() -> setMode
- for(size_t j = 0; j < geodeObject->getNumDrawables(); j++) {
- if(geodeObject->getDrawable(j)->asGeometry() != 0) {
- osg::Geometry::PrimitiveSetList list = geodeObject->getDrawable(j)->asGeometry()->getPrimitiveSetList();
- for(size_t i = 0; i < list.size(); i++) {
- if(wireframeObject) {
- //std::cout << "Changing to LINE_LOOP!" << std::endl;
- list[i]->setMode(GL_LINE_LOOP);
- } else {
- //std::cout << "Index: " << list[i]->getNumIndices() << std::endl;
- if(list[i]->getNumIndices() == 3)
- list[i]->setMode(GL_TRIANGLES);
- else
- list[i]->setMode(GL_QUADS);
- }
- }
- geodeObject->getDrawable(j)->asGeometry()->setPrimitiveSetList(list);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement