Hi, David<br><br>Thank you for your reply. The error is gone now. But it turns out the result image is just a black one.<br><br>Here is what I do,<br><br><b>vtkPolyData* polydata = vtkPolyData::New();<br>vtkPolyDataMapper* mapper = vtkPolyDataMapper::New();<br>
vtkActor* actor = vtkActor::New();<br>vtkRenderer* renderer = vtkRenderer::New();<br>vtkRenderWindow* renWin = vtkRenderWindow::New();<br>vtkLight* frontLight = vtkLight::New();<br>vtkLight* backLight = vtkLight::New();<br>
vtkCamera* camera = vtkCamera::New();<br>vtkGenericDataObjectReader* fileReader = vtkGenericDataObjectReader::New();<br>vtkBMPWriter* imageWriter = vtkBMPWriter::New();<br>vtkWindowToImageFilter* filter = vtkWindowToImageFilter::New();<br>
vtkImageCast* cast = vtkImageCast::New();<br><br><br>fileReader-&gt;SetFileName(&quot;C:\\Users\\Wenlong\\Desktop\\surface.vtk&quot;);       //Open .vtk file<br>fileReader-&gt;OpenVTKFile();<br>fileReader-&gt;Update();<br>
<br>polydata = fileReader-&gt;GetPolyDataOutput();                     //Get polydata<br><br>frontLight-&gt;SetFocalPoint(0, 1, 0);                                     // Set illuminations<br>frontLight-&gt;SetPosition(0, 0, 1000000);<br>
frontLight-&gt;SetIntensity(1.0);<br><br>backLight-&gt;SetFocalPoint(0, 1, 0);<br>backLight-&gt;SetPosition(0, 0, -1000000);<br>backLight-&gt;SetIntensity(1.0);<br><br>mapper-&gt;SetInput(polydata);                                            //Set mapper<br>
<br>actor-&gt;SetMapper(mapper);                                             //Set actor<br>actor-&gt;GetProperty()-&gt;SetColor(0.9, 0.9, 0.9);<br><br>camera-&gt;SetViewUp(0, 1, 0);                                           //Set camera<br>
<br>renderer-&gt;SetBackground(0, 0, 0);                                   //Set renderer<br>renderer-&gt;AddActor(actor);<br>renderer-&gt;AddLight(frontLight);<br>renderer-&gt;AddLight(backLight);<br>renderer-&gt;SetActiveCamera(camera);<br>
renderer-&gt;ResetCamera();<br><br>renWin-&gt;AddRenderer(renderer);                                      //Set render window<br>renWin-&gt;SetSize(512, 512);<br>renWin-&gt;Render();<br><br>filter-&gt;SetInput(renWin);                                                   //Set window to image filter<br>
filter-&gt;SetMagnification(1);<br>filter-&gt;SetInputBufferTypeToZBuffer();<br>filter-&gt;Update();<br><br>cast-&gt;SetInput(filter-&gt;GetOutput());<br>cast-&gt;SetOutputScalarTypeToUnsignedChar();                  //Set image cast<br>
cast-&gt;Update();<br><br>imageWriter-&gt;SetFileName(&quot;C:\\Users\\Wenlong\\Desktop\\DepthMap.bmp&quot;);<br>imageWriter-&gt;SetInput(cast-&gt;GetOutput());               <br>imageWriter-&gt;Update();<br>imageWriter-&gt;Write();                                                      //Write image</b><br>
<br>The outcoming image is a 512x512 black image. I&#39;m not sure which part of the code cause such a problem. Please correct me.<br><br>Many thanks for your kindly help.<br><br>Best wishes<br>Wenlong<br>