⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myswitch.java

📁 这个就是目前我收集,以及自己写的一些java3d的原码,大部分都可以运行,适合和我一样,刚刚开始对java3D心动的菜鸟
💻 JAVA
字号:
package com.java3d.test;

import java.applet.Applet; 
import java.awt.BorderLayout; 
import java.awt.event.*; 
import com.sun.j3d.utils.applet.MainFrame; 
import com.sun.j3d.utils.geometry.*; 
import com.sun.j3d.utils.universe.*; 

import javax.media.j3d.*; 
import javax.vecmath.*; 
 
public class mySwitch extends Applet { 
    public BranchGroup createSceneGraph() { 
        BranchGroup objRoot = new BranchGroup(); 
 
        Transform3D tran3d=new Transform3D(); 
        tran3d.rotX(0.4); 
        TransformGroup objTrans = new TransformGroup(tran3d); 
        objRoot.addChild(objTrans); 
 
        Transform3D t =new Transform3D(); 
        t.rotX(0.4); 
              TransformGroup obj = new TransformGroup(t); 
        Switch s = new Switch( ); 
              s.addChild(new ColorCube(0.4)); 
              s.addChild(new Sphere( )); 
              s.addChild(new Cone( )); 
              s.addChild(new ColorCube(0.2)); 
              s.setCapability(Switch.ALLOW_SWITCH_WRITE); 
        objTrans.addChild(obj); 
        obj.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); 
         
             obj.addChild(s); 
        Alpha scaleAlpha = new Alpha(-1, 
                        Alpha.INCREASING_ENABLE|Alpha.DECREASING_ENABLE, 
                                        0, 0, 4000, 0, 4000, 4000, 0, 4000); 
        SwitchValueInterpolator sv = 
           new SwitchValueInterpolator(scaleAlpha, s,0,4); 
        BoundingSphere bounds = 
            new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0); 
        sv.setSchedulingBounds(bounds); 
        
        obj.addChild(sv); 
 
    Color3f light1Color = new Color3f(1.0f, 1.0f, 0.9f); 
      Vector3f light1Direction  = new Vector3f(4.0f, -7.0f, -12.0f); 
 
      DirectionalLight light1 
            = new DirectionalLight(light1Color, light1Direction); 
      light1.setInfluencingBounds(bounds); 
 
      objRoot.addChild(light1); 
 
        objRoot.compile(); 
 
        return objRoot; 
        } 
 
    public mySwitch() { 
        setLayout(new BorderLayout()); 
        Canvas3D c = new Canvas3D(SimpleUniverse
				.getPreferredConfiguration());
        add("Center", c); 
        BranchGroup scene = createSceneGraph(); 
        SimpleUniverse u = new SimpleUniverse(c); 
        u.getViewingPlatform().setNominalViewingTransform(); 
        u.addBranchGraph(scene); 
    } 
        public static void main(String[] args) { 
                new MainFrame(new mySwitch(),400,400);       
    } 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -