<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
The idea is the cut through a StructuredGrid with a curved surface (a surface interactively defined by the user).<div>The curved surface will be vertical so it will look like a curvy carpet.</div><div><br></div><div>Working with vtkCutter and vtkImplicitDataSet. In theory it should work, but I cannot get it going!!! Unfortunately.</div><div>I am able to create a cut surface using a vtkPlane or a vtkSphere as the ImplicitFunction cutFunction, but using vtkImplicitDataSet as the ImplicitFunction is playing games with me...</div><div><br></div><div>Rgds Stein Erik</div><div>----------------------------------------------------------</div><div>Parts os the code (Python):</div><div><div style="text-indent: 0in !important; "># Create Grid to be cut</div><div>gridSource = vtk.vtkStructuredGrid()</div><div>gridSource.SetDimensions(11,11,11)</div><div>gridSource.SetPoints(points)</div><div>gridSource.GetCellData().SetScalars(cells)</div><div>gridSource.GetPointData().SetScalars(pointScalars)</div><div><br></div><div>gridMapper = vtk.vtkDataSetMapper()</div><div>gridMapper.SetInput(gridSource)</div><div>gridMapper.ScalarVisibilityOn()</div><div>#gridMapper.SetScalarModeToUseCellData()</div><div>gridMapper.SetScalarModeToUsePointData()</div><div><br></div><div>gridActor = vtk.vtkActor()</div><div>gridActor.SetMapper(gridMapper)</div><div>gridActor.GetProperty().SetColor(1.0, 1.0, 1.0)</div><div>gridActor.GetProperty().SetRepresentationToWireframe()</div><div>#gridActor.GetProperty().SetRepresentationToSurface()</div><div><br></div><div># Create Cutting Surface</div><div>sgReader = vtk.vtkStructuredGridReader()</div><div>sgReader.SetFileName("StructuredGrid_Test.vtk")</div><div>sgReader.Update()</div><div><br></div><div>gridextractFilter = vtk.vtkStructuredGridGeometryFilter()</div><div>gridextractFilter.SetInputConnection(sgReader.GetOutputPort())</div><div>gridextractFilter.SetExtent(0,19,0,2,0,0)</div><div>gridextractFilter.Update()</div><div><br></div><div>gridextractNormalsFilter = vtk.vtkPolyDataNormals()</div><div>gridextractNormalsFilter.SetInputConnection(gridextractFilter.GetOutputPort())</div><div>gridextractNormalsFilter.Update()</div><div><br></div><div>cutTriangles = vtk.vtkTriangleFilter()</div><div>cutTriangles.SetInputConnection(gridextractNormalsFilter.GetOutputPort())</div><div><br></div><div><div style="text-indent: 0in !important; ">implicitFunc = vtk.vtkImplicitDataSet()</div><div style="text-indent: 0in !important; ">implicitFunc.SetDataSet(gridextractNormalsFilter.GetOutput())</div><div style="text-indent: 0in !important; "><br></div></div><div># Create Cutter</div><div>cutter = vtk.vtkCutter()</div><div>cutter.SetCutFunction(implicitFunc)</div><div>cutter.SetInput(gridSource)</div><div><br></div><div>cutterMapper=vtk.vtkPolyDataMapper()</div><div>cutterMapper.SetInputConnection(cutter.GetOutputPort())</div><div><br></div><div>cutterActor = vtk.vtkActor()</div><div>cutterActor.SetMapper(cutterMapper)</div><div>cutterActor.GetProperty().SetColor(1.0, 0.0, 1.0)</div><div>#cutterActor.GetProperty().SetRepresentationToSurface()</div><div>cutterActor.GetProperty().SetRepresentationToWireframe()</div><div><br></div><div># Create the usual rendering stuff</div><div>ren = vtk.vtkRenderer()</div><div>renWin = vtk.vtkRenderWindow()</div><div>renWin.AddRenderer(ren)</div><div>iren = vtk.vtkRenderWindowInteractor()</div><div>iren.SetRenderWindow(renWin)</div><div><br></div><div># Add the actors to the renderer, set the background and size</div><div>ren.AddActor(gridActor)</div><div>ren.AddActor(cutterActor)</div><div>renWin.SetSize(500, 500)</div><div>iren.Initialize()</div><div>renWin.Render()</div><div>iren.Start()</div><div><br></div></div>                                               <br /><hr />Windows Live: Make it easier for your friends to see  <a href='http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_2:092009' target='_new'>what you’re up to on Facebook.</a></body>
</html>