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

📄 example6_13.java.bak

📁 书中的例题
💻 BAK
字号:
/* 构建三维图形场景 */
import com.sun.j3d.utils.geometry.*;   //提供3D常用的API
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;              //提供3D基本的API
import javax.vecmath.*;                //提供与矢量运算相关的API
class J3d 
{
  J3d()
  {
	//创建一个用来容纳你的场景的虚拟空间
	SimpleUniverse universe = new SimpleUniverse();	
  	//创建一个用来放置一组物体的分支组
   	BranchGroup group = createSceneGraph();
    //设置观察点(Viewer),使之面对物体
	universe.getViewingPlatform().setNominalViewingTransform(); 
    //将物体组添加至虚拟空间
	universe.addBranchGraph(group);	
  }
   //构建场景
  public BranchGroup createSceneGraph()
   {
	RotationInterpolator rotator;
    BoundingSphere bounds ;

	//建立构建场景图的对象
	BranchGroup objRoot = new BranchGroup();      
	//建立保存场景图中几何变换的实例对象
	TransformGroup objTrans = new TransformGroup();
	objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
	objRoot.addChild(objTrans);
    //系统默认几何形体
	objTrans.addChild(new ColorCube(0.4));
	//建立几何变换对象,作平移或旋转运动
	Transform3D yAxis = new Transform3D();  
	Alpha rotationAlpha = new Alpha(-1, 4000);
	rotator =new RotationInterpolator(rotationAlpha,objTrans,
	                          yAxis, 0.0f, (float) Math.PI*2.0f);
	bounds =new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
	rotator.setSchedulingBounds(bounds);
    //向场景中添加物体
	objRoot.addChild(rotator);
    objRoot.compile();
	return objRoot;
  }
} 
public class Example6_13
{
 public static void main( String[] args ) 
  {  J3d j3d=new J3d(); }
}

⌨️ 快捷键说明

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