[vtkusers] 1vtkActor and 2vtkRendrer

Bill Lorensen wlorens1 at nycap.rr.com
Sat Jan 13 17:13:39 EST 2001


You cannot share a mapper that is using display lists between multiple windows. This is a known problem (at least to old timers). Try applying ImmediateModeRenderingOn to your shared mappers.

Bill

At 07:59 PM 1/12/01 +0900, sseo wrote:
>hi vtk users!
>
>i am now developing a application which has several vtkWindow.
>where each vtkWindow show the same data with a small difference
>(mainly the position of camera, and with or without of costly actors)
>
>so i intended to share a vtkActor with several vtkWindow.
>unfortunately it didn't work well.
>there are cases that each vtkWindow shows same actors.
>even when i intend to show more actors than other vtkWindows.
>means some actor dont show in case
>
>my question is
>"is it valid to share a vtkActor or vtkMapper or a process object?"
>or is the problem should in a very different place
>
>any advice is welcome
>thanks
>seo shinichiro
>
>
>this is the code snip
>where TVTKWindow is a vtkWindow+vtkRendrer class
>similar to vtkMFCView for bcb
>
>  VTKWindow = new TVTKWindow(this);
>  VTKWindow->Parent = TabSheet3d;
>  VTKWindow->Align = alClient;
>
>  PositionWindow = new TVTKWindow(this);
>  PositionWindow->Parent = PositionPanel;
>  PositionWindow->Align = alClient;
>  PositionWindow->AddProp(            //// important part
>   document->GetOutlineActor());    ////
>  PositionWindow->AddProp(          //// this line seems not to work
>   document->GetSliceActor());      //// without line *A* below
>  PositionWindow->UpdateProps();
>  PositionWindow->DeactivateInteraction();
>  vtkCamera *c = PositionWindow->GetCamera();
>  c->Azimuth(150);
>  c->Elevation(30);
>  c->Zoom(2.0);
>  PositionWindow->ResetLightPosition();
>  PositionWindow->SetWindowColor(clWhite);
>
>  VTKWindow->AddProp(              //// important part
>   document->GetOutlineActor());  ////
>  VTKWindow->AddProp(             ////  *A*
>   document->GetSliceActor());    ////  it goes wrong when i comment out this
>line
>  VTKWindow->AddProp(             ////  this also not work
>   document->GetSurfaceActor());    ////  the pipeline it self works... i'm
>sure
>
>






More information about the vtkusers mailing list