<div dir="ltr">I made it work!<div><br></div><div>Here's the code:</div><div><br></div><div><div> vtkDICOMImageReader readerdicom = new vtkDICOMImageReader();</div><div> readerdicom.SetDirectoryName(@"C:\imgDicom");<br>
</div><div> readerdicom.Update();<br></div><div> <br></div><div> vtkRenderer renderer = vtkRenderer.New();//renderWindowControl1.RenderWindow.GetRenderers().GetFirstRenderer(); ;</div><div> vtkRenderWindow renwin = vtkRenderWindow.New();//renderWindowControl1.RenderWindow;</div>
<div> renwin.AddRenderer(renderer);</div><div><br></div><div> vtkRenderWindowInteractor iren = vtkRenderWindowInteractor.New();</div><div> iren.SetRenderWindow(renwin);</div><div> </div>
<div>vtkContourFilter skinextractor = vtkContourFilter.New();</div><div>skinextractor.SetInputConnection(readerdicom.GetOutputPort());</div><div> skinextractor.SetValue(0, -800);<br></div><div><br></div><div>//Remove Inner Points that are not part of the Skin</div>
<div> vtkPolyDataConnectivityFilter contornos = new vtkPolyDataConnectivityFilter();</div><div> contornos.SetInputConnection(skinextractor.GetOutputPort());</div><div> contornos.SetExtractionModeToLargestRegion();</div>
<div> contornos.SetColorRegions(1);</div><div> vtkPolyDataNormals skinnormals = vtkPolyDataNormals.New();</div><div> skinnormals.SetInputConnection(contornos.GetOutputPort());<br></div><div>
skinnormals.SetFeatureAngle(90.0);</div><div> skinnormals.ComputePointNormalsOn();</div><div><br></div><div>// </div><div> vtkPolyDataMapper skinmapper = vtkPolyDataMapper.New();</div>
<div><br></div><div> skinmapper.SetInputConnection(skinnormals.GetOutputPort());</div><div> skinmapper.ScalarVisibilityOff();</div><div><br></div><div><br></div><div><br></div><div> vtkOutlineFilter outlineData = new vtkOutlineFilter();</div>
<div><br></div><div> vtkActor skin = vtkActor.New();</div><div> skin.SetMapper(skinmapper);</div><div><br></div><div><br></div><div> vtkCamera camara = renderer.GetActiveCamera();</div><div>
camara.SetViewUp(0, 0, -1);</div><div> camara.SetPosition(1, 1, 1);</div><div> camara.SetFocalPoint(0, 0, 0);</div><div> camara.ComputeViewPlaneNormal();</div><div> renderer.AddActor(skin);</div>
<div> renderer.SetActiveCamera(camara);</div><div> renderer.ResetCamera();</div><div> camara.Dolly(1.5);</div><div><br></div><div><br></div><div><br></div><div> renderer.ResetCameraClippingRange();</div>
<div> iren.Initialize();</div><div> iren.Start();</div><div> skinextractor.Dispose();</div><div> skinnormals.Dispose();</div><div> skinmapper.Dispose();</div><div> skin.Dispose();</div>
<div> camara.Dispose();</div><div> iren.Dispose();</div><div> renwin.Dispose();</div><div> renderer.Dispose();</div><div><br></div><div><br></div><div> readerdicom.Dispose();</div>
</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jan 16, 2014 at 1:16 PM, Bill Lorensen <span dir="ltr"><<a href="mailto:bill.lorensen@gmail.com" target="_blank">bill.lorensen@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><a href="http://vtk.org/Wiki/VTK/Examples/Cxx/Modelling/ExtractLargestIsosurface" target="_blank">http://vtk.org/Wiki/VTK/Examples/Cxx/Modelling/ExtractLargestIsosurface</a><br>
<div><div class="h5"><br>
<br>
On Thu, Jan 16, 2014 at 11:11 AM, David Gobbi <<a href="mailto:david.gobbi@gmail.com">david.gobbi@gmail.com</a>> wrote:<br>
> No, but Google should be able to find one for you.<br>
><br>
> On Thu, Jan 16, 2014 at 7:27 AM, Matias Montroull <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>> wrote:<br>
>> Thanks, any example you could post?<br>
>><br>
>><br>
>> On Thu, Jan 16, 2014 at 1:21 AM, David Gobbi <<a href="mailto:david.gobbi@gmail.com">david.gobbi@gmail.com</a>> wrote:<br>
>>><br>
>>> Fairly often you can get rid of the extra bits by running your data<br>
>>> through vtkPolyDataConnectivityFilter after generating the contours.<br>
>>><br>
>>> On Wed, Jan 15, 2014 at 12:37 PM, Matias Montroull <<a href="mailto:matimontg@gmail.com">matimontg@gmail.com</a>><br>
>>> wrote:<br>
>>> > Hi,<br>
>>> ><br>
>>> > I'm extracting surface from a stack of DICOM Images and noticed that<br>
>>> > some<br>
>>> > inner points are shown.. how can I get rid of those points?<br>
>>> ><br>
>>> > This is what I use: I can only specify the ISO Value but what about<br>
>>> > inner<br>
>>> > points where the ISO value matches but is useless or is not sking as an<br>
>>> > example?<br>
>>> ><br>
>>> > Is there another filter I could apply? or an algorithm I could use to<br>
>>> > remove<br>
>>> > those points?<br>
>>> ><br>
>>> > vtkContourFilter skinextractor = vtkContourFilter.New();<br>
>>> ><br>
>>> ><br>
>>> ><br>
>>> > skinextractor.SetInputConnection(readerdicom.GetOutputPort());<br>
>>> > skinextractor.GetValues();<br>
>>> ><br>
>>> > skinextractor.SetValue(0, -800);<br>
>>> ><br>
>>> > Thanks!<br>
>><br>
>><br>
</div></div>> _______________________________________________<br>
> Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
><br>
> Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
><br>
> Please keep messages on-topic and check the VTK FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
><br>
> Follow this link to subscribe/unsubscribe:<br>
> <a href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
Unpaid intern in BillsBasement at noware dot com<br>
</font></span></blockquote></div><br></div>