if ( VisibleInWindow > -1 ) {
if (event == vtkCommand::KeyPressEvent) {
std::string KeyPress = isi->GetInteractor()->GetKeySym();
+ bool bCtrlKey = isi->GetInteractor()->GetControlKey();
if (KeyPress == "Tab") {
if(isi->GetInteractor()->GetShiftKey())
this->SM->PrevImage(VisibleInWindow);
return;
}
if (KeyPress == "w") {
- this->SM->SetLocalColorWindowing(VisibleInWindow);
+ this->SM->SetLocalColorWindowing(VisibleInWindow, bCtrlKey);
return;
}
if (KeyPress == "0") {
return;
}
if (KeyPress == "h") {
- std::cout << "KeyPress == \"h\"\n";
this->SM->SetCursorAndCornerAnnotationVisibility(0);
this->SM->Render();
return;
return;
}
if (KeyPress == "g") {
- double* cursorPos = this->SM->GetSlicer(VisibleInWindow)->GetCursorPosition();
- this->SM->GetSlicer(VisibleInWindow)->SetCurrentPosition(
- cursorPos[0],cursorPos[1],cursorPos[2],cursorPos[3]);
- this->SM->UpdateViews(1,VisibleInWindow);
- this->SM->UpdateLinked(VisibleInWindow);
- return;
- }
- if (KeyPress == "o") {
- this->SM->GetSlicer(VisibleInWindow)->SetCurrentPosition(0,0,0,0);
+ if(bCtrlKey)
+ this->SM->GetSlicer(VisibleInWindow)->SetCurrentPosition(0,0,0,0);
+ else {
+ double* cursorPos = this->SM->GetSlicer(VisibleInWindow)->GetCursorPosition();
+ this->SM->GetSlicer(VisibleInWindow)->SetCurrentPosition(
+ cursorPos[0],cursorPos[1],cursorPos[2],cursorPos[3]);
+ }
this->SM->UpdateViews(1,VisibleInWindow);
this->SM->UpdateLinked(VisibleInWindow);
return;
zWorld = z;
break;
}
- this->SM->GetSlicer(VisibleInWindow)->SetCurrentPosition(xWorld,yWorld,zWorld,
+
+ double p[3]; p[0] = xWorld; p[1] = yWorld; p[2] = zWorld;
+ double pt[3];
+ this->SM->GetSlicer(VisibleInWindow)->GetSlicingTransform()->TransformPoint(p, pt);
+
+ this->SM->GetSlicer(VisibleInWindow)->SetCurrentPosition(pt[0],pt[1],pt[2],
this->SM->GetSlicer(VisibleInWindow)->GetTSlice());
if (newLandmark) {
this->SM->AddLandmark(xWorld,yWorld,zWorld,
this->SM->SetColorWindow(window*dx);
this->SM->SetColorLevel(level-dy);
this->SM->SetPreset(6);
- this->SM->UpdateWindowLevel();
this->SM->Render();
+ this->SM->UpdateWindowLevel();
return;
}
}