<div dir="ltr">Try using an example and the cmake file from<div><br></div><div><a href="http://www.vtk.org/Wiki/VTK/Examples/Cxx">http://www.vtk.org/Wiki/VTK/Examples/Cxx</a></div><div><br></div><div>Dan</div><div><br><div><br><div><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 23, 2015 at 3:14 PM, eric lamar via vtkusers <span dir="ltr"><<a href="mailto:vtkusers@vtk.org" target="_blank">vtkusers@vtk.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="color:#000;background-color:#fff;font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div dir="ltr">Hello!</div><div dir="ltr"><br></div><div dir="ltr">I am attempting to run VTK 6.2's example/tutorial code Cone.cxx.  It compiles, however I get a segmentation fault.</div><div dir="ltr"><br></div><div dir="ltr">My environment:  iMac i7 quad coe, oS X 10.10, VTK 6.2</div><div dir="ltr"><br></div><div dir="ltr">-------------</div><div dir="ltr">The listing:</div><div dir="ltr">-------------</div><div dir="ltr"><br></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">/*=========================================================================</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  Program:   Visualization Toolkit</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  Module:    Cone.cxx</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  All rights reserved.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  See Copyright.txt or <a href="http://www.kitware.com/Copyright.htm" target="_blank">http://www.kitware.com/Copyright.htm</a> for details.</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">     This software is distributed WITHOUT ANY WARRANTY; without even</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">     PURPOSE.  See the above copyright notice for more information.</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">=========================================================================*/</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">//</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">// This example creates a polygonal model of a cone, and then renders it to</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">// the screen. It will rotate the cone 360 degrees and then exit. The basic</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">// setup of source -> mapper -> actor -> renderer -> renderwindow is</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">// typical of most VTK programs.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">//</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">// First include the required header files for the VTK classes we are using.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">#include "vtkConeSource.h"</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">#include "vtkPolyDataMapper.h"</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">#include "vtkRenderWindow.h"</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">#include "vtkCamera.h"</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">#include "vtkActor.h"</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">#include "vtkRenderer.h"</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">int main()</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">{</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // Next we create an instance of vtkConeSource and set some of its</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // properties. The instance of vtkConeSource "cone" is part of a</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // visualization pipeline (it is a source process object); it produces data</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // (output type is vtkPolyData) which other filters may process.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  vtkConeSource *cone = vtkConeSource::New();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  cone->SetHeight( 3.0 );</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  cone->SetRadius( 1.0 );</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  cone->SetResolution( 10 );</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // In this example we terminate the pipeline with a mapper process object.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // (Intermediate filters such as vtkShrinkPolyData could be inserted in</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // between the source and the mapper.)  We create an instance of</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // vtkPolyDataMapper to map the polygonal data into graphics primitives. We</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // connect the output of the cone souece to the input of this mapper.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  vtkPolyDataMapper *coneMapper = vtkPolyDataMapper::New();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  coneMapper->SetInputConnection( cone->GetOutputPort() );</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // Create an actor to represent the cone. The actor orchestrates rendering</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // of the mapper's graphics primitives. An actor also refers to properties</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // via a vtkProperty instance, and includes an internal transformation</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // matrix. We set this actor's mapper to be coneMapper which we created</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // above.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  vtkActor *coneActor = vtkActor::New();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  coneActor->SetMapper( coneMapper );</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // Create the Renderer and assign actors to it. A renderer is like a</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // viewport. It is part or all of a window on the screen and it is</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // responsible for drawing the actors it has.  We also set the background</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // color here.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  vtkRenderer *ren1= vtkRenderer::New();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  ren1->AddActor( coneActor );</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  ren1->SetBackground( 0.1, 0.2, 0.4 );</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // Finally we create the render window which will show up on the screen.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // We put our renderer into the render window using AddRenderer. We also</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // set the size to be 300 pixels by 300.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  vtkRenderWindow *renWin = vtkRenderWindow::New();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  renWin->AddRenderer( ren1 );</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  renWin->SetSize( 300, 300 );</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // Now we loop over 360 degreeees and render the cone each time.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  int i;</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  for (i = 0; i < 360; ++i)</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    {</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    // render the image</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    renWin->Render();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    // rotate the active camera by one degree</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    ren1->GetActiveCamera()->Azimuth( 1 );</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    }</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // Free up any objects we created. All instances in VTK are deleted by</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  // using the Delete() method.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  cone->Delete();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  coneMapper->Delete();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  coneActor->Delete();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  ren1->Delete();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  renWin->Delete();</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">  return 0;</font></span></div><div dir="ltr">















































































































