Changed the SceneView::setModelViewMatrix() methods across to being setViewMatrix().

The old RefMatrix methods for setModelViewMatrix() and setProjectMatrix() have
been removed to keep the API as minimal as possible.
This commit is contained in:
Robert Osfield
2003-07-15 11:49:56 +00:00
parent 77c0366cb2
commit deb26621c9
5 changed files with 27 additions and 26 deletions

View File

@@ -5,10 +5,7 @@
void osgGA::SetSceneViewVisitor::visit(osgGA::MatrixManipulator& cm)
{
cm.setNode(_sceneView->getSceneData());
if (_sceneView->getModelViewMatrix())
{
cm.setByInverseMatrix(*(_sceneView->getModelViewMatrix()));
}
cm.setByInverseMatrix(_sceneView->getViewMatrix());
cm.init(*getGUIEventAdapter(),*getGUIActionAdapter());
cm.home(*getGUIEventAdapter(),*getGUIActionAdapter());
}

View File

@@ -20,8 +20,6 @@ using namespace osgProducer;
OsgSceneHandler::OsgSceneHandler( osg::DisplaySettings *ds) :
_sceneView(new osgUtil::SceneView(ds))
{
_sceneView->setProjectionMatrix( new osg::RefMatrix );
_sceneView->setModelViewMatrix( new osg::RefMatrix );
}
void OsgSceneHandler::init()
@@ -46,8 +44,8 @@ void OsgSceneHandler::clearImplementation(Producer::Camera& /*camera*/)
void OsgSceneHandler::cullImplementation(Producer::Camera &cam)
{
_sceneView->getProjectionMatrix()->set(cam.getProjectionMatrix());
_sceneView->getModelViewMatrix()->set(cam.getPositionAndAttitudeMatrix());
_sceneView->getProjectionMatrix().set(cam.getProjectionMatrix());
_sceneView->getViewMatrix().set(cam.getPositionAndAttitudeMatrix());
int x, y;
unsigned int w, h;

View File

@@ -516,10 +516,10 @@ bool Viewer::computeIntersections(float x,float y,unsigned int cameraNum,osgUtil
osgProducer::OsgSceneHandler* sh = dynamic_cast<osgProducer::OsgSceneHandler*>(camera->getSceneHandler());
osgUtil::SceneView* sv = sh?sh->getSceneView():0;
osg::Matrix vum;
if (sv!=0 && sv->getModelViewMatrix()!=0 && sv->getProjectionMatrix()!=0)
if (sv!=0)
{
vum.set((*(sv->getModelViewMatrix())) *
(*(sv->getProjectionMatrix())));
vum.set(sv->getViewMatrix() *
sv->getProjectionMatrix());
}
else
{

View File

@@ -70,9 +70,9 @@ void SceneView::setDefaults()
_projectionMatrix = new RefMatrix();
_projectionMatrix->makePerspective(50.0f,1.4f,1.0f,10000.0f);
}
if (!_modelviewMatrix)
if (!_viewMatrix)
{
_modelviewMatrix = new RefMatrix();
_viewMatrix = new RefMatrix();
}
_globalStateSet = new osg::StateSet;
@@ -216,7 +216,7 @@ void SceneView::cull()
osg::ref_ptr<osg::RefMatrix> projection = _projectionMatrix.get();
osg::ref_ptr<osg::RefMatrix> modelview = _modelviewMatrix.get();
osg::ref_ptr<osg::RefMatrix> modelview = _viewMatrix.get();
if (!projection) projection = new osg::RefMatrix();
if (!modelview) modelview = new osg::RefMatrix();
@@ -761,8 +761,8 @@ const osg::Matrix SceneView::computeMVPW() const
{
osg::Matrix matrix;
if (_modelviewMatrix.valid())
matrix = (*_modelviewMatrix);
if (_viewMatrix.valid())
matrix = (*_viewMatrix);
if (_projectionMatrix.valid())
matrix.postMult(*_projectionMatrix);