# vtkImageViewer2's renderer has no actor

**URL:** https://discourse.vtk.org/t/vtkimageviewer2s-renderer-has-no-actor/6540
**Category:** Support
**Created:** [September 3, 2021, 2:47am UTC](https://discourse.vtk.org/t/vtkimageviewer2s-renderer-has-no-actor/6540 "2021-09-03T02:47:36Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![jjjkk](https://discourse.vtk.org/user_avatar/discourse.vtk.org/jjjkk/32/3720_2.png) [@jjjkk](https://discourse.vtk.org/u/jjjkk)
#### Post date: [September 3, 2021, 2:47am UTC](https://discourse.vtk.org/t/vtkimageviewer2s-renderer-has-no-actor/6540/1 "2021-09-03T02:47:36Z")

</div>

I use qt and vtk to visualize dicom file. And it works well.

But when I want to add picker to my program I found imageViewer-\>GetRenderer()-\>GetActors() is empty, so I can’t pick anything.

But the dicom picture can be shown, and there is a imageactor in imageViewer. Blow is part of my code:

```auto
    imageViewer = vtkImageViewer2::New();
    imageViewer->SetRenderWindow(widget->renderWindow());
    imageViewer->SetSliceOrientation(orient);
    imageViewer->SetInputConnection(data->GetOutputPort());
    interactorStyle = myVtkInteractorStyleImage::New();

    interactorStyle->SetImageViewer(imageViewer);

    interactorStyle->NewPicker();

    widget->interactor()->SetInteractorStyle(interactorStyle);
    imageViewer->GetRenderer()->AddViewProp(imageViewer->GetImageActor());
    auto x = imageViewer->GetImageActor();
    auto t = imageViewer->GetRenderer()->GetActors();
    imageViewer->Render();
    imageViewer->GetRenderer()->ResetCamera();
    imageViewer->GetRenderer()->SetBackground(
      colors->GetColor3d("SlateGray").GetData());
    imageViewer->GetRenderWindow()->SetSize(800, 800);
    imageViewer->GetRenderWindow()->SetWindowName("ReadDICOMSeries");
    // Annotate the image with window/level and mouse over pixel information
    vtkNew<vtkCornerAnnotation> cornerAnnotation;
    cornerAnnotation->SetLinearFontScaleFactor(2);
    cornerAnnotation->SetNonlinearFontScaleFactor(1);
    cornerAnnotation->SetMaximumFontSize(20);
    cornerAnnotation->SetText(0, "Off Image");
    cornerAnnotation->SetText(3, "<window>\n<level>");
    cornerAnnotation->GetTextProperty()->SetColor(
        colors->GetColor3d("LightGoldenrodYellow").GetData());

    imageViewer->GetRenderer()->AddViewProp(cornerAnnotation);

    interactorStyle->SetAnnotation(cornerAnnotation);
    imageViewer->Render();

```

Although I add code to add imageactor to renderer, the value t(imageViewer-\>GetRenderer()-\>GetActors()) is still empry, x is proper imageactor. The annotation is add correctly and is one member in imageViewer-\>GetRenderer()-\>GetActors2D().

So, could someone tell why I fail to add image actor to renderer while the dicom file can show well.

Program is shown as below:

 ![image](https://discourse.vtk.org/uploads/default/original/2X/3/3d020182947cb6a3b0851877237a54eeffdff4af.png)

---

<div class="post-metadata">

### Author: ![jjjkk](https://discourse.vtk.org/user_avatar/discourse.vtk.org/jjjkk/32/3720_2.png) [@jjjkk](https://discourse.vtk.org/u/jjjkk)
#### Post date: [September 3, 2021, 7:01am UTC](https://discourse.vtk.org/t/vtkimageviewer2s-renderer-has-no-actor/6540/2 "2021-09-03T07:01:56Z")

</div>

I found ImageActor in renderer-\>getviewProps().  
But still can’t use renderer-\>pickProp to pick image correctly.  
Could someone tell my why?

 ![image](https://discourse.vtk.org/uploads/default/original/2X/9/9f8a8bbe0db399621c12a4eaa6e2dd6408ea30ca.png)

---

<div class="post-metadata">

### Author: ![jjjkk](https://discourse.vtk.org/user_avatar/discourse.vtk.org/jjjkk/32/3720_2.png) [@jjjkk](https://discourse.vtk.org/u/jjjkk)
#### Post date: [September 3, 2021, 8:56am UTC](https://discourse.vtk.org/t/vtkimageviewer2s-renderer-has-no-actor/6540/3 "2021-09-03T08:56:11Z")

</div>

sloved, I should use vtkcellpicker
