Revision 40cf8459 src/spin/GeometryNode.cpp
| b/src/spin/GeometryNode.cpp | ||
|---|---|---|
| 90 | 90 |
(*texcoordArray_)[2].set(1.0f,0.0f); |
| 91 | 91 |
(*texcoordArray_)[3].set(1.0f,1.0f); |
| 92 | 92 |
|
| 93 |
singleSided_ = false; |
|
| 93 | 94 |
|
| 94 | 95 |
geode_ = new osg::Geode(); |
| 95 | 96 |
this->getAttachmentNode()->addChild(geode_.get()); |
| ... | ... | |
| 233 | 234 |
} |
| 234 | 235 |
} |
| 235 | 236 |
|
| 237 |
void GeometryNode::setSingleSided (int singleSided) |
|
| 238 |
{
|
|
| 239 |
singleSided_ = singleSided; |
|
| 240 |
|
|
| 241 |
osg::StateSet *ss = geode_->getOrCreateStateSet(); |
|
| 242 |
if (singleSided_) |
|
| 243 |
ss->setMode( GL_CULL_FACE, osg::StateAttribute::ON ); |
|
| 244 |
else |
|
| 245 |
ss->setMode( GL_CULL_FACE, osg::StateAttribute::OFF ); |
|
| 246 |
|
|
| 247 |
BROADCAST(this, "si", "setSingleSided", getSingleSided()); |
|
| 248 |
} |
|
| 249 |
|
|
| 236 | 250 |
// ----------------------------------------------------------------------------- |
| 237 | 251 |
|
| 238 | 252 |
std::vector<lo_message> GeometryNode::getState () const |
| ... | ... | |
| 269 | 283 |
ret.push_back(msg); |
| 270 | 284 |
} |
| 271 | 285 |
|
| 272 |
|
|
| 273 | 286 |
osg::Vec2Array *tArray = dynamic_cast<osg::Vec2Array*>(geometry_->getTexCoordArray(0)); |
| 274 | 287 |
for (unsigned int i=0; i<tArray->getNumElements(); i++) |
| 275 | 288 |
{
|
| ... | ... | |
| 277 | 290 |
lo_message_add(msg, "siff", "setTexCoord", i, (*tArray)[i].x(), (*tArray)[i].y()); |
| 278 | 291 |
ret.push_back(msg); |
| 279 | 292 |
} |
| 293 |
|
|
| 294 |
msg = lo_message_new(); |
|
| 295 |
lo_message_add(msg, "si", "setSingleSided", getSingleSided()); |
|
| 296 |
ret.push_back(msg); |
|
| 297 |
|
|
| 280 | 298 |
|
| 281 | 299 |
return ret; |
| 282 | 300 |
} |
Also available in: Unified diff