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

📄 example6_14.java

📁 书中的例题
💻 JAVA
字号:
/* 圆锥体 */
import com.sun.j3d.utils.geometry.*;
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;
import javax.vecmath.*;
class ConeTest 
{
  public BranchGroup createSceneGraph()
    {
	  /* (1)建立构建场景图的对象 */
	  BranchGroup objRoot=new BranchGroup();
	  TransformGroup objTrans=new TransformGroup();
      objRoot.addChild(objTrans);

	  /* (2)设置背景 */
	  //设置场景的范围
	  BoundingSphere bounds=new BoundingSphere(new Point3d(0.0,0.0,0.0),100.0);
	  //设置背景颜色
	  Color3f bgColor=new Color3f(1.0f,2.0f,2.0f);
	  Background bg=new Background(bgColor);
	  bg.setApplicationBounds(bounds);
	  objRoot.addChild(bg);

	  /* (3)设置灯光 */
	  //设置光源的颜色(红色)
	  Color3f directionalColor=new Color3f(1.3f,0.0f,0.0f);
      //设置光源的方向 
	  Vector3f lightDirection = new Vector3f(4.0f, -7.0f, -8.0f);
	  DirectionalLight light=new DirectionalLight(directionalColor,lightDirection);
	  light.setInfluencingBounds(bounds);
	  objRoot.addChild(light);

      /* (4)建立几何形体对象 */
	  //建立物体外观对象
	  Appearance app=new Appearance();
	  Material material=new Material();
	  //设置物体的颜色(白色)
	  material.setDiffuseColor(new Color3f(1.0f,1.0f,1.0f));
	  app.setMaterial(material);
	  //建立圆锥体对象
	  Cone cone=new Cone(0.5f,1.0f,1,app);
	  objRoot.addChild(cone);
	  return objRoot;
	}

 public ConeTest()
	{
	   BranchGroup group=createSceneGraph();
	   //编译场景对象
	   group.compile();
	   SimpleUniverse universe = new SimpleUniverse();
       // 设置观察点(Viewer),使之注视物体
       universe.getViewingPlatform().setNominalViewingTransform();
       // 添加场景对象到虚拟空间中
       universe.addBranchGraph(group);
    }
}

public class Example6_14
{
 public static void main( String[] args ) 
  {  ConeTest c=new ConeTest(); }
}


⌨️ 快捷键说明

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