<div>
<div>Hello all,</div>
<div>&nbsp;</div>
<div>I&#39;m a relatively new VTK developer.&nbsp; I am using Java as the gui for my VTK applications.&nbsp; I had a hard time getting started and finding examples written in Java.&nbsp; I have ported a dozen examples to Java to get familiar with it.&nbsp; I wanted to post my examples so other Java enthusiasts could get up to speed on VTK a bit more easily.&nbsp; I hope this helps. 
</div>
<div>&nbsp;</div>
<div>Best Regards,</div>
<div>Todd</div></div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>
<p>package examples;<br>import vtk.*;</p>
<p>import javax.swing.*;<br>import java.awt.*;<br>import java.awt.event.WindowAdapter;<br>import java.awt.event.WindowEvent;</p>
<p>/**<br>&nbsp;*&nbsp; This example shows how to use draw contours on warped surfaces<br>&nbsp;*/</p>
<p>public class WarpComb {</p>
<p>&nbsp;&nbsp;&nbsp; // in the static contructor we load in the native code<br>&nbsp;&nbsp;&nbsp; // The libraries must be in your path to work<br>&nbsp;&nbsp;&nbsp; static {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.loadLibrary(&quot;vtkCommonJava&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.loadLibrary(&quot;vtkFilteringJava&quot;);
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.loadLibrary(&quot;vtkIOJava&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.loadLibrary(&quot;vtkImagingJava&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.loadLibrary(&quot;vtkGraphicsJava&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.loadLibrary(&quot;vtkRenderingJava&quot;);
<br>&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; public static void main(String s[]) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Read the data files<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vtkPLOT3DReader pl3d = new vtkPLOT3DReader();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pl3d.SetXYZFileName(&quot;c:/user/VTK/Data/combxyz.bin&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pl3d.SetQFileName
(&quot;c:/user/VTK/Data/combq.bin&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pl3d.SetScalarFunctionNumber(100);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pl3d.SetVectorFunctionNumber(202);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pl3d.Update();</p>
<p>&nbsp;&nbsp;&nbsp; vtkStructuredGridGeometryFilter plane =&nbsp; new vtkStructuredGridGeometryFilter();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; plane.SetInput(pl3d.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; plane.SetExtent( 10, 10, 1, 100, 1, 100);</p>
<p>&nbsp;&nbsp;&nbsp; vtkStructuredGridGeometryFilter plane2 = new vtkStructuredGridGeometryFilter();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; plane2.SetInput(pl3d.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; plane2.SetExtent(30, 30, 1, 100, 1, 100);</p>
<p>&nbsp;&nbsp;&nbsp; vtkStructuredGridGeometryFilter plane3 = new vtkStructuredGridGeometryFilter();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; plane3.SetInput(pl3d.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; plane3.SetExtent(45, 45, 1, 100, 1, 100);</p>
<p>&nbsp;&nbsp;&nbsp; vtkAppendPolyData appendF = new vtkAppendPolyData();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; appendF.AddInput (plane.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; appendF.AddInput (plane2.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; appendF.AddInput (plane3.GetOutput());</p>
<p>&nbsp;&nbsp;&nbsp; vtkWarpScalar warp = new vtkWarpScalar();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; warp.SetInput (appendF.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; warp.UseNormalOn();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; warp.SetNormal (1.0, 0.0, 0.0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; warp.SetScaleFactor(2.5);</p>
<p>&nbsp;&nbsp;&nbsp; vtkCastToConcrete caster = new vtkCastToConcrete();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; caster.SetInput (warp.GetOutput());</p>
<p>&nbsp;&nbsp;&nbsp; vtkPolyDataNormals normals = new vtkPolyDataNormals();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; normals.SetInput (caster.GetPolyDataOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; normals.SetFeatureAngle(60);</p>
<p>&nbsp;&nbsp;&nbsp; vtkPolyDataMapper planeMapper = new vtkPolyDataMapper();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; planeMapper.SetInput (normals.GetOutput());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; planeMapper.SetScalarRange(pl3d.GetOutput().GetScalarRange());</p>
<p>&nbsp;&nbsp;&nbsp; vtkActor planeActor = new vtkActor();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; planeActor.SetMapper (planeMapper);</p>
<p>&nbsp;&nbsp;&nbsp; vtkStructuredGridOutlineFilter outline = new vtkStructuredGridOutlineFilter();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; outline.SetInput(pl3d.GetOutput());</p>
<p>&nbsp;&nbsp;&nbsp; vtkPolyDataMapper outlineMapper = new vtkPolyDataMapper();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; outlineMapper.SetInput(outline.GetOutput());</p>
<p>&nbsp;&nbsp;&nbsp; vtkActor outlineActor = new vtkActor();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; outlineActor.SetMapper(outlineMapper);<br>&nbsp;&nbsp;&nbsp; outlineActor.GetProperty().SetColor(0.0, 0.0, 0.0);</p>
<p>//&nbsp; Add the actors to the renderer, set the background and size<br>&nbsp; vtkRenderer renderer = new vtkRenderer ();<br>&nbsp; vtkRenderWindow renWin = new vtkRenderWindow();<br>&nbsp; renWin.AddRenderer(renderer);</p>
<p>&nbsp; renderer.AddActor(outlineActor);<br>&nbsp; renderer.AddActor(planeActor);<br>&nbsp; renderer.SetBackground(1, 1, 1);</p>
<p>&nbsp; vtkCamera cam1 = renderer.GetActiveCamera();<br>&nbsp;&nbsp;&nbsp; cam1.SetClippingRange( 3.95297, 50);<br>&nbsp;&nbsp;&nbsp; cam1.SetFocalPoint( 9.71821, 0.458166, 29.3999);<br>&nbsp;&nbsp;&nbsp; cam1.SetPosition( 2.7439, -37.3196, 38.7167);<br>&nbsp;&nbsp;&nbsp; cam1.ComputeViewPlaneNormal
();<br>&nbsp;&nbsp;&nbsp; cam1.SetViewUp(-0.16123, 0.264271, 0.950876);</p>
<p>&nbsp; vtkRenderWindowInteractor iren = new vtkRenderWindowInteractor();<br>&nbsp; iren.SetRenderWindow(renWin);</p>
<p>&nbsp; renWin.SetSize(500, 500);<br>&nbsp; renWin.Render();<br>&nbsp; iren.Start();<br>&nbsp;&nbsp;&nbsp; }//main<br>}//calss WarpComb<br></p></div>