Преглед на файлове

Refresh view when axes are modified.

Julien Finet преди 14 години
родител
ревизия
07b4bdad00
променени са 2 файла, в които са добавени 13 реда и са изтрити 8 реда
  1. 6 4
      Libs/Visualization/VTK/Widgets/ctkVTKScalarsToColorsView.cpp
  2. 7 4
      Libs/Visualization/VTK/Widgets/ctkVTKScalarsToColorsWidget.cpp

+ 6 - 4
Libs/Visualization/VTK/Widgets/ctkVTKScalarsToColorsView.cpp

@@ -70,10 +70,12 @@ void ctkVTKScalarsToColorsViewPrivate::init()
   vtkChartXY* chart = q->chart();
   chart->SetAutoAxes(false);
   chart->SetHiddenAxisBorder(0);
-  chart->GetAxis(0)->SetVisible(false);
-  chart->GetAxis(1)->SetVisible(false);
-  chart->GetAxis(2)->SetVisible(false);
-  chart->GetAxis(3)->SetVisible(false);
+  for (int i = 0; i < 4; ++i)
+    {
+    chart->GetAxis(i)->SetVisible(false);
+    chart->GetAxis(i)->SetMinimumLimit(0.);
+    chart->GetAxis(i)->SetMaximumLimit(1.);
+    }
 }
 
 // ----------------------------------------------------------------------------

+ 7 - 4
Libs/Visualization/VTK/Widgets/ctkVTKScalarsToColorsWidget.cpp

@@ -323,9 +323,10 @@ void ctkVTKScalarsToColorsWidget::onXRangeChanged(double min, double max)
 {
   Q_D(ctkVTKScalarsToColorsWidget);
   vtkAxis* xAxis = d->CurrentControlPointsItem ?
-    d->CurrentControlPointsItem->GetXAxis() : d->View->chart()->GetAxis(0);
+    d->CurrentControlPointsItem->GetXAxis() : d->View->chart()->GetAxis(vtkAxis::BOTTOM);
   Q_ASSERT(xAxis);
   xAxis->SetRange(min, max);
+  d->View->scene()->SetDirty(true);
 }
 
 // ----------------------------------------------------------------------------
@@ -333,21 +334,23 @@ void ctkVTKScalarsToColorsWidget::onYRangeChanged(double min, double max)
 {
   Q_D(ctkVTKScalarsToColorsWidget);
   vtkAxis* yAxis = d->CurrentControlPointsItem ?
-    d->CurrentControlPointsItem->GetYAxis() : d->View->chart()->GetAxis(1);
+    d->CurrentControlPointsItem->GetYAxis() : d->View->chart()->GetAxis(vtkAxis::LEFT);
   Q_ASSERT(yAxis);
   yAxis->SetRange(min, max);
+  d->View->scene()->SetDirty(true);
 }
 
 // ----------------------------------------------------------------------------
 void ctkVTKScalarsToColorsWidget::onAxesModified()
 {
   Q_D(ctkVTKScalarsToColorsWidget);
+  bool modified = false;
   vtkAxis* xAxis = d->CurrentControlPointsItem ?
-    d->CurrentControlPointsItem->GetXAxis() : d->View->chart()->GetAxis(0);
+    d->CurrentControlPointsItem->GetXAxis() : d->View->chart()->GetAxis(vtkAxis::BOTTOM);
   Q_ASSERT(xAxis);
   d->XRangeSlider->setValues(xAxis->GetMinimum(), xAxis->GetMaximum());
   vtkAxis* yAxis = d->CurrentControlPointsItem ?
-    d->CurrentControlPointsItem->GetYAxis() : d->View->chart()->GetAxis(1);
+    d->CurrentControlPointsItem->GetYAxis() : d->View->chart()->GetAxis(vtkAxis::LEFT);
   Q_ASSERT(yAxis);
   d->YRangeSlider->setValues(yAxis->GetMinimum(), yAxis->GetMaximum());
 }