91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 154KB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2021-06-17
  • 語言: Java
  • 標簽: java3d??蒙皮??坐標軸??

資源簡介

自己寫的一個簡單的java3D實例,能過理解3D中的簡單實現和蒙皮過程

資源截圖

代碼片段和文件信息


import?java.applet.*;
import?java.awt.*;
import?javax.media.j3d.*;
import?javax.vecmath.*;
import?com.sun.j3d.utils.behaviors.mouse.*;
import?com.sun.j3d.utils.applet.*;
import?com.sun.j3d.utils.universe.*;
import?com.sun.j3d.utils.image.*;

//1.創建texture2類,擴展applet
public?class?texture2?extends?applet?{
//2.創建createSceneGraph方法,改方法返回一個BranchGroup
private?BranchGroup?createSceneGraph(){
BranchGroup?objroot?=?new?BranchGroup();
//3.創建六組Point3f類型的四邊形的頂點數組,用于創建6個四邊形面
Point3f[]?p1?=?new?Point3f[4];
p1[0]?=?new?Point3f(-.5f?.5f?0.5f);
p1[1]?=?new?Point3f(-.5f?-.5f?0.5f);
p1[2]?=?new?Point3f(.5f?-.5f?0.5f);
p1[3]?=?new?Point3f(.5f?.5f?0.5f);

Point3f[]?p2?=?new?Point3f[4];
p2[0]?=?new?Point3f(-.5f?.5f?-0.5f);
p2[1]?=?new?Point3f(-.5f?-.5f?-0.5f);
p2[2]?=?new?Point3f(-.5f?-.5f?0.5f);
p2[3]?=?new?Point3f(-.5f?.5f?0.5f);

Point3f[]?p3?=?new?Point3f[4];
p3[0]?=?new?Point3f(.5f?.5f?-0.5f);
p3[1]?=?new?Point3f(.5f?-.5f?-0.5f);
p3[2]?=?new?Point3f(-.5f?-.5f?-0.5f);
p3[3]?=?new?Point3f(-.5f?.5f?-0.5f);

Point3f[]?p4?=?new?Point3f[4];
p4[0]?=?new?Point3f(.5f?.5f?0.5f);
p4[1]?=?new?Point3f(.5f?-.5f?0.5f);
p4[2]?=?new?Point3f(.5f?-.5f?-0.5f);
p4[3]?=?new?Point3f(.5f?.5f?-0.5f);

Point3f[]?p5?=?new?Point3f[4];
p5[0]?=?new?Point3f(-.5f?.5f?0.5f);
p5[1]?=?new?Point3f(.5f?.5f?0.5f);
p5[2]?=?new?Point3f(.5f?.5f?-0.5f);
p5[3]?=?new?Point3f(-.5f?.5f?-0.5f);

Point3f[]?p6?=?new?Point3f[4];
p6[0]?=?new?Point3f(-.5f?-.5f?-0.5f);
p6[1]?=?new?Point3f(.5f?-.5f?-0.5f);
p6[2]?=?new?Point3f(.5f?-.5f?0.5f);
p6[3]?=?new?Point3f(-.5f?-.5f?0.5f);

//4.對于每一組四邊形面,調用shapeMaker(java.awt.Component?observer
// String?filenamePoint3f[]?p)第一參數是圖像觀察者,第二個參數用于紋理的圖形文件,
// 第三個參數是頂點的坐標,返回結果是?Shape3D?類型的集合對象
Shape3D?shape1?=?shapeMaker(this“1.png“p1);
Shape3D?shape2?=?shapeMaker(this“2.png“p2);
Shape3D?shape3?=?shapeMaker(this“3.png“p3);
Shape3D?shape4?=?shapeMaker(this“4.png“p4);
Shape3D?shape5?=?shapeMaker(this“5.png“p5);
Shape3D?shape6?=?shapeMaker(this“6.png“p6);

//5.定義坐標系?trans?將四邊形面添加到坐標系中
Transform3D?t3d?=?new?Transform3D();
TransformGroup?trans?=?new?TransformGroup();
trans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
trans.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
trans.addChild(shape1);
trans.addChild(shape2);
trans.addChild(shape3);
trans.addChild(shape4);
trans.addChild(shape5);
trans.addChild(shape6);
objroot.addChild(trans);

//6.定義鼠標旋轉變換坐標系
MouseRotate?behavior?=?new?MouseRotate();
behavior.setTransformGroup(trans);
behavior.setSchedulingBounds(new?BoundingSphere());
objroot.addChild(behavior);
objroot.compile();
return?objroot;

}
//7.定義?shapeMaker?方法,該方法返回?Shape3D?對象
public?Shape3D?shapeMaker(java.awt.Component?observer
String?filename?Point3f[]?p){
TextureLoader?loader?=?new?TextureLoader(

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????6258??2018-04-01?17:07??3D\1.PNG

?????文件???????8691??2018-04-01?18:56??3D\2.PNG

?????文件??????12603??2018-04-01?17:12??3D\3.PNG

?????文件??????16008??2018-04-01?17:12??3D\4.PNG

?????文件??????19316??2018-04-01?17:12??3D\5.PNG

?????文件??????21146??2018-04-01?17:13??3D\6.PNG

?????文件???????9421??2018-04-01?16:05??3D\b4070688a9441b0fd78ca31572f06bc1.jpg

?????文件???????3281??2018-04-01?16:03??3D\cover2.jpg

?????文件???????3765??2018-04-01?17:32??3D\texture2.class

?????文件???????4509??2018-04-01?17:32??3D\texture2.java

?????文件??????58162??2018-04-01?17:22??3D\骰子.PNG

?????目錄??????????0??2018-04-01?19:21??3D

-----------?---------??----------?-----??----

???????????????163160????????????????????12


評論

共有 條評論