<br><font size=2 face="sans-serif">I want to use vtkLinearExtrusion to
generate a pad with 5~8 or more edge. As the code list following, vtkPoints
-> vtkCellArray -> vtkPolyData -> vtkLinearExtrusion -> vtkPolyDataMapper
, but when I render this in ren window, there's an exception error. </font>
<br>
<br><font size=2 face="sans-serif">Does anybody know how to create the
pad like this? Could anyone give me a example code to do this.</font>
<br>
<br>
<br><font size=2 face="sans-serif"> //Create Pad Section</font>
<br><font size=2 face="sans-serif"> vtkPoints *points=vtkPoints::New();</font>
<br><font size=2 face="sans-serif"> double rDir = -1.; //
Ellipsoidal Head direction</font>
<br><font size=2 face="sans-serif"> double rDo, rDi, rH;</font>
<br><font size=2 face="sans-serif"> rDi = 40.;</font>
<br>
<br><font size=2 face="sans-serif"> points->InsertPoint(0,
0., 0, 0);</font>
<br><font size=2 face="sans-serif"> points->InsertPoint(1,
rDi/2., 30, 0);</font>
<br>
<br><font size=2 face="sans-serif"> points->InsertPoint(2,
rDi/2., 45, 0);</font>
<br><font size=2 face="sans-serif"> points->InsertPoint(3,
22, 15, 0);</font>
<br><font size=2 face="sans-serif"> points->InsertPoint(4,
60., 50, 0);</font>
<br><font size=2 face="sans-serif"> points->InsertPoint(5,
20., 50, 0);</font>
<br><font size=2 face="sans-serif"> int nPoints= 5;</font>
<br><font size=2 face="sans-serif"> vtkCellArray *poly=vtkCellArray::New();</font>
<br><font size=2 face="sans-serif"> poly->InsertNextCell(nPoints);</font>
<br><font size=2 face="sans-serif"> for (int i=0; i<= nPoints;
i++)</font>
<br><font size=2 face="sans-serif"> {</font>
<br><font size=2 face="sans-serif"> poly->InsertCellPoint(i);</font>
<br><font size=2 face="sans-serif"> }</font>
<br><font size=2 face="sans-serif"> // Construct profile</font>
<br><font size=2 face="sans-serif"> vtkPolyData *profile=vtkPolyData::New();</font>
<br><font size=2 face="sans-serif"> profile->SetPoints(points);</font>
<br><font size=2 face="sans-serif"> profile->SetPolys(poly);</font>
<br><font size=2 face="sans-serif"> profile->SetLines(poly);</font>
<br>
<br>
<br><font size=2 face="sans-serif"> // Extrude profile</font>
<br><font size=2 face="sans-serif"> vtkLinearExtrusionFilter *extrude
= vtkLinearExtrusionFilter::New();</font>
<br><font size=2 face="sans-serif"> extrude->SetCapping(1);</font>
<br><font size=2 face="sans-serif"> extrude->SetScaleFactor(12);</font>
<br><font size=2 face="sans-serif"> extrude->SetExtrusionTypeToNormalExtrusion();</font>
<br><font size=2 face="sans-serif"> extrude->SetVector(0,0,1);</font>
<br><font size=2 face="sans-serif"> extrude->SetInput(profile);</font>
<br>
<br>
<br><font size=2 face="sans-serif"> vtkPolyDataMapper *map=vtkPolyDataMapper::New();</font>
<br><font size=2 face="sans-serif"> map->SetInput(extrude->GetOutput());</font>
<br>
<br><font size=2 face="sans-serif"> vtkActor *pPad = vtkActor::New();</font>
<br><font size=2 face="sans-serif"> pPad->SetMapper(map);</font>
<br>
<br><font size=2 face="sans-serif"> // Render object in current render
window</font>
<br><font size=2 face="sans-serif"> vtkWindow1->GetRenderer()->AddActor(pPad);</font>
<br><font size=2 face="sans-serif"> Delete object does not used anymore</font>
<br><font size=2 face="sans-serif"> pPad->Delete();</font>
<br><font size=2 face="sans-serif"> map->Delete();</font>
<br><font size=2 face="sans-serif"> extrude->Delete();</font>
<br><font size=2 face="sans-serif"> vtkWindow1->GetRenderer()->ResetCamera();</font>
<br><font size=2 face="sans-serif"> vtkWindow1->Invalidate();</font>