[vtkusers] vtkDICOMImageReader -> vtkCutter -> vtkMarchingCubes

Jinyoung Hwang hwangjinyoung at gmail.com
Thu Dec 24 07:11:39 EST 2009


Hi Jothy,

My answer is definitely yes.
vtkPlane::SetOrigion(sagittal, coronal, axial)

vtkCutter::SetValue(x,dist)
as explained in textbook (vtk user's guide),
x is default 0, and distance means the distance of implicit function.
(you may refer to
http://www.vtk.org/doc/release/4.0/html/classvtkCutter.html)

Jinyoung



2009/12/24 KS Jothybasu <jothybasu at gmail.com>

> Thanks!
>
> Does the SetOrigin(100,0,0) mean a sagitall cut or cut in the X-plane at
> 100th pixel and what does SetValue(0, 0.5) mean?
>
> Many thanks again
>
> Jothy
>
>   On Thu, Dec 24, 2009 at 3:50 AM, Jinyoung Hwang <hwangjinyoung at gmail.com
> > wrote:
>
>>   Hello,
>>
>> I made an example you want, but it may not be.
>>  If not, repost again, then other will help you.
>>
>> Jinyoung
>>
>>
>> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>  // data load
>>  vtkSmartPointer<vtkStructuredPointsReader> reader =
>> vtkSmartPointer<vtkStructuredPointsReader>::New();
>>  reader->SetFileName("test.vtk");
>>  reader->Update();
>>  // MC is used to display in 3D
>>  vtkSmartPointer<vtkMarchingCubes> cubes =
>> vtkSmartPointer<vtkMarchingCubes>::New();
>>  cubes->SetInputConnection(reader->GetOutputPort());
>>  cubes->ComputeNormalsOn();
>>  cubes->ComputeGradientsOn();
>>  cubes->SetValue(0, 20);
>>  cubes->Update();
>> // create a plane, and specify it
>>  vtkSmartPointer<vtkPlane> plane = vtkSmartPointer<vtkPlane>::New();
>>  plane->SetOrigin(100,0,0);
>>  plane->SetNormal(1,0,0);
>> // create a cutter
>>  vtkSmartPointer<vtkCutter> cutter = vtkSmartPointer<vtkCutter>::New();
>>  cutter->SetInputConnection(cubes->GetOutputPort());
>>  cutter->SetCutFunction(plane);
>>  cutter->GenerateCutScalarsOn();
>>  cutter->SetValue(0, 0.5);
>>  // create a mapper
>>  vtkSmartPointer<vtkPolyDataMapper> mapper =
>> vtkSmartPointer<vtkPolyDataMapper>::New();
>>  mapper->SetInputConnection(cutter->GetOutputPort());
>>  mapper->ScalarVisibilityOn();
>>  mapper->Update();
>>
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the VTK 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/20091224/f55c5fb8/attachment.htm>


More information about the vtkusers mailing list