28 #include <osg/LightModel>
30 #include "callbacks/WGEFunctorCallback.h"
32 #include "WROISphere.h"
33 #include "WGraphicsEngine.h"
41 sphereId( maxSphereId++ ),
42 m_position( position ),
43 m_originalPosition( position ),
47 m_color( osg::Vec4( 0.f, 1.f, 1.f, 0.4f ) ),
48 m_notColor( osg::Vec4( 1.0f, 0.0f, 0.0f, 0.4f ) ),
49 m_lockPoint(
WVector3d( 0.0, 0.0, 0.0 ) ),
50 m_lockVector(
WVector3d( 1.0, 1.0, 1.0 ) ),
51 m_lockOnVector( false ),
58 boost::shared_ptr< WGEViewer > viewer = ge->getViewerByName(
"main" );
84 shape->setName( ss.str() );
148 std::stringstream ss;
149 ss <<
"ROISphere" <<
sphereId <<
"";
150 bool mouseMove =
false;
157 osg::Vec3 in( newPixelPos.x(), newPixelPos.y(), 0.0 );
160 WPosition newPixelWorldPos( world[0], world[1], world[2] );
164 oldPixelWorldPos = newPixelWorldPos;
170 oldPixelWorldPos =
WPosition( world[0], world[1], world[2] );
173 WVector3d moveVec = newPixelWorldPos - oldPixelWorldPos;
175 osg::ref_ptr<osg::Vec3Array> vertices = osg::ref_ptr<osg::Vec3Array>(
new osg::Vec3Array );
232 ( m_lockVector[0] * m_lockVector[0] + m_lockVector[1] * m_lockVector[1] + m_lockVector[2] * m_lockVector[2] ) * -1.0;