亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? displaytriangletest.java

?? 《JAVA 3D 交互式三維圖形編程》書中第三章的全部源代碼。
?? JAVA
字號(hào):
import java.applet.Applet;
import java.awt.BorderLayout;
import javax.media.j3d.*;
import javax.vecmath.*;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.behaviors.mouse.*;
import com.sun.j3d.utils.geometry.Primitive;
import com.sun.j3d.utils.universe.*;
public class DisplayTriangleTest extends Applet
{
	public BranchGroup createBranchGroup()
	{
		BranchGroup branch=new BranchGroup();
		BoundingSphere bounds=new BoundingSphere(new Point3d(0.0,0.0,0.0),100.0);
		Background bg=new Background(new Color3f(1.0f,1.0f,0.0f));
		bg.setApplicationBounds(bounds);
		branch.addChild(bg);
		DirectionalLight light=new DirectionalLight(new Color3f(1.0f,0.0f,0.0f),new Vector3f(0.0f,0.0f,-1.0f));
		light.setInfluencingBounds(bounds);
		branch.addChild(light);
		TransformGroup trans=new TransformGroup();
		trans.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
		trans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
		branch.addChild(trans);
		MouseRotate rotate=new MouseRotate(trans);
		rotate.setSchedulingBounds(bounds);
		branch.addChild(rotate);
		MouseZoom zoom=new MouseZoom(trans);
		zoom.setSchedulingBounds(bounds);
		branch.addChild(zoom);
		MouseTranslate translate=new MouseTranslate(trans);
		translate.setSchedulingBounds(bounds);
		branch.addChild(translate);
		trans.addChild(new SurfaceDisplay());
		branch.compile();
		return branch;
	}
	public DisplayTriangleTest()
	{
		this.setLayout(new BorderLayout());
		Canvas3D c=new Canvas3D(SimpleUniverse.getPreferredConfiguration());
		this.add(c,"Center");
		SimpleUniverse u=new SimpleUniverse(c);
		u.getViewingPlatform().setNominalViewingTransform();
		u.addBranchGraph(this.createBranchGroup());
	}
	public static void main(String[] args)
	{
		new MainFrame(new DisplayTriangleTest(),400,400);
	}
}
class SurfaceDisplay extends Shape3D
{
	float[][][] SurfacePointxyz=new float[5][51][3];
	public SurfaceDisplay()
	{
		this.setGeometry(this.createGeometry0());
		this.setAppearance(this.createAppearance0());
	}
	Geometry createGeometry0()
	{
		int i,j,k;
		int nn=50;
		float r=0.8f;
		float theta;
		float[] xp0=new float[nn+1];
		float[] yp0=new float[nn+1];
		float[] zp0=new float[nn+1];
		theta=2.0f*(float)Math.PI/nn;
		for(i=0;i<nn+1;i++)
		{
			xp0[i]=r*(float)Math.cos(theta*i);
			yp0[i]=-0.4f;
			zp0[i]=r*(float)Math.sin(theta*i);
		}
		for(i=0;i<5;i++)
			for(j=0;j<nn+1;j++)
			{
				SurfacePointxyz[i][j][0]=xp0[j];
				SurfacePointxyz[i][j][1]=yp0[j]+i*0.2f;
				SurfacePointxyz[i][j][2]=zp0[j];
			}
		TriangleArray SurfaceTriangleArray=
			new TriangleArray(5*nn*2*3,GeometryArray.COORDINATES|GeometryArray.NORMALS);
		int c=0;
		for(i=0;i<4;i++)
			for(j=0;j<nn;j++)
			{
				Point3f A=new Point3f(SurfacePointxyz[i][j][0],SurfacePointxyz[i][j][1],SurfacePointxyz[i][j][2]);
				Point3f B=new Point3f(SurfacePointxyz[i+1][j][0],SurfacePointxyz[i+1][j][1],SurfacePointxyz[i+1][j][2]);
				Point3f C=new Point3f(SurfacePointxyz[i][j+1][0],SurfacePointxyz[i][j+1][1],SurfacePointxyz[i][j+1][2]);
				Vector3f a=new Vector3f(A.x-B.x,A.y-B.y,A.z-B.z);
				Vector3f b=new Vector3f(C.x-B.x,C.y-B.y,C.z-B.z);
				Vector3f n=new Vector3f();
				n.cross(b,a);
				n.normalize();
				SurfaceTriangleArray.setCoordinate(c,A);
				SurfaceTriangleArray.setCoordinate(c+1,B);
				SurfaceTriangleArray.setCoordinate(c+2,C);
				
				
				SurfaceTriangleArray.setNormal(c,n);
				SurfaceTriangleArray.setNormal(c+1,n);
				SurfaceTriangleArray.setNormal(c+2,n);
				c+=3;
				
				Point3f A0=new Point3f(SurfacePointxyz[i][j+1][0],SurfacePointxyz[i][j+1][1],SurfacePointxyz[i][j+1][2]);
				Point3f B0=new Point3f(SurfacePointxyz[i+1][j][0],SurfacePointxyz[i+1][j][1],SurfacePointxyz[i+1][j][2]);
				Point3f C0=new Point3f(SurfacePointxyz[i+1][j+1][0],SurfacePointxyz[i+1][j+1][1],SurfacePointxyz[i+1][j+1][2]);
				Vector3f a0=new Vector3f(A0.x-B0.x,A0.y-B0.y,A0.z-B0.z);
				Vector3f b0=new Vector3f(C0.x-B0.x,C0.y-B0.y,C.z-B0.z);
				Vector3f n0=new Vector3f();
				n0.cross(b0,a0);
				n0.normalize();
				SurfaceTriangleArray.setCoordinate(c,A0);
				SurfaceTriangleArray.setCoordinate(c+1,B0);
				SurfaceTriangleArray.setCoordinate(c+2,C0);
				
				
				SurfaceTriangleArray.setNormal(c,n0);
				SurfaceTriangleArray.setNormal(c+1,n0);
				SurfaceTriangleArray.setNormal(c+2,n0);
				c+=3;
			}
		return SurfaceTriangleArray;
	}
	Appearance createAppearance0()
	{
		Appearance app=new Appearance();
		PolygonAttributes attri=new PolygonAttributes();
		attri.setCullFace(PolygonAttributes.CULL_NONE);
		attri.setPolygonMode(PolygonAttributes.POLYGON_LINE);
		app.setPolygonAttributes(attri);
		Material material=new Material();
		material.setDiffuseColor(new Color3f(1.0f,0.0f,0.0f));
		material.setSpecularColor(new Color3f(0.0f,1.0f,0.0f));
		material.setShininess(2.0f);
		app.setMaterial(material);
		return app;
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩毛片一二三区| 成人av在线电影| 久久99久久久欧美国产| 国产在线精品一区二区| 国产精品12区| 色婷婷国产精品综合在线观看| 欧美性猛交xxxx黑人交| 日韩一级黄色大片| 中文字幕日本不卡| 亚洲一区二区成人在线观看| 国内精品不卡在线| 欧美曰成人黄网| 国产精品短视频| 国产精品国产成人国产三级| 亚洲精品视频自拍| 国产成人亚洲综合a∨猫咪| 欧美日本一区二区三区四区| 国产欧美一区二区精品仙草咪| 一区二区三区资源| 成人福利视频在线看| 日韩一区二区免费在线电影| 亚洲尤物视频在线| 99久精品国产| 欧美激情一二三区| 国产成都精品91一区二区三| 精品国产乱码久久久久久免费 | 亚洲综合在线电影| 国产成人av一区二区三区在线| 日韩欧美国产1| 久久精品国产亚洲a| 日韩写真欧美这视频| 免费看日韩a级影片| 久久影院电视剧免费观看| 久久66热偷产精品| 欧美精品一区二区三区久久久| 久久精品二区亚洲w码| 久久伊99综合婷婷久久伊| 国产91精品免费| 一区二区三区四区在线播放| 欧美日本国产视频| 精品无人码麻豆乱码1区2区| 久久精品视频一区二区| 99re8在线精品视频免费播放| 亚洲小说春色综合另类电影| 日韩一区二区三区高清免费看看| 国产精品亚洲视频| 亚洲一区二区三区爽爽爽爽爽| 精品污污网站免费看| 亚洲综合色自拍一区| 在线观看亚洲精品| 麻豆精品一区二区三区| 精品久久久久久久久久久久包黑料| 国产剧情av麻豆香蕉精品| 亚洲日本欧美天堂| 日韩久久久久久| 91免费视频大全| 国产一区二区在线视频| 亚洲男同性视频| 欧美精品丝袜久久久中文字幕| 韩国女主播成人在线| 国产精品夫妻自拍| 精品精品国产高清a毛片牛牛| 91在线观看成人| 狠狠网亚洲精品| 日本va欧美va精品发布| 国产精品久久夜| 久久精品亚洲乱码伦伦中文| 成人爱爱电影网址| 国产精品自在在线| 日本欧美肥老太交大片| 亚洲精品国产a久久久久久| 久久丝袜美腿综合| 欧美一区二区三区色| 91福利在线观看| 91欧美一区二区| 欧美日韩视频第一区| bt欧美亚洲午夜电影天堂| 成人免费视频一区二区| voyeur盗摄精品| 91麻豆精品一区二区三区| 美国毛片一区二区| 国模无码大尺度一区二区三区| 日本一区中文字幕| 激情六月婷婷综合| 国产一区二区三区国产| 成人av片在线观看| 在线视频综合导航| 精品久久久久久无| 中文字幕欧美区| 亚洲人成电影网站色mp4| 午夜不卡av在线| 国产精品91xxx| 欧美网站大全在线观看| 欧美成人猛片aaaaaaa| 亚洲欧洲性图库| 亚洲自拍都市欧美小说| 性久久久久久久久| 毛片一区二区三区| 在线看不卡av| 在线精品亚洲一区二区不卡| 欧美日韩久久一区| 欧美电影免费观看高清完整版在 | 麻豆国产欧美日韩综合精品二区| 男女性色大片免费观看一区二区| 国产尤物一区二区在线| 91久久一区二区| 国产亚洲短视频| 久久99在线观看| 在线电影国产精品| 亚洲免费观看高清在线观看| 亚洲视频一区二区在线观看| 国产一区二区三区四区五区入口| 欧美视频一区在线观看| 国产日韩视频一区二区三区| 免费精品视频在线| 67194成人在线观看| 亚洲va中文字幕| 在线精品亚洲一区二区不卡| 中文字幕一区二区三区不卡| 国产精品12区| 中文字幕亚洲成人| 久久精品国产免费| 精品久久久久99| 国产黄色成人av| 久久蜜臀中文字幕| 成人国产精品免费观看动漫| 亚洲国产高清在线观看视频| 久久 天天综合| 精品欧美一区二区在线观看 | 波多野结衣欧美| 亚洲人成网站色在线观看| 在线观看亚洲一区| 一区二区三区在线免费观看| 欧美日韩国产大片| 久草热8精品视频在线观看| 欧美综合一区二区| 国产成人亚洲综合a∨婷婷 | 一区二区三区在线视频观看| 欧美日韩在线电影| 国产在线日韩欧美| 一级做a爱片久久| 日韩一卡二卡三卡国产欧美| 99riav久久精品riav| 免费欧美在线视频| **欧美大码日韩| 岛国精品一区二区| 国产一区91精品张津瑜| 亚洲综合色婷婷| 久久亚洲私人国产精品va媚药| 欧美午夜片在线看| 91色乱码一区二区三区| 久久成人免费电影| 麻豆精品视频在线观看免费| 日韩电影在线看| 丁香六月综合激情| 国产91丝袜在线播放| 激情另类小说区图片区视频区| 午夜精品久久久久久| 尤物在线观看一区| 亚洲精品乱码久久久久久黑人 | 国产精品久久久一本精品 | 加勒比av一区二区| 狠狠色狠狠色综合| 午夜精品一区二区三区免费视频 | 有码一区二区三区| 无吗不卡中文字幕| 午夜精品久久久久久久99樱桃| 国产宾馆实践打屁股91| 国产成人亚洲综合a∨婷婷图片 | 亚洲精品欧美专区| 国产乱人伦偷精品视频免下载| 在线一区二区视频| 国产日韩精品一区二区浪潮av| 日日噜噜夜夜狠狠视频欧美人| 精品一区二区三区免费播放| 欧美日韩性生活| 亚洲与欧洲av电影| 视频一区二区欧美| 久久精品国内一区二区三区| 国产美女娇喘av呻吟久久| 3atv一区二区三区| 男女性色大片免费观看一区二区 | 国产一区二区三区免费观看| 91精品国产综合久久精品图片| 亚洲欧美一区二区久久| 国内精品不卡在线| 久久久久久久综合日本| 岛国精品一区二区| 国产精品久久久久影院色老大| 国产69精品久久777的优势| 欧美韩日一区二区三区四区| 97精品视频在线观看自产线路二| 久久先锋资源网| 99精品视频在线免费观看| 亚洲精品免费在线播放| 欧美区一区二区三区| 丁香五精品蜜臀久久久久99网站| 国产精品电影院| 久久蜜桃香蕉精品一区二区三区| 成人丝袜18视频在线观看|