<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body text="#003333" bgcolor="#FFFFFF">
Hi<br>
I truly need to find a way to have a 'cut' along something not
strictly planar, if nobody can solve the problem related
vtkPolyPlane (see below) I will be very glad also if someone can
suggest some other way to get a similar result.<br>
Thank You<br>
Matteo<br>
<br>
<div class="moz-cite-prefix">Il 05/04/2017 15:24, Matteo via
vtkusers ha scritto:<br>
</div>
<blockquote cite="mid:58E4F010.90009@yahoo.it" type="cite">
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
Hi<br>
Let me add my test code to my previous message:<br>
<br>
<br>
vtkSmartPointer<vtkStructuredGrid> structuredGrid =<br>
vtkSmartPointer<vtkStructuredGrid>::New();<br>
<br>
vtkSmartPointer<vtkPoints> points =<br>
vtkSmartPointer<vtkPoints>::New();<br>
<br>
const int Size=20;<br>
<br>
int i, j, k;<br>
<br>
for(k = 0; k < Size; k++)<br>
for(j = 0; j < Size; j++)<br>
for(i = 0; i < Size; i++)<br>
points->InsertNextPoint(i, j, k);<br>
<br>
// Specify the dimensions of the grid<br>
structuredGrid->SetDimensions(Size,Size,Size);<br>
structuredGrid->SetPoints(points);<br>
<br>
// Cutter<br>
<br>
#if 0<br>
vtkSmartPointer<vtkPlane> plane =<br>
vtkSmartPointer<vtkPlane>::New();<br>
plane->SetOrigin(Size/2,0,0);<br>
plane->SetNormal(1,0,0);<br>
#else<br>
const int N=3;<br>
<br>
const double Step10=(Size-1)/10.0;<br>
<br>
vtkPoints *cutPts = vtkPoints::New();<br>
cutPts->SetNumberOfPoints(N);<br>
<br>
{<br>
i=0;<br>
cutPts->SetPoint(i++, 1*Step10, 1*Step10, 0);<br>
cutPts->SetPoint(i++, 5*Step10, 5*Step10, 0);<br>
cutPts->SetPoint(i++, 5*Step10, 8*Step10, 0);<br>
ASSERT(i==N);<br>
}<br>
<br>
int* idCutPts = new int[N];<br>
for(i = 0; i < N; i++)<br>
idCutPts[i] = i;<br>
<br>
vtkSmartPointer<vtkPolyLine> PolyLine =<br>
vtkSmartPointer<vtkPolyLine>::New();<br>
PolyLine->Initialize(N, idCutPts, cutPts);<br>
<br>
vtkSmartPointer<vtkPolyPlane> plane =<br>
vtkSmartPointer<vtkPolyPlane>::New();<br>
plane->SetPolyLine(PolyLine);<br>
<br>
#endif<br>
<br>
vtkSmartPointer<vtkCutter> cutter =<br>
vtkSmartPointer<vtkCutter>::New();<br>
cutter->SetCutFunction(plane);<br>
cutter->SetInputData(structuredGrid);<br>
cutter->Update();<br>
<br>
vtkSmartPointer<vtkPolyDataMapper> cutterMapper =<br>
vtkSmartPointer<vtkPolyDataMapper>::New();<br>
cutterMapper->SetInputConnection(
cutter->GetOutputPort());<br>
<br>
// Create plane actor<br>
vtkSmartPointer<vtkActor> planeActor =<br>
vtkSmartPointer<vtkActor>::New();<br>
planeActor->GetProperty()->SetColor(1.0,1.0,0);<br>
planeActor->GetProperty()->SetLineWidth(2);<br>
planeActor->SetMapper(cutterMapper);<br>
<br>
// Create a mapper and actor<br>
vtkSmartPointer<vtkDataSetMapper> mapper =<br>
vtkSmartPointer<vtkDataSetMapper>::New();<br>
#if VTK_MAJOR_VERSION <= 5<br>
mapper->SetInputConnection(structuredGrid->GetProducerPort());<br>
#else<br>
mapper->SetInputData(structuredGrid);<br>
#endif<br>
<br>
vtkSmartPointer<vtkActor> actor =<br>
vtkSmartPointer<vtkActor>::New();<br>
actor->SetMapper(mapper);<br>
actor->GetProperty()->SetRepresentationToWireframe();<br>
<br>
// Create a renderer, render window, and interactor<br>
vtkSmartPointer<vtkRenderer> renderer =<br>
vtkSmartPointer<vtkRenderer>::New();<br>
vtkSmartPointer<vtkRenderWindow> renderWindow =<br>
vtkSmartPointer<vtkRenderWindow>::New();<br>
renderWindow->AddRenderer(renderer);<br>
vtkSmartPointer<vtkRenderWindowInteractor>
renderWindowInteractor =<br>
vtkSmartPointer<vtkRenderWindowInteractor>::New();<br>
renderWindowInteractor->SetRenderWindow(renderWindow);<br>
<br>
// Add the actor to the scene<br>
renderer->AddActor(actor);<br>
renderer->AddActor(planeActor);<br>
renderer->SetBackground(.3, .6, .3); // Background color<br>
<br>
// Render and interact<br>
renderWindow->Render();<br>
renderWindowInteractor->Start();<br>
<br>
<br>
<br>
<br>
<div class="moz-cite-prefix">Il 05/04/2017 10:48, Matteo via
vtkusers ha scritto:<br>
</div>
<blockquote cite="mid:58E4AF41.7040100@yahoo.it" type="cite">
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
Hi<br>
I need to use vtkCutter to cut a vtkStructuredGrid, but not
using a simple vtkPlane: what I need is something more complex.<br>
I need to use a polyline, and extrude it on Z direction, to
specify a surface more complex then a simple vtkPlane.<br>
It looks that vtkPolyPlane is what I need, but when I use it I
have a problem: the cut is done quite correctly along the
polyline specified, but also appear some other piece of cut in
some other position.<br>
The picture attached shows the problem.<br>
I tried more grid sizes, and different polylines (different
length or shapes), but there is quite always this strange extra
surfaces added.<br>
I am not sure if it is a correct result of this filter.... or a
bug.<br>
Anyone can help?<br>
Matteo<br>
<br>
<img src="cid:part1.04080905.07050206@yahoo.it" alt=""><br>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Powered by <a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="http://www.kitware.com">www.kitware.com</a>
Visit other Kitware open-source projects at <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a>
Please keep messages on-topic and check the VTK FAQ at: <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.vtk.org/Wiki/VTK_FAQ">http://www.vtk.org/Wiki/VTK_FAQ</a>
Search the list archives at: <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://markmail.org/search/?q=vtkusers">http://markmail.org/search/?q=vtkusers</a>
Follow this link to subscribe/unsubscribe:
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://public.kitware.com/mailman/listinfo/vtkusers">http://public.kitware.com/mailman/listinfo/vtkusers</a>
</pre>
</blockquote>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Powered by <a class="moz-txt-link-abbreviated" href="http://www.kitware.com">www.kitware.com</a>
Visit other Kitware open-source projects at <a class="moz-txt-link-freetext" href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a>
Please keep messages on-topic and check the VTK FAQ at: <a class="moz-txt-link-freetext" href="http://www.vtk.org/Wiki/VTK_FAQ">http://www.vtk.org/Wiki/VTK_FAQ</a>
Search the list archives at: <a class="moz-txt-link-freetext" href="http://markmail.org/search/?q=vtkusers">http://markmail.org/search/?q=vtkusers</a>
Follow this link to subscribe/unsubscribe:
<a class="moz-txt-link-freetext" href="http://public.kitware.com/mailman/listinfo/vtkusers">http://public.kitware.com/mailman/listinfo/vtkusers</a>
</pre>
</blockquote>
<br>
</body>
</html>