@@ -206,11 +206,8 @@ namespace SCIRun {
206206 // ----------------------------------------------------------------------------------------------
207207 void SRInterface::inputMouseWheel (int32_t delta)
208208 {
209- if (!widgetSelected_)
210- {
211- mCamera ->mouseWheelEvent (delta, mZoomSpeed );
212- updateCamera ();
213- }
209+ mCamera ->mouseWheelEvent (delta, mZoomSpeed );
210+ updateCamera ();
214211 }
215212
216213 // ----------------------------------------------------------------------------------------------
@@ -606,20 +603,18 @@ namespace SCIRun {
606603 {
607604 gen::StaticCamera* cam = mCore .getStaticComponent <gen::StaticCamera>();
608605 glm::vec4 spos ((float (2 * pos.x ) - float (mScreenWidth )) / float (mScreenWidth ),
609- (float (mScreenHeight ) - float (2 * pos.y )) / float (mScreenHeight ),
610- mSelectedPos .z , 1 .0f );
611-
612- float ssDepth = mSelectedPos .z * 0.5 + 0.5 ;
613- float zFar = mCamera ->getZFar ();
614- float zNear = mCamera ->getZNear ();
615- float vDepth = 1.0 /(ssDepth * (1.0 /zFar - 1.0 /zNear) + 1.0 /zNear);
606+ (float (mScreenHeight ) - float (2 * pos.y )) / float (mScreenHeight ),
607+ mSelectedPos .z , 1 .0f );
616608
617- glm::vec4 transVec = glm::vec4 (glm::vec3 (spos - mSelectedPos ) * glm::vec3 (vDepth , vDepth, 1.0 ), 0 .0f );
618609 mWidgetTransform = gen::Transform ();
619- mWidgetTransform .setPosition ((glm::inverse (cam->data .projIV ) * transVec).xyz ());
620-
621- spire::CerealHeap<gen::Transform>* contTrans = mCore .getOrCreateComponentContainer <gen::Transform>();
622- std::pair<const gen::Transform*, size_t > component = contTrans->getComponent (mSelectedID );
610+ mWidgetTransform .setPosition ((spos - mSelectedPos ).xyz ());
611+ mWidgetTransform .transform = glm::inverse (cam->data .projIV ) *
612+ mWidgetTransform .transform * cam->data .projIV ;
613+
614+ spire::CerealHeap<gen::Transform>* contTrans =
615+ mCore .getOrCreateComponentContainer <gen::Transform>();
616+ std::pair<const gen::Transform*, size_t > component =
617+ contTrans->getComponent (mSelectedID );
623618
624619 if (component.first != nullptr )
625620 contTrans->modifyIndex (mWidgetTransform , component.second , 0 );
0 commit comments