<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7638.1">
<TITLE>RE: [vtkusers] QVTKWidget crashes the entire Qt Application on click</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->

<P><FONT SIZE=2>I figured out what was wrong. I had to manually override all the mouse event handlers, and left them empty to make sure nothing is done on each mouse event. And now it doesn't crash anymore. The handlers for the super class were pure virtual which caused the seg fault<BR>
<BR>
-----Original Message-----<BR>
From: vtkusers-bounces@vtk.org on behalf of John Eke<BR>
Sent: Fri 5/30/2008 12:42 PM<BR>
To: vtkusers@vtk.org<BR>
Subject: [vtkusers] QVTKWidget crashes the entire Qt Application on click<BR>
<BR>
Hello People,<BR>
<BR>
I have a main QWidget, inside which I have added QVTKWidgets.&nbsp; I was<BR>
wondering what the propper way was to initialize QVTKInteractors so that<BR>
everything works fine. The way I have it setup right now, everything<BR>
loads fine, but once I click on the QVTKWidgets, the entire app crashes<BR>
with a seg fault error.<BR>
<BR>
Heres an example of what I am doing, these are called from within the<BR>
constructor of a subclass of the QVTKWidget:<BR>
<BR>
&nbsp;&nbsp;&nbsp; //initialize member variables<BR>
&nbsp;&nbsp;&nbsp; m_pImageActor = vtkImageActor::New();<BR>
&nbsp;&nbsp;&nbsp; m_pRenderer = vtkRenderer::New();<BR>
&nbsp;&nbsp;<BR>
&nbsp;&nbsp;&nbsp; //add renderer<BR>
&nbsp;&nbsp;&nbsp; m_pRenderer-&gt;SetBackground(0.0, 0.0, 0.0);<BR>
&nbsp;&nbsp;&nbsp; GetRenderWindow()-&gt;AddRenderer(m_pRenderer);<BR>
&nbsp;&nbsp;&nbsp; GetRenderWindow()-&gt;Render();<BR>
<BR>
&nbsp;&nbsp;&nbsp; //load an image using ITK<BR>
&nbsp;&nbsp;&nbsp; typedef itk::Image&lt;unsigned char,2&gt; ImageType;<BR>
&nbsp;&nbsp;&nbsp; typedef itk::ImageFileReader&lt;ImageType&gt; ReaderType;<BR>
&nbsp;&nbsp;&nbsp; typedef itk::ImageToVTKImageFilter&lt;ImageType&gt;&nbsp; ConnectorType;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>
&nbsp;&nbsp;&nbsp; ReaderType::Pointer reader = ReaderType::New();<BR>
&nbsp;&nbsp;&nbsp; ConnectorType::Pointer connector = ConnectorType::New();<BR>
&nbsp;&nbsp;<BR>
&nbsp;&nbsp;&nbsp; //read image and pass it onto the image actor<BR>
&nbsp;&nbsp;&nbsp; reader-&gt;SetFileName(&quot;temp.png&quot;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>
&nbsp;&nbsp;&nbsp; connector-&gt;SetInput (reader-&gt;GetOutput());<BR>
&nbsp;&nbsp;&nbsp; m_pImageActor-&gt;SetInput(connector-&gt;GetOutput());<BR>
<BR>
&nbsp;&nbsp;&nbsp; //add the image actor to the renderer<BR>
&nbsp;&nbsp;&nbsp; m_pRenderer-&gt;AddActor(m_pImageActor);<BR>
<BR>
When I do this, all loads well, but when I click on the QVTKWidget, the<BR>
app crashes with a segmentation fault error. I am assuming maybe I am<BR>
not properly initializing the QVTKInteractor. GetInteractor() gives me<BR>
the QVTKInteractor and SetInteractor() sets it right back. So I am<BR>
assuming the default constructor has already initialized the QVTKInteractor.<BR>
<BR>
Any thoughts/ideas/help will be greatly appreciated!<BR>
<BR>
Thanks<BR>
- John<BR>
_______________________________________________<BR>
This is the private VTK discussion list.<BR>
Please keep messages on-topic. Check the FAQ at: <A HREF="http://www.vtk.org/Wiki/VTK_FAQ">http://www.vtk.org/Wiki/VTK_FAQ</A><BR>
Follow this link to subscribe/unsubscribe:<BR>
<A HREF="http://www.vtk.org/mailman/listinfo/vtkusers">http://www.vtk.org/mailman/listinfo/vtkusers</A><BR>
<BR>
</FONT>
</P>

</BODY>
</HTML>