2012-05-30 149 views
0

幫助!當我嘗試啓動我的.class文件時,我看到應用程序彈出,然後退出。我不明白我的寶貴工作!有人可以看看下面的代碼,並告訴我我做錯了什麼嗎?Java3D不會給我任何東西

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,這個腳本是一個Applet。我如何將它轉換爲一個應用程序 – Barakados

+0

['MainFrame'](http://download.java.net/media/java3d/javadoc/1.3.2/com/sun/j3d/utils/applet/MainFrame。 html)類允許您在窗口中查看applet的內容,如果您按照示例進行操作,它應該可以很好地作爲應用程序使用。原則上,我相信你也可以替換'Applet'作爲'Frame',它也可以工作(自從我上次使用Java 3D以來已經很長時間了,所以我不能確定)。 – mgibsonbr