More clean up for synch with 0.8.42
This commit is contained in:
68
src/osg/PolygonMode.cpp
Normal file
68
src/osg/PolygonMode.cpp
Normal file
@@ -0,0 +1,68 @@
|
||||
#include "osg/GL"
|
||||
#include "osg/PolygonMode"
|
||||
#include "osg/Notify"
|
||||
|
||||
using namespace osg;
|
||||
|
||||
PolygonMode::PolygonMode()
|
||||
{
|
||||
_frontAndBack = true;
|
||||
_modeFront = FILL;
|
||||
_modeBack = FILL;
|
||||
}
|
||||
|
||||
|
||||
PolygonMode::~PolygonMode()
|
||||
{
|
||||
}
|
||||
|
||||
void PolygonMode::setMode(const Face face,const Mode mode)
|
||||
{
|
||||
switch(face)
|
||||
{
|
||||
case(FRONT):
|
||||
_frontAndBack = false;
|
||||
_modeFront = mode;
|
||||
break;
|
||||
case(BACK):
|
||||
_frontAndBack = false;
|
||||
_modeBack = mode;
|
||||
break;
|
||||
case(FRONT_AND_BACK):
|
||||
_frontAndBack = true;
|
||||
_modeFront = mode;
|
||||
_modeBack = mode;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
const PolygonMode::Mode PolygonMode::getMode(const Face face) const
|
||||
{
|
||||
switch(face)
|
||||
{
|
||||
case(FRONT):
|
||||
return _modeFront;
|
||||
break;
|
||||
case(BACK):
|
||||
return _modeBack;
|
||||
break;
|
||||
case(FRONT_AND_BACK):
|
||||
return _modeFront;
|
||||
}
|
||||
notify(WARN)<<"Warning : invalid Face passed to PolygonMode::getMode(Face face)"<<endl;
|
||||
return _modeFront;
|
||||
}
|
||||
|
||||
void PolygonMode::apply(State&) const
|
||||
{
|
||||
if (_frontAndBack)
|
||||
{
|
||||
glPolygonMode(GL_FRONT_AND_BACK,(GLenum)_modeFront);
|
||||
}
|
||||
else
|
||||
{
|
||||
glPolygonMode(GL_FRONT,(GLenum)_modeFront);
|
||||
glPolygonMode(GL_BACK,(GLenum)_modeBack);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user