javad与计算机三维动态图形网络编程设计教材源程序.doc

javad与计算机三维动态图形网络编程设计教材源程序.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
javad与计算机三维动态图形网络编程设计教材源程序.doc

例3.1基本体组合的显示实例。 //加入程序运行时需要的Java、Java 3D的包 import java.applet.Applet; import java.awt.*; import com.sun.j3d.utils.applet.MainFrame; import com.sun.j3d.utils.geometry.*; import com.sun.j3d.utils.universe.*; import com.sun.j3d.utils.behaviors.mouse.*; import javax.media.j3d.*; import javax.vecmath.*; public class twoprimitivedisplay extends Applet { public BranchGroup createBranchGroup() {//定义BranchGroup BranchGroup BranchGroupRoot =new BranchGroup(); //创建球心在坐标系原点球形范围 BoundingSphere bounds=new BoundingSphere(new Point3d(0.0,0.0,0.0),100.0); //定义背景颜色 Color3f bgColor=new Color3f(1.0f,1.0f,1.0f); Background bg=new Background(bgColor); bg.setApplicationBounds(bounds); BranchGroupRoot.addChild(bg); //定义平行光、颜色、照射方向与作用范围 Color3f directionalColor=new Color3f(1.f,1.f,1.f); Vector3f vec=new Vector3f(-1.f,-1.f,-1.0f); DirectionalLight directionalLight=new DirectionalLight(directionalColor,vec); directionalLight.setInfluencingBounds(bounds); BranchGroupRoot.addChild(directionalLight); //定义两个三维型体的外观 Appearance app1=new Appearance(); Material material1=new Material(); material1.setDiffuseColor(new Color3f(1.0f,.0f,0.0f)); app1.setMaterial(material1); Appearance app2=new Appearance(); Material material2=new Material(); material2.setDiffuseColor(new Color3f(.0f,1.0f,0.0f)); app2.setMaterial(material2); //定义总的TransformGroup:transformgroup TransformGroup transformgroup=new TransformGroup(); //设置对该TransformGroup的读写能力 transformgroup.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); transformgroup.setCapability(TransformGroup.ALLOW_TRANSFORM_READ); //将该TransformGroup加入到BranchGroupRoot中 BranchGroupRoot.addChild(transformgroup); //定义鼠标对场景的旋转、平移与放大功能 MouseRotate mouserotate = new MouseRotate(); mouserotate.setTransformGroup(transformgroup); BranchGroupRoot.addChild(mouserotate); mouserotate.setSchedulingBounds(bounds); MouseZoom mousezoom = new MouseZoom(); mousezoom.setTransformGroup(transformgroup); BranchGroupRoot.addChild(mousezoom); mousezoom.setSchedulingBounds(bo

您可能关注的文档

文档评论(0)

zhangningclb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档