<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>
Well, I´m posting my source code here, maybe anyone finds the problem:<br><br>vtkHorizontalAverage.h:<br>#ifndef __vtkHorizontalAverage_h<br>#define __vtkHorizontalAverage_h<br><br>#include "vtkStructuredGridToStructuredGridFilter.h"<br><br>class VTK_EXPORT vtkHorizontalAverage: public vtkStructuredGridToStructuredGridFilter<br>{<br>public: <br>&nbsp;&nbsp;&nbsp; static vtkHorizontalAverage *New(){return new vtkHorizontalAverage;}<br>&nbsp;&nbsp;&nbsp; vtkTypeMacro(vtkHorizontalAverage,vtkStructuredGridToStructuredGridFilter);<br>&nbsp;&nbsp;&nbsp; vtkSetMacro(Normalize,int);<br>&nbsp; &nbsp;&nbsp;&nbsp; vtkGetMacro(Normalize,int);<br>&nbsp;&nbsp;&nbsp; vtkBooleanMacro(Normalize, int);<br><br>protected: vtkHorizontalAverage();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; ~vtkHorizontalAverage(){};<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; int Normalize;<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; virtual void Execute();<br>};<br>#endif<br><br><br>vtkHorizontalAverage.cxx:<br>#include "vtkHorizontalAverage.h"<br>#include "vtkStructuredGrid.h"<br>#include "vtkPointData.h"<br>#include "vtkObjectFactory.h"<br><br>vtkHorizontalAverage::vtkHorizontalAverage()<br>{<br>&nbsp;&nbsp;&nbsp; this-&gt;Normalize = 0;<br>}<br><br>void vtkHorizontalAverage::Execute()<br>{vtkStructuredGrid *input = this-&gt;GetInput(); //"this" bezieht sich auf den Filter, auf ein vtkHorizontalAverage - Objekt, das die Methoden von vtkStructuredGridToStructuredGrid geerbt hat<br>&nbsp;vtkStructuredGrid *output = this-&gt;GetOutput();<br><br>&nbsp;vtkPointData *iPtr = input-&gt;GetPointData();<br>&nbsp;vtkPointData *oPtr = output-&gt;GetPointData();<br><br>&nbsp;double *inPtr = input-&gt;GetPoint(0);<br>&nbsp;double *outPtr = output-&gt;GetPoint(0);<br><br>&nbsp;int i,j,k,dims[3]; <br>&nbsp;input-&gt;GetDimensions(dims);<br><br>&nbsp;double *horizontal = new double[dims[0]];<br>&nbsp; &nbsp;&nbsp;&nbsp; double *horizontal_sigma = new double[dims[0]];<br>&nbsp; &nbsp;&nbsp;&nbsp; int index;<br>&nbsp; &nbsp;&nbsp;&nbsp; // compute the horizontal average<br>&nbsp;&nbsp;&nbsp; for (i=0; i&lt;dims[0]; i++) { <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal[i] = 0.0;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (j=0; j&lt;dims[1]; j++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (k=0; k&lt;dims[2]; k++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; index = k*(dims[1]*dims[0]) + j*dims[0] + i;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal[i] += inPtr[index];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal[i] = horizontal[i]/(dims[1]*dims[2]);<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; //subtract horizontal average<br>&nbsp;&nbsp;&nbsp; for (i=0; i&lt;dims[0]; i++) { <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (j=0; j&lt;dims[1]; j++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (k=0; k&lt;dims[2]; k++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; index = k*(dims[1]*dims[0]) + j*dims[0] + i;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; outPtr[index] = inPtr[index] - horizontal[i];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; if (this-&gt;GetNormalize()) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // compute sigma<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (i=0; i&lt;dims[0]; i++) { <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal_sigma[i] = 0.0;<br>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (j=0; j&lt;dims[1]; j++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (k=0; k&lt;dims[2]; k++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; index = k*(dims[1]*dims[0]) + j*dims[0] + i;<br>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal_sigma[i] += (inPtr[index])*(inPtr[index]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal_sigma[i] /= (dims[1]*dims[2]-1);<br>&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; horizontal_sigma[i] = sqrt(horizontal_sigma[i]);&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // now normalize<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (i=0; i&lt;dims[0]; i++) { <br>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (j=0; j&lt;dims[1]; j++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (k=0; k&lt;dims[2]; k++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; index = k*(dims[1]*dims[0]) + j*dims[0] + i;<br>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; outPtr[index] /= horizontal_sigma[i];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; delete [] horizontal;<br>&nbsp;&nbsp;&nbsp; delete [] horizontal_sigma;<br>&nbsp;&nbsp;&nbsp; iPtr-&gt;Delete();<br>&nbsp;&nbsp;&nbsp; oPtr-&gt;Delete();<br>&nbsp;&nbsp;&nbsp; delete [] inPtr;<br>&nbsp;&nbsp;&nbsp; delete [] outPtr;<br>}<br><br>I´m getting rather desperate..<br>thx,<br>NH<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>