<div dir="ltr">Hi,<div><br></div><div>There is an issue when combining vtkTextMapper->GetTextProperty()->SetColor and vtkActor2D->GetProperty()->SetColor</div><div><br></div><div>Before digging into what causes the issue, i would like to know what is the expected result?</div><div><br></div><div>here are different behaviours when setting a vtkTextMapper to a vtkActor2D:</div><div><br></div><div>with VTK 5.10 :</div><div><br></div><div>TextProperty RED + ActorProperty WHITE => Text RED<br></div><div>TextProperty WHITE + ActorProperty GREEN => Text WHITE <br></div><div>TextProperty RED + ActorProperty GREEN => Text RED</div><div><br></div><div>with VTK 6.3 and master, OpenGL 1&2:<br></div><div><br></div><div>TextProperty RED + ActorProperty WHITE => Text RED<br></div><div>TextProperty WHITE + ActorProperty GREEN => Text GREEN <br></div><div>TextProperty RED + ActorProperty GREEN => Text BLACK</div><div><br></div><div>with vtk 5.10, the vtkTextProperty has always priority, whereas with newer versions if only one color is set it is taken into acount, with an obvious issue when both of them are set.</div><div><br></div><div><br></div><div>here is a simple test:</div><div><br></div><div><br></div><div><div>#include <vtkActor2D.h></div><div>#include <vtkProperty2D.h></div><div>#include <vtkRenderer.h></div><div>#include <vtkRenderWindow.h></div><div>#include <vtkRenderWindowInteractor.h></div><div>#include <vtkSmartPointer.h></div><div>#include <vtkTextMapper.h></div><div>#include <vtkTextProperty.h></div><div><br></div><div>int main ( int argc, char *argv[] )</div><div>{</div><div>   vtkSmartPointer<vtkRenderer> renderer =</div><div>      vtkSmartPointer<vtkRenderer>::New();</div><div>   vtkSmartPointer<vtkRenderWindow> renderWindow =</div><div>      vtkSmartPointer<vtkRenderWindow>::New();</div><div>   renderWindow->AddRenderer(renderer);</div><div>   vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =</div><div>      vtkSmartPointer<vtkRenderWindowInteractor>::New();</div><div>   renderWindowInteractor->SetRenderWindow(renderWindow);</div><div><br></div><div>   vtkSmartPointer<vtkTextMapper> textmap =</div><div>      vtkSmartPointer<vtkTextMapper>::New();</div><div>   textmap->SetInput("TEST");</div><div>   textmap->GetTextProperty()->SetColor(1, 0, 0);</div><div><br></div><div>   vtkSmartPointer<vtkActor2D> actor2D =</div><div>      vtkSmartPointer<vtkActor2D>::New();</div><div>   actor2D->SetMapper(textmap);</div><div>   actor2D->GetProperty()->SetColor(0, 1, 0);</div><div><br></div><div>   renderer->AddActor2D(actor2D);</div><div><br></div><div>   renderWindow->Render();</div><div>   renderWindowInteractor->Start();</div><div><br></div><div>   return EXIT_SUCCESS;</div><div>}</div></div><div><br></div></div>