<P>Hi everybody,</P>
<P>I am new to vtk,&nbsp; I tried to create a cube datatype (see the code below), when I called the polys-&gt;SetCells(12, IdTypeArray) function the system crashes.</P>
<P>Is it the correct manner to set the cell type as VTK_TETRA like this?</P>
<P>vtkIdTypeArray *IdTypeArray = vtkIdTypeArray::New(); <BR>IdTypeArray-&gt;SetNumberOfValues(12);</P>
<P>for (i=0; i&lt;12; i++) {<BR>&nbsp;polys-&gt;InsertNextCell(4,pts[i]); // tetra<BR>&nbsp;IdTypeArray-&gt;SetValue(i,VTK_TETRA);<BR>}<BR>polys-&gt;SetCells(12, IdTypeArray);</P>
<P>thanks for your time</P>
<P>Naim</P>
<P>// code source</P>
<P>void CGLModelViewCtrl::Cube()<BR>{</P>
<P>static float x[9][3]={{5.000000e-001, -2.840789e-002, 4.103363e-002}, </P>
<P>&nbsp;{0.000000e+000, -2.840789e-002, 4.103363e-002}, <BR>&nbsp;{5.000000e-001, -2.840789e-002, -4.589664e-001}, <BR>&nbsp;{0.000000e+000, -2.840789e-002, -4.589664e-001},<BR>&nbsp;{5.000000e-001, 4.715921e-001, -4.589664e-001}, <BR>&nbsp;{0.000000e+000, 4.715921e-001, -4.589664e-001}, <BR>&nbsp;{5.000000e-001, 4.715921e-001, 4.103363e-002}, <BR>&nbsp;{0.000000e+000, 4.715921e-001, 4.103363e-002},<BR>&nbsp;{3.438136e-001, 2.000117e-001, -2.254762e-001}};</P>
<P>static vtkIdType pts[12][4]={{1, 0, 8, 7}, <BR>&nbsp;{7, 0, 8, 6}, <BR>&nbsp;{1, 5, 8, 3},<BR>&nbsp;{5, 3, 4, 8}, <BR>&nbsp;{4, 5, 8, 6}, <BR>&nbsp;{4, 8, 2, 6},<BR>&nbsp;{8, 7, 5, 1},<BR>&nbsp;{6, 8, 2, 0},<BR>&nbsp;{0, 8, 2, 1},<BR>&nbsp;{1, 8, 2, 3},<BR>&nbsp;{8, 4, 2, 3},<BR>&nbsp;{6, 7, 5, 8}};</P>
<P>&nbsp;</P>
<P>// We'll create the building blocks of polydata including data attributes.</P>
<P>cube = vtkPolyData::New();<BR>points = vtkPoints::New();<BR>polys = vtkCellArray::New();<BR>scalars = vtkFloatArray::New();</P>
<P>// Load the point, cell, and data attributes.</P>
<P>for (int i=0; i&lt;9; i++) points-&gt;InsertPoint(i,x[i]);</P>
<P>vtkIdTypeArray *IdTypeArray = vtkIdTypeArray::New(); <BR>IdTypeArray-&gt;SetNumberOfValues(12);</P>
<P>for (i=0; i&lt;12; i++) {<BR>&nbsp;polys-&gt;InsertNextCell(4,pts[i]);<BR>&nbsp;IdTypeArray-&gt;SetValue(i,VTK_TETRA);<BR>}<BR>polys-&gt;SetCells(12, IdTypeArray);</P>
<P>scalars-&gt;InsertTuple1(0,0.866885);<BR>scalars-&gt;InsertTuple1(1,0.562442);<BR>scalars-&gt;InsertTuple1(2,0.661086);<BR>scalars-&gt;InsertTuple1(3,0);<BR>scalars-&gt;InsertTuple1(4,0.740853);<BR>scalars-&gt;InsertTuple1(5,1);<BR>scalars-&gt;InsertTuple1(6,0.728700);<BR>scalars-&gt;InsertTuple1(7,0.739150);<BR>scalars-&gt;InsertTuple1(8,0.260398);</P>
<P>// We now assign the pieces to the vtkPolyData.</P>
<P>cube-&gt;SetPoints(points);<BR>points-&gt;Delete();<BR>cube-&gt;SetPolys(polys);<BR>polys-&gt;Delete();<BR>cube-&gt;GetPointData()-&gt;SetScalars(scalars);<BR>cube-&gt;Squeeze();<BR>cube-&gt;Update();<BR>scalars-&gt;Delete();</P>
<P>// Now we'll look at it.</P>
<P>cubeMapper = vtkPolyDataMapper::New();<BR>cubeMapper-&gt;SetInput(cube);</P>
<P>cubeActor = vtkActor::New();<BR>cubeActor-&gt;SetMapper(cubeMapper);<BR>renderer-&gt;AddActor(cubeActor);<BR>renderer-&gt;SetActiveCamera(camera);<BR>renderer-&gt;ResetCamera();<BR>}</P><p><br><hr size=1>Post your free ad now! <a href="http://ca.personals.yahoo.com/"><b>Yahoo! Canada Personals</b></a><br>