<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>
OK, as far as I understand the problem is that my inPtr and outPtr -arrays are on the stack and I nead it on the heap.<br>ahm.. how do I malloc or new the memory in this case? I thought that my call to SetArray does automatically allocate the necessary memory for my new_scalars array..<br>thx,<br>NH<br><br>&gt; Date: Fri, 19 Sep 2008 08:59:19 -0400<br>&gt; From: burlen.loring@kitware.com<br>&gt; To: nataliehapp@hotmail.com<br>&gt; CC: paraview@paraview.org<br>&gt; Subject: Re: [Paraview] problem configuring the output of a filter<br>&gt; <br>&gt; Natalie Happenhofer wrote:<br>&gt; &gt; Hi!<br>&gt; &gt; I have problems configuring the output of my filter, the filter is a <br>&gt; &gt; subclass of vtkDataSetToStructuredGrid and setting the output looks as <br>&gt; &gt; following:<br>&gt; &gt;<br>&gt; &gt; //setting the new point data<br>&gt; &gt; vtkSmartPointer&lt;vtkFloatArray&gt; new_scalars = <br>&gt; &gt; vtkSmartPointer&lt;vtkFloatArray&gt;::New();<br>&gt; &gt;<br>&gt; &gt; double inPtr[numOfTuples + 1]; //pointer for casting the values <br>&gt; &gt; actually to double, so I can perform arithmetic operations with them<br>&gt; &gt;  float outPtr[numOfTuples + 1];<br>&gt; &gt; //calculating ..<br>&gt; &gt;<br>&gt; &gt; new_scalars -&gt; SetArray(outPtr,numOfTuples,1);<br>&gt; <br>&gt; You are passing a stack based array here, when your function returns <br>&gt; inPtr and outPtr no longer are valid. If you are going to use SetArray <br>&gt; you'll have to malloc or new the memory you need.<br>&gt; <br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt; output -&gt; SetDimensions(dims);<br>&gt; &gt;     output -&gt; SetPoints(pts); //Now the points are set<br>&gt; &gt;     output -&gt; GetPointData() -&gt; SetScalars(new_scalars);<br>&gt; &gt;     output -&gt; Squeeze();<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt; dims are the dimensions of the input, which is a RectilinearGrid or a <br>&gt; &gt; StructuredGrid, new_scalars is a vtkFloatArray. I believe that the <br>&gt; &gt; "output-&gt;GetPointData() -&gt;SetScalars(new_scalars)"-line is causing the <br>&gt; &gt; problem, because I get the following error messages:<br>&gt; &gt;<br>&gt; &gt; Program received signal SIGSEGV, Segmentation fault.<br>&gt; &gt; vtkFieldData::GetActualMemorySize<br>&gt; &gt; at C:/ParaviewSource/ParaView3/VTK/Filtering/vtkFieldData.cxx:577<br>&gt; &gt; size +=this-&gt;Data[i]-&gt;GetActualMemorySize();<br>&gt; &gt;<br>&gt; &gt; Backtracing, functions in vtkPVDataInformation and vtkSelfConnections <br>&gt; &gt; are called,<br>&gt; &gt; so I guess, this does not actually happen in my source code but in the <br>&gt; &gt; rendering pipeline. As I did not change anything in the rendering <br>&gt; &gt; pipeline, there must be an allocation or a call in my code with <br>&gt; &gt; incorrect arguments, but I do not really know where to look for the <br>&gt; &gt; error.<br>&gt; &gt; Does anyone have an idea?<br>&gt; &gt;<br>&gt; &gt; Thx,<br>&gt; &gt; NH<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt; ------------------------------------------------------------------------<br>&gt; &gt; Express yourself instantly with MSN Messenger! MSN Messenger <br>&gt; &gt; &lt;http://clk.atdmt.com/AVE/go/onm00200471ave/direct/01/&gt;<br>&gt; &gt; ------------------------------------------------------------------------<br>&gt; &gt;<br>&gt; &gt; _______________________________________________<br>&gt; &gt; ParaView mailing list<br>&gt; &gt; ParaView@paraview.org<br>&gt; &gt; http://www.paraview.org/mailman/listinfo/paraview<br>&gt; &gt;   <br>&gt; <br>&gt; <br>&gt; -- <br>&gt; Burlen Loring<br>&gt; Kitware, Inc.<br>&gt; R&amp;D Engineer<br>&gt; 28 Corporate Drive<br>&gt; Clifton Park, NY 12065-8662<br>&gt; Phone: 518-371-3971 x137<br>&gt; <br><br /><hr />Express yourself instantly with MSN Messenger! <a href='http://clk.atdmt.com/AVE/go/onm00200471ave/direct/01/' target='_new'>MSN Messenger</a></body>
</html>