「TubeGeometry」の編集履歴(バックアップ)一覧はこちら
「TubeGeometry」(2013/04/21 (日) 00:09:17) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
#divclass(modif){更新日:&date(), r57}
#divclass(hd){#hr()}
#divid(d0){}
(わかりやすくするためにワイヤーフレームも一緒に表示している。)
***説明
>&b(){THREE.TubeGeometry ( path}, segments, radius, radiusSegments, closed, debug &b(){)}
パスに従って管を作る。
***パラメータ
:''path'' <THREE.Curve?>
|カーブのパス。
:''segments'' <int>[= 64]
|パス方向の分割数。増やすと曲線パスが滑らかに。
:''radius'' <float>[= 1]
|管の太さ。
:''radiusSegments'' <int>[= 8]
|管の断面円の分割数。増やすと円柱形に近づく。
:''closed'' <bool>[= false]
|true:終点-始点を閉じる、false:閉じない
:''debug'' <bool>[= false]
|trueにするとdebugプロパティにデバッグ用の矢印3Dオブジェクトが入る。パスのそれぞれ分割点から、tangentを青・normalを赤・binormalを緑で表示・・・って何のこっちゃわからん。表示重め。
***例
ジオメトリ作ってマテリアルと合わせてメッシュにしてシーンに追加するまで。
// パス「ん」
var path = new THREE.SplineCurve3([
new THREE.Vector3(0, 60, 0),
new THREE.Vector3(-50, -40, -8),
new THREE.Vector3(-50, -40, 17),
new THREE.Vector3(-25, 2, 12),
new THREE.Vector3(-8, 2, 12),
new THREE.Vector3(8, -32, 8),
new THREE.Vector3(33, -40, 4),
new THREE.Vector3(50, -15, 0)
]);
var tubeGeo = new THREE.TubeGeometry(path, 32, 9, 8, false, true);
// pathに沿って32点で、太さ9・断面円の分割数8(つまり正8角形)の、開いた管を作る。デバッグ用オブジェクト作る。
var tube = new THREE.Mesh(
tubeGeo,
new THREE.MeshLambertMaterial( { color: 0xff0000 } )
);
scene.add( tube );
// デバッグ用オブジェクトの表示。重め。
// scene.add( tubeGeo.debug );
#include(-g_tube)
//.
#divclass(modif){更新日:&date(), r58}
#divclass(hd){#hr()}
#divid(d0){}
(わかりやすくするためにワイヤーフレームも一緒に表示している。)
***説明
>&b(){THREE.TubeGeometry ( path}, segments, radius, radiusSegments, closed, debug &b(){)}
パスに従って管を作る。
***パラメータ
:''path'' <THREE.Curve?>
|カーブのパス。
:''segments'' <int>[= 64]
|パス方向の分割数。増やすと曲線パスが滑らかに。
:''radius'' <float>[= 1]
|管の太さ。
:''radiusSegments'' <int>[= 8]
|管の断面円の分割数。増やすと円柱形に近づく。
:''closed'' <bool>[= false]
|true:終点-始点を閉じる、false:閉じない
:''debug'' <bool>[= false]
|trueにするとdebugプロパティにデバッグ用の矢印3Dオブジェクトが入る。パスのそれぞれ分割点から、tangentを青・normalを赤・binormalを緑で表示・・・って何のこっちゃわからん。表示重め。
***例
ジオメトリ作ってマテリアルと合わせてメッシュにしてシーンに追加するまで。
// パス「ん」
var path = new THREE.SplineCurve3([
new THREE.Vector3(0, 60, 0),
new THREE.Vector3(-50, -40, -8),
new THREE.Vector3(-50, -40, 17),
new THREE.Vector3(-25, 2, 12),
new THREE.Vector3(-8, 2, 12),
new THREE.Vector3(8, -32, 8),
new THREE.Vector3(33, -40, 4),
new THREE.Vector3(50, -15, 0)
]);
var tubeGeo = new THREE.TubeGeometry(path, 32, 9, 8, false, true);
// pathに沿って32点で、太さ9・断面円の分割数8(つまり正8角形)の、開いた管を作る。デバッグ用オブジェクト作る。
var tube = new THREE.Mesh(
tubeGeo,
new THREE.MeshLambertMaterial( { color: 0xff0000 } )
);
scene.add( tube );
// デバッグ用オブジェクトの表示。重め。
// scene.add( tubeGeo.debug );
#include(-g_tube)
//.