typedef struct _SIZE{
QSplitter* splitter;
QList<int> size1, size2;
+ int cols[3];
}SplitterSize;
SplitterSize sizes[4];
sizes[0].splitter = OSplitter;
sizes[0].size1.push_back(0);
sizes[0].size2.push_back(1);
sizes[0].size2.push_back(0);
+ sizes[0].cols[0] = 2;
+ sizes[0].cols[1] = 3;
+ sizes[0].cols[2] = 4;
sizes[1].splitter = ESplitter;
sizes[1].size1.push_back(0);
sizes[1].size1.push_back(1);
sizes[1].size2.push_back(1);
sizes[1].size2.push_back(0);
+ sizes[1].cols[0] = 1;
+ sizes[1].cols[1] = 3;
+ sizes[1].cols[2] = 4;
sizes[2].splitter = OSplitter;
sizes[2].size1.push_back(1);
sizes[2].size1.push_back(0);
sizes[2].size2.push_back(0);
sizes[2].size2.push_back(1);
+ sizes[2].cols[0] = 1;
+ sizes[2].cols[1] = 2;
+ sizes[2].cols[2] = 4;
sizes[3].splitter = ESplitter;
sizes[3].size1.push_back(0);
sizes[3].size1.push_back(1);
sizes[3].size2.push_back(0);
sizes[3].size2.push_back(1);
+ sizes[3].cols[0] = 1;
+ sizes[3].cols[1] = 2;
+ sizes[3].cols[2] = 3;
int slicer = mSlicerManagers[mCurrentPickedImageIndex]->GetSelectedSlicer();
if (viewMode == 1) {
viewMode = 0;
splitter_3->setSizes(sizes[slicer].size1);
sizes[slicer].splitter->setSizes(sizes[slicer].size2);
- DataTree->setColumnHidden(2,1);
- DataTree->setColumnHidden(3,1);
- DataTree->setColumnHidden(4,1);
+ DataTree->setColumnHidden(sizes[slicer].cols[0],1);
+ DataTree->setColumnHidden(sizes[slicer].cols[1],1);
+ DataTree->setColumnHidden(sizes[slicer].cols[2],1);
}
} else {
QList<int> size;
size.push_back(1);
splitter_3->setSizes(size);
sizes[slicer].splitter->setSizes(size);
- DataTree->setColumnHidden(2,0);
- DataTree->setColumnHidden(3,0);
- DataTree->setColumnHidden(4,0);
+ DataTree->setColumnHidden(sizes[slicer].cols[0],0);
+ DataTree->setColumnHidden(sizes[slicer].cols[1],0);
+ DataTree->setColumnHidden(sizes[slicer].cols[2],0);
}
}
UpdateRenderWindows();
}
//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+void vvMainWindow::ApplyWindowToSetOfImages(double window, unsigned int indexMin, unsigned int indexMax)
+{
+ for (unsigned int i = indexMin; i <= indexMax && i < mSlicerManagers.size(); i++) {
+ if (mSlicerManagers[i] == NULL)
+ continue;
+ mSlicerManagers[i]->SetColorWindow(window);
+ mSlicerManagers[i]->SetPreset(6);
+ mSlicerManagers[i]->Render();
+ }
+}
+//------------------------------------------------------------------------------
+
+//------------------------------------------------------------------------------
+void vvMainWindow::ApplyLevelToSetOfImages(double level, unsigned int indexMin, unsigned int indexMax)
+{
+ for (unsigned int i = indexMin; i <= indexMax && i < mSlicerManagers.size(); i++) {
+ if (mSlicerManagers[i] == NULL)
+ continue;
+ mSlicerManagers[i]->SetColorLevel(level);
+ mSlicerManagers[i]->SetPreset(6);
+ mSlicerManagers[i]->Render();
+ }
+}
+//------------------------------------------------------------------------------
+
//------------------------------------------------------------------------------
void vvMainWindow::UpdateLinkManager(std::string id, int slicer, double x, double y, double z, int temps)
{
//------------------------------------------------------------------------------
void vvMainWindow::UpdateSliceRange(int slicer, int min, int max, int tmin, int tmax)
{
- int position = int((min+max)/2);
+ //int position = int((min+max)/2);
+ int position = mSlicerManagers[mCurrentPickedImageIndex]->GetSlicer(slicer)->GetSlice();
if (slicer == 0) {
- NOVerticalSlider->setValue(position);
NOVerticalSlider->setRange(min,max);
NOHorizontalSlider->setRange(tmin,tmax);
+ NOVerticalSlider->setValue(position);
} else if (slicer == 1) {
- NEVerticalSlider->setValue(position);
NEVerticalSlider->setRange(min,max);
NEHorizontalSlider->setRange(tmin,tmax);
+ NEVerticalSlider->setValue(position);
} else if (slicer == 2) {
- SOVerticalSlider->setValue(position);
SOVerticalSlider->setRange(min,max);
SOHorizontalSlider->setRange(tmin,tmax);
+ SOVerticalSlider->setValue(position);
} else if (slicer == 3) {
- SEVerticalSlider->setValue(position);
SEVerticalSlider->setRange(min,max);
SEHorizontalSlider->setRange(tmin,tmax);
+ SEVerticalSlider->setValue(position);
}
}
//------------------------------------------------------------------------------