[vtkusers] Problem with Render() in Java/Linux
Toh Da Jun
tohdj at bii.a-star.edu.sg
Mon Feb 7 23:04:17 EST 2005
Please ignore my previous post. I've found the bug...and it was in
MediumActor. Where the actor was not added to the renderer at all.
tohdj
On Tue, 2005-02-08 at 10:25, Toh Da Jun wrote:
> Hi,
>
> I'm using Linux + Java and making use of the vtkPanel and vtkCanvas to
> develop a program.
>
> After I had set up the renderwindow etc etc, and my GUI is up and
> running, I clicked on a Menu option (public void ViewMedium()) and it
> adds an actor into the Renderer.
>
> When I did a count of the number of visible actors in the Renderer, the
> number is correct, but I cannot see the new actor in the display.
>
> Anybody know what's wrong with this? Thanks
>
>
> tohdj
>
> =======================================================================
> import java.awt.*;
> import java.awt.event.*;
> import javax.swing.*;
> import vtk.*;
>
> public class MCSCanvas extends JPanel {
> private vtkCanvas renWin;
> private AxesActor MCSAxesActor;
> private MediumActor MCSMediumActor;
> private boolean isDisplayed = false;
>
> public MCSCanvas() {
> setLayout(new BorderLayout());
>
> // Create the buttons.
> renWin = new vtkCanvas();
> add(renWin, BorderLayout.CENTER);
>
> AxesActor MCSAxesActor = new AxesActor(renWin.GetRenderer());
> renWin.GetRenderer().AddActor(MCSAxesActor);
>
> MCSMediumActor = new MediumActor(renWin.GetRenderer());
> }
>
> public void ViewMedium()
> {
> if (isDisplayed == false) {
> System.out.println(renWin.GetRenderer().VisibleActorCount());
> renWin.GetRenderer().AddActor(MCSMediumActor);
> renWin.Render();
> isDisplayed = true;
> System.out.println("ViewMedium ON");
> System.out.println(renWin.GetRenderer().VisibleActorCount());
> }
> else {
> System.out.println(renWin.GetRenderer().VisibleActorCount());
> renWin.GetRenderer().RemoveActor(MCSMediumActor);
> renWin.Render();
> isDisplayed = false;
> System.out.println("ViewMedium OFF");
> System.out.println(renWin.GetRenderer().VisibleActorCount());
> }
> }
>
> public void reSize()
> {
> renWin.reSize();
> }
>
> public static void main(String s[])
> {
> MCSCanvas panel = new MCSCanvas();
> MCSCanvas panel2 = new MCSCanvas();
>
> JFrame frame = new JFrame("VTK Canvas Test!");
> frame.getContentPane().setLayout(new GridLayout(2,1));
> frame.addWindowListener(new WindowAdapter()
> {
> public void windowClosing(WindowEvent e) {System.exit(0);}
> });
> frame.getContentPane().add(panel);
> frame.getContentPane().add(panel2);
> frame.pack();
> frame.setVisible(true);
> }
> }
>
>
>
> _______________________________________________
> 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
>
More information about the vtkusers
mailing list