[vtkusers] Z-Order of vtkRenderer,vtkImageActor,vtkTextActor

Thomas Lambertz thomas at hexerei-software.de
Sat Sep 2 09:51:43 EDT 2006


Hi Shang,

thanks for your hint.

Looking into the online-documentation for the vtkProperty2D-class i found:

void vtkProperty2D::SetDisplayLocationToForeground

"The DisplayLocation is either background or foreground.  [...] If it is 
background [seemes to be a typo - must be foreground] , then this 2D 
actor will be drawn in front of all 3D props and background 2D actors."


There are no overlapping vtkActor2D and my vtkImageActors are such 3D 
props - so this should solve my problem.

I implemented your advise in this way:

((vtkActor2D 
*)myTextActor)->GetProperty()->SetDisplayLocationToForeground();


Unfortunately the text is still invisible. Removing the vtkImageActors 
gives me the correct text, order of adding the renderers didnt change this.

Any suggestions ?

regards,
Tom


Shang Mu schrieb:
> try this:
> actor2d.GetProperty().SetDisplayLocationToForeground/Foreground() or 
> SetDisplayLocation(int)
>
> http://www.vtk.org/doc/nightly/html/classvtkProperty2D.html#aff92a7410107d67198f73fb1af85b9c 
>
>
> Shang
>
> ----- Original Message ----- From: "Thomas Lambertz" 
> <thomas at hexerei-software.de>
> To: <vtkusers at vtk.org>
> Sent: Friday, September 01, 2006 9:06 PM
> Subject: [vtkusers] Z-Order of vtkRenderer,vtkImageActor,vtkTextActor
>
>
>> Hi there,
>>
>> i have a problem with providing some text-information for dicom-slices.
>>
>> Each slice is represented by a vtkImageActor and a vtkRenderer. All 
>> vtkRenderers are arranged like a chessboard using their SetViewport() 
>> method. There is no overlapping and all went fine.
>>
>> I thought i could add some text-information by adding another 
>> vtkRenderer with a vtkTextActor. This renderer could use the hole 
>> RenderWindow - (SetViewport(0.0,0.0,1.0,1.0)). But whatever order of 
>> RenderWindow->AddRenderer() i choose - the text is never visible. By 
>> omitting the slice-renderer i see the text - so the 
>> TextActor/Renderer seemes to work (and is only hidden behind them ?).
>> But:
>> By adding the TextActor to each sliceRenderer the text is visible. 
>> But that´s not a real solution as all sliceRenderer are restricted by 
>> their viewport-settings - and i dont want to add the TextActor to all 
>> of them only to see the hole text.
>>
>> It looks to me as i am struggling with the z-order of these 
>> renderers. The order of adding the renderer seemes not to solve my 
>> problem.
>> What am i doing wrong ? Can i set an z-order by hand ? Should i use 
>> another classes for my problem ?
>>
>> Any suggestions are very appreciated.
>>
>> Thanks in advance,
>> Tom
>>
>>
>> _______________________________________________
>> This is the private VTK discussion list. Please keep messages 
>> on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers 
>
>




More information about the vtkusers mailing list