2012-05-30 9 views
0

Помощь! Когда я пытаюсь запустить свой .class-файл, я вижу всплывающее окно приложения, а затем выйдите. Я не вижу своей драгоценной работы !!! Может ли кто-нибудь взглянуть на приведенный ниже код и рассказать мне, что я сделал не так?Java3D Show Show No Any

import com.sun.j3d.utils.universe.SimpleUniverse; 

import com.sun.j3d.utils.geometry.ColorCube; 

import javax.media.j3d.BranchGroup; 

public class Hello3d { 

public Hello3d() 

{ 

    SimpleUniverse universe = new SimpleUniverse(); 

    BranchGroup group = new BranchGroup(); 

    group.addChild(new ColorCube(0.3)); 

    universe.getViewingPlatform().setNominalViewingTransform(); 

    universe.addBranchGraph(group); 

} 

public static void main(String[] args) { 
    //Schedule a job for the event-dispatching thread: 
    //creating and showing this application's GUI. 
    javax.swing.SwingUtilities.invokeLater(new Runnable() { 
     public void run() { 
      new Hello3d(); 
     } 
    }); 
} 

} // end of class Hello3d 

ответ

1

Вы создали сцену правильно, насколько я могу судить, но вы не создавали никаких средств, чтобы показать его пользователю (окна, холст и т.д.).

С вашего кода, я предполагаю, что вы следите за this tutorial, правильно? Проверьте Java 3D and the User Interface (на нескольких страницах вперед на том же сайте), чтобы узнать, как это сделать.

+0

@mrgibsonbr, этот скрипт предназначен для апплета. Как я могу преобразовать его в один для приложения – Barakados

+0

['MainFrame'] (http://download.java.net/media/java3d/javadoc/1.3.2/com/sun/j3d/utils/applet/MainFrame. html) позволяет просматривать содержимое апплета в окне, если следовать примеру, так как оно должно работать нормально как приложение. В принципе, я считаю, что вы могли бы также заменить «Applet» для «Frame», и это сработает (я давно не использовал Java 3D, поэтому не могу точно помнить). – mgibsonbr