</div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">}</font></span></div><div dir="ltr"><br></div><div dir="ltr">-------------</div><div dir="ltr">I compile it:</div><div dir="ltr">-------------</div><div dir="ltr">







</div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">g++ -g -O0 Cone.cxx -I /Users/Eric/VTK/include/vtk-6.2/ -L /Users/Eric/VTK/lib -lvtkFiltersSources-6.2 -lvtkRenderingOpenGL-6.2 -lvtkRenderingCore-6.2 -lvtkCommonExecutionModel-6.2</font></span></div><div><span><br></span></div><div><span>------------</span></div><div dir="ltr"><span>And run it:</span></div><div dir="ltr"><span>------------</span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">./a.out</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Generic Warning: In /Users/Eric/Work/VTK-6.2.0/Rendering/Core/vtkPolyDataMapper.cxx, line 28</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Error: no override found for 'vtkPolyDataMapper'.</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div dir="ltr"><span><font face="Courier New, courier, monaco, monospace, sans-serif">











</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Segmentation fault: 11</font></span></div><div><span><br></span></div><div><span>---------------</span></div><div dir="ltr"><span>And debug it:</span></div><div dir="ltr"><span>---------------</span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">lldb a.out</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">(lldb) target create "a.out"</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Current executable set to 'a.out' (x86_64).</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span>(lldb) </span><span>run</span></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Process 64007 launched: '/Users/Eric/Work/VTK-6.2.0/Examples/Tutorial/Step1/Cxx/a.out' (x86_64)</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Generic Warning: In /Users/Eric/Work/VTK-6.2.0/Rendering/Core/vtkPolyDataMapper.cxx, line 28</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Error: no override found for 'vtkPolyDataMapper'.</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span></span><br></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">Process 64007 stopped</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">* thread #1: tid = 0x42e799, 0x0000000100000d3e a.out`main + 142 at Cone.cxx:51, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">    frame #0: 0x0000000100000d3e a.out`main + 142 at Cone.cxx:51</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">   48  <span>  </span>  // connect the output of the cone souece to the input of this mapper.</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">   49  <span>       </span>  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">   50  <span>  </span>  vtkPolyDataMapper *coneMapper = vtkPolyDataMapper::New();</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">-> 51  <span>  </span>  coneMapper->SetInputConnection( cone->GetOutputPort() );</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">   52  <span>      </span></font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">   53  <span>       </span>  //</font></span></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">   54  <span>  </span>  // Create an actor to represent the cone. The actor orchestrates rendering</font></span></div><div><font face="Courier New, courier, monaco, monospace, sans-serif"><span>(lldb) </span><span>p coneMapper</span></font></div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">(vtkPolyDataMapper *) $0 = 0x0000000000000000</font></span></div><div dir="ltr">



























</div><div><span><font face="Courier New, courier, monaco, monospace, sans-serif">(lldb) </font></span></div><div><span><br></span></div><div><span>-----------</span></div><div dir="ltr"><span>So, why does the code complain about "no override found ..."?  Why does the 'codeMapper' get assigned NULL?  What am I missing?  What do I need to change?</span></div><div dir="ltr"><span><br></span></div><div dir="ltr"><span>Thank you,</span></div><div dir="ltr"><span>Eric.</span></div></div></div><br>_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the VTK FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
<br>
Search the list archives at: <a href="http://markmail.org/search/?q=vtkusers" target="_blank">http://markmail.org/search/?q=vtkusers</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/vtkusers" target="_blank">http://public.kitware.com/mailman/listinfo/vtkusers</a><br>
<br></blockquote></div><br></div>