- mSlicer = slicer;
- mClipper->SetInput(slicer->GetImage()->GetFirstVTKImageData());
- mSquares->SetInput(mClipper->GetOutput());
- mSquaresMapper->SetInput(mSquares->GetOutput());
- mSquaresMapper->ScalarVisibilityOff();
- mSquaresActor->SetMapper(mSquaresMapper);
- mSquaresActor->GetProperty()->SetColor(1.0,0,0);
- mSquaresActor->SetPickable(0);
- mSlicer->GetRenderer()->AddActor(mSquaresActor1);
- mSquares->Update();
+ mSlicer = slicer;
+
+ for (unsigned int numImage = 0; numImage < mSlicer->GetImage()->GetVTKImages().size(); numImage++) {
+ vtkImageClip * mClipper = vtkImageClip::New();
+ vtkMarchingSquares * mSquares = vtkMarchingSquares::New();
+ vtkPolyDataMapper * mSquaresMapper = vtkPolyDataMapper::New();
+ vtkActor * mSquaresActor = vtkActor::New();
+
+ mClipper->SetInput(mSlicer->GetImage()->GetVTKImages()[numImage]);
+ mSquares->SetInput(mClipper->GetOutput());
+ mSquaresMapper->SetInput(mSquares->GetOutput());
+ mSquaresMapper->ScalarVisibilityOff();
+ mSquaresActor->SetMapper(mSquaresMapper);
+ mSquaresActor->GetProperty()->SetColor(1.0,0,0);
+ mSquaresActor->SetPickable(0);
+ mSquaresActor->VisibilityOff();
+ mSlicer->GetRenderer()->AddActor(mSquaresActor);
+
+ mSquaresActorList.push_back(mSquaresActor);
+ mSquaresList.push_back(mSquares);
+ mClipperList.push_back(mClipper);
+ }
+}
+//------------------------------------------------------------------------------
+
+
+//------------------------------------------------------------------------------
+void vvImageContour::setColor(double r, double g, double b) {
+ for(unsigned int i=0; i<mSquaresActorList.size(); i++) {
+ mSquaresActorList[i]->GetProperty()->SetColor(r,g,b);
+ }