[vtkusers] Please, I need help of a C# and vtk user!!!

Oliver Kania ptw.freiburg at googlemail.com
Tue Nov 25 02:47:24 EST 2008


Hello Vicky,

As far as I know, MarchingCubes is an algorithm
for 3-Dimensional data. Use MarchingSquares or
maybe vtkContourFilter instead.

Best regards,
Oliver

2008/11/24 Vicky <bonsai19 at gmx.de>

> Hallo vtk users,
>
> Basically, I'm trying to model segmented data in VTK, based on the
> tutorial, provided in:
>
> http://www.cs.utah.edu/classes/cs5630/vtk%204.4.2/vtkhtml/applications/segment/segmented16.html
>
> /Now I am trying to use my own segmented data with the above scripts, where
> //they represent 340x234 segmented data, with each pixel represented by an
> //integer.
>
> When I run my C#-project I should get a vtk File /"Volume.vtk"/ and a
> volume should be rendered.// Instead it is //empty and no polygons are
> generated. I get the following errors:
>
> /ERROR: In m:\dev\cur\vtkdotnet\branch\50\Graphics\vtkDecimatePro.cxx, line
> 161 vtkDecimatePro (04042A88): No data to decimate!
>
> ERROR: In
> m:\dev\cur\vtkdotnet\branch\50\Graphics\vtkSmoothPolyDataFilter.cxx, line
> 212 vtkSmoothPolyDataFilter (04053210): No data to smooth!
>
> ERROR: In m:\dev\cur\vtkdotnet\branch\50\Graphics\vtkPolyDataNormals.cxx,
> line 94
> vtkPolyDataNormals (040540D0): No data to generate normals for!
>
> /I am really trying to understand what //is wrong, but I cannot figure it
> out./
>
> //The script I have written://
>
> public void myvtkpipeline(vtkRenderWindow renWin)
> {
>           vtkRenderWindow renWin = new vtkRenderWindow();
>           renWin.AddRenderer(ren);
>
>           vtkTIFFReader tiffReader = new vtkTIFFReader();
>           tiffReader.SetDataExtent(0, 339, 0, 233, 1, 3);
>           tiffReader.SetFileDimensionality(2);
>           tiffReader.SetFilePattern("C:/Images/labels_%03i.tiff");
>           tiffReader.Update();
>
>           vtkDiscreteMarchingCubes marchingCubes = new
> vtkDiscreteMarchingCubes();
>           marchingCubes.SetInput(tiffReader.GetOutput());
>           marchingCubes.ComputeScalarsOff();
>           marchingCubes.ComputeGradientsOff();
>           marchingCubes.ComputeNormalsOff();
>           marchingCubes.SetValue(0, 7);
>
>           vtkDecimatePro decimate = new vtkDecimatePro();
>           decimate.SetInput(marchingCubes.GetOutput());
>           decimate.SetFeatureAngle(60.0);
>           decimate.SetMaximumError(1);
>           decimate.SetTargetReduction(0.9);
>
>           vtkSmoothPolyDataFilter smoother = new vtkSmoothPolyDataFilter();
>           smoother.SetInput(decimate.GetOutput());
>           smoother.SetNumberOfIterations(10);
>           smoother.SetRelaxationFactor(0.1);
>           smoother.SetFeatureAngle(60.0);
>           smoother.FeatureEdgeSmoothingOff();
>           smoother.SetConvergence(0);
>
>           vtkPolyDataNormals normals = new vtkPolyDataNormals();
>           normals.SetInput(smoother.GetOutput());
>           normals.SetFeatureAngle(60.0);
>
>           vtkStripper stripper = new vtkStripper();
>           stripper.SetInput(normals.GetOutput());
>
>           vtkPolyDataWriter writer = new vtkPolyDataWriter();
>           writer.SetInput(stripper.GetOutput());
>           writer.SetFileName("Volume.vtk");
>           writer.SetFileType(2);
>
>           writer.Update();
>
>           vtkPolyDataReader reader = new vtkPolyDataReader();
>           reader.SetFileName("Volume.vtk");
>
>           vtkPolyDataMapper mapper = new vtkPolyDataMapper();
>           mapper.SetInputConnection(reader.GetOutputPort());
>           mapper.ScalarVisibilityOff();
>
>           actor.SetMapper(mapper);
>
>           vtkCamera camera = new vtkCamera();
>           camera.SetViewUp(0, 0, -1);
>           camera.SetPosition(0, 1, 0);
>           camera.SetFocalPoint(0, 0, 0);
>           camera.ComputeViewPlaneNormal();
>
>           vtkRenderer = new vtkRenderer();
>           ren.SetActiveCamera(camera);
>           ren.ResetCamera();
>           ren.SetBackground(0, 0, 0);
>           ren.ResetCameraClippingRange();
>
>           ren.AddActor(actor);
> }
>
> I hope somebody helps me!
>
> Best regards,
> Vicky
> _______________________________________________
> This is the private VTK discussion list.
> Please keep messages on-topic. Check the FAQ at:
> http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20081125/3f266dc4/attachment.htm>


More information about the vtkusers mailing list