<div>Hello all,</div>
<div> </div>
<div>I'm a relatively new VTK developer. I am using Java as the gui for my VTK applications. I had a hard time getting started and finding examples written in Java. I have ported a dozen examples to Java to get familiar with it. I wanted to post my examples so other Java enthusiasts could get up to speed on VTK a bit more easily. I hope this helps.
</div>
<div> </div>
<div>Best Regards,</div>
<div>Todd</div>
<div> </div>
<div>
<p>package examples;<br>/*-----------------------------------------------------------<br>bottle.tcl converted to Java</p>
<p>This example shows how create a rotationally symmetric object<br>-----------------------------------------------------------*/</p>
<p>import vtk.*;<br>import javax.swing.*;<br>import java.awt.*;<br>import java.awt.event.WindowAdapter;<br>import java.awt.event.WindowEvent;</p>
<p>public class Bottle {<br>// in the static contructor we load in the native code<br>// The libraries must be in your path to work<br>static {<br> System.loadLibrary("vtkCommonJava");<br> System.loadLibrary("vtkFilteringJava");
<br> System.loadLibrary("vtkIOJava");<br> System.loadLibrary("vtkImagingJava");<br> System.loadLibrary("vtkGraphicsJava");<br> System.loadLibrary("vtkRenderingJava");<br>}</p>
<p>public static void main(String s[]) {</p>
<p>double x[][]={{0.01, 0.0, 0.0},<br> {1.5, 0.0, 0.0},<br> {1.5, 0.0, 3.5},<br> {1.25, 0.0, 3.75},<br> {0.75, 0.0, 4.00},<br> {0.6, 0.0, 4.35},<br> {0.7
, 0.0, 4.65},<br> {1.0, 0.0, 4.75},<br> {1.0, 0.0, 5.0},<br> {0.2, 0.0, 5.0}};</p>
<p>vtkPoints points = new vtkPoints();<br>points.Allocate(10,10);<br>for (int i=0; i<10; i++) points.InsertPoint(i,x[i]);<br>points.SetNumberOfPoints(10);</p>
<p>vtkCellArray lines = new vtkCellArray();<br>lines.Allocate(10,10);<br>lines.InsertNextCell(10); //number of points in line<br>for (int i=0; i<10; i++) {<br> lines.InsertCellPoint(i);<br>}</p>
<p>vtkPolyData profile=new vtkPolyData();<br>profile.SetPoints(points);<br>profile.SetLines(lines);</p>
<p>//vtkDataSetMapper uMap = new vtkDataSetMapper();<br> //uMap.SetInput(profile);</p>
<p><br>//extrude profile to make bottle<br>vtkRotationalExtrusionFilter extrude=new vtkRotationalExtrusionFilter ();<br>extrude.SetInput(profile);<br>extrude.SetResolution(60);<br>extrude.Update();</p>
<p>vtkPolyDataMapper map = new vtkPolyDataMapper();<br> map.SetInput(extrude.GetOutput());</p>
<p>vtkActor bottle=new vtkActor();<br>bottle.SetMapper(map);<br>bottle.GetProperty().SetColor(0.3800, 0.7000, 0.1600);<br>//bottle.GetProperty().BackfaceCullingOff();<br>//bottle.GetProperty().FrontfaceCullingOn();</p>
<p>//Add the actors to the renderer, set the background and size<br>vtkRenderer renderer = new vtkRenderer ();<br>vtkRenderWindow renWin = new vtkRenderWindow();<br> renWin.AddRenderer(renderer);</p>
<p><br>renderer.AddActor(bottle);<br>renderer.SetBackground(1, 1, 1);</p>
<p>vtkRenderWindowInteractor iren = new vtkRenderWindowInteractor();<br>iren.SetRenderWindow(renWin);</p>
<p>renWin.SetSize(500, 500);<br>renWin.Render();<br>iren.Start();</p>
<p>} //main</p>
<p>} //class Bottle</p>
<p><br> </p></div>