Hello all  in mailing list,<br><br>The develop tool of  my application are VC6.0 + vtk5.1. And I&#39;d  appreciate any advice to help me to soleve the problem.<br><br>The state of mine is that when i use MC to reconstruct , and select one single contour value,  the number of image is 200(bmp: 329*354). of coucse , the app is sucessfully executing!<br>
However, i&#39;d like to reconstuct multi-isosurface. In addition, i hope the app can control property of each isosurface(vtkactor*). So I use multi-pipeline to reconstruct,each actor has private pipeline, but the result is error when there are many contour values ,for example the number of contour values is 4 , the main code and relevant information as follows:<br>
<br>// the data set is bmp: 329*354*350<br><br>    std::vector&lt;vtkMarchingCubes*&gt; vskinExtractor;<br>    std::vector&lt;vtkDecimatePro*&gt; vdeci;//<br>    std::vector&lt;vtkSmoothPolyDataFilter*&gt; vsmoother;//<br>
    std::vector&lt;vtkPolyDataNormals*&gt; vskinNormal;//<br>    std::vector&lt;vtkPolyDataMapper*&gt; vskinMapper;//<br>    std::vector&lt;vtkActor*&gt; vskin;<br>    <br>//y is the number of the scalar value, here is 4<br>
    for (size_t numIndex = 0; numIndex &lt; y; numIndex++)<br>    {<br>        vskinExtractor.push_back(vtkMarchingCubes::New());<br>        vskinExtractor[numIndex]-&gt;SetInputConnection(m_read-&gt;GetOutputPort());<br>
        vskinExtractor[numIndex]-&gt;SetValue(numIndex, vYuzhi[numIndex]);<br><br>        vdeci.push_back(vtkDecimatePro::New());<br>        vdeci[numIndex]-&gt;SetInputConnection(vskinExtractor[numIndex]-&gt;GetOutputPort());//<br>
        vdeci[numIndex]-&gt;SetTargetReduction(0.5);//<br>        vdeci[numIndex]-&gt;PreserveTopologyOn();//<br><br>        vsmoother.push_back(vtkSmoothPolyDataFilter::New());<br>        vsmoother[numIndex]-&gt;SetInputConnection(vdeci[numIndex]-&gt;GetOutputPort());//<br>
        vsmoother[numIndex]-&gt;SetNumberOfIterations(800);//Specify the number of iterations for Laplacian smoothing<br><br>        vskinNormal.push_back(vtkPolyDataNormals::New());<br>        vskinNormal[numIndex]-&gt;SetInputConnection(vsmoother[numIndex]-&gt;GetOutputPort());//<br>
        vskinNormal[numIndex]-&gt;SetFeatureAngle(60.0);//<br><br>        vskinMapper.push_back(vtkPolyDataMapper::New());<br>        vskinMapper[numIndex]-&gt;SetInputConnection(vskinNormal[numIndex]-&gt;GetOutputPort());<br>
        vskinMapper[numIndex]-&gt;ScalarVisibilityOff();<br>        <br>        vskin.push_back(vtkActor::New());<br>        vskin[numIndex]-&gt;SetMapper(vskinMapper[numIndex]);        <br>    }<br><br><br>After the app  executing  dozens of minutes, the vtkOutputWindow output error messages:<br>
Error:in c:\vtk5.0\vtk\common\vtkDataArrayTemplate.cxx line 255<br>vtkIdTypeArray(0x...):unable to allocate 62300005 elements of size 2<br><br>In my opinion,may be the reason  is that  data is too large or there are generating too many meshes while MC   extracting isosurface, but i do not know how to solve it!<br>
I alse lookup information in &quot;VTK FAQ&quot; in KitWare web, and the solution can&#39;t fit my problem. Thanks for any help!!<br clear="all"><br>