HOME > natural science Laboratory > コンピュータ・シミュレーション講座 > 仮想物理実験室

「physics.js」による仮想物理実験室
地球オブジェクト(Earthクラス)

文責:遠藤 理平 (2017年3月24日) カテゴリ:仮想物理実験室(277)

基底クラス:Sphereクラス

物理シミュレーション環境構築用HTML5フレームワーク「physics.js」にて、地球オブジェクトを生成するクラスです。本クラスは実質的には見た目が地球な球オブジェクトとなります。なお、テクスチャマッピング用の画像は本ライブラリで利用しているthree.jsに同包されている画像を利用しています。

プロパティ

プロパティデータ型デフォルト説明
cloud <object>{
mapTexture : null
angularVelocity : Math.PI/5000,
}
地球に加える雲テクスチャ(mapTexture)と雲の回転速度を設定。

3次元グラフィックス

20170324-1.png
実際の実行結果はこちらでご覧いただけます

コンストラクタの実行例

var earth = new PHYSICS.Earth({
	mass: 1,                //質量
	radius: 2,              //球の半径
	//初期状態パラメータ
	position: {x: 0, y: 0, z: 0}, //位置ベクトル
	velocity: {x: 0, y: 0, z: 0},  //速度ベクトル
	axis :{x:0, y:0, z:1},  //姿勢軸ベクトル
	angle : Math.PI,
	//材質オブジェクト関連パラメータ
	material : {
		type : "Phong",
		color : 0xFFFFFF,   //反射色
		ambient : 0x000000, //環境色
		castShadow : true,  //影の描画
		specular: 0x444444, //鏡面色
		shininess: 20,      //鏡面指数
		mapTexture:         "../data/earth_atmos_2048.jpg",    //テクスチャマッピング
		normalMapTexture:   "../data/earth_normal_2048.jpg",   //法線マッピング
		specularMapTexture: "../data/earth_specular_2048.jpg", //鏡面マッピング
	},
	rotationXYZ : true,  //XYZ→ZXYへ変更

	//形状オブジェクト関連パラメータ
	geometry : {
		widthSegments :100,
		heightSegments :100,
	},
	//雲関連パラメータ
	cloud : {
		mapTexture: "../data/earth_clouds_1024.png",
		angularVelocity : Math.PI /5000,
	}
})

メモ

並進運動
回転運動
衝突計算
接触計算


▲このページのトップNPO法人 natural science トップ

関連記事

仮想物理実験室







▲このページのトップNPO法人 natural science トップ