VTK/Java Code Samples

From KitwarePublic
< VTK
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Building VTK Programmable filter in Java

This example change the point location by multiplying by 2 the z coordinate. Be aware, that the filter has one output port by DataSet type so you will have to figure out which port should be used depending on the processing you are doing.


<source lang="java"> import vtk.vtkFloatArray; import vtk.vtkPoints; import vtk.vtkPolyData; import vtk.vtkProgrammableFilter;

public class MyFilter extends vtkProgrammableFilter { vtkPoints outputPoints;

public MyFilter() { SetExecuteMethod(this, "compute"); }

public void compute() { vtkPolyData polyDataInput = GetPolyDataInput(); vtkPolyData polyDataOutput = GetPolyDataOutput(); polyDataOutput.CopyStructure(polyDataInput); polyDataOutput.GetPointData().PassData(polyDataInput.GetPointData()); polyDataOutput.GetCellData().PassData(polyDataInput.GetCellData()); vtkPoints inputPoints = polyDataInput.GetPoints();

outputPoints = new vtkPoints(); outputPoints.SetNumberOfPoints(inputPoints.GetNumberOfPoints()); polyDataOutput.SetPoints(outputPoints); // for (int i = 0; i < inputPoints.GetNumberOfPoints(); i++) { outputPoints.SetPoint(i, inputPoints.GetPoint(i)[0], inputPoints.GetPoint(i)[1], inputPoints.GetPoint(i)[2] * 2); } } } </source>