-
- vtkImageClip* mClipper;
- vtkMarchingSquares* mSquares;
- vtkPolyDataMapper* mSquaresMapper;
- vtkActor* mSquaresActor;
-
+ int mSlice;
+ int mTSlice;
+ double mValue;
+ int mPreviousTSlice;
+ double mPreviousValue;
+ bool mHiddenImageIsUsed;
+ vvImage::Pointer mHiddenImage;
+ bool mDisplayModeIsPreserveMemory;
+
+ // For preserveMemory mode
+ std::vector<vtkImageClip*> mClipperList;
+ std::vector<vtkMarchingSquares*> mSquaresList;
+ std::vector<vtkActor*> mSquaresActorList;
+
+ // For fast cache mode
+ int mPreviousSlice;
+ int mPreviousOrientation;
+ std::vector<std::vector<vtkActor*> > mListOfCachedContourActors;
+
+ // Functions
+ void InitializeCacheMode();
+ void UpdateWithPreserveMemoryMode();
+ void UpdateWithFastCacheMode();
+ void CreateNewActor(vtkActor ** actor,
+ vtkMarchingSquares ** squares,
+ vtkImageClip ** clipper, int numImage);
+ void UpdateActor(vtkActor * actor,
+ vtkMarchingSquares * squares,
+ vtkImageClip * clipper,
+ double threshold, int orientation, int slice);
+ void CreateActor(int orientation, int slice);
+ int ComputeCurrentOrientation();
+