LatheGeometry


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

更新日: 2013-04-20 , r58

回転体。レイズ lathe って旋盤のことらしい。
(わかりやすくするためにワイヤーフレームも一緒に表示。わかりづらいが、図形の元になった辺(紫)も表示。)

説明

THREE.LatheGeometry ( points, segments, phiStart, phiLength )
Z軸を中心とした回転体を作る。

パラメータ

points <array of points>
回転体にしたい図形の頂点の配列。
頂点はnew THREE.Vector3(x,y,z)でベクトル作ってもいいし、単に{ x:hoge, y:huga, z:piyo }でもおk。速度はどっちでも差なし。
始点と終点を一緒にするとくっつく。
注意: Z軸に沿った辺を書くのはやめた方がいいかもしれん
segments <int>[= 12]
分割数。増やすと滑らかな回転体に近づく。
phiStart <float>[= 0]
開始角度。単位はラジアン。+X方向が0度、+Y方向が90度。
phiStart <float>[= 0]
中心角。単位はラジアン。

ジオメトリ作ってマテリアルと合わせてメッシュにしてシーンに追加するまで。
// 回転させる辺や図形の頂点の配列。
var points = [
  new THREE.Vector3(30,0,-40),
  new THREE.Vector3(60,0,-5),
  new THREE.Vector3(58,0,0),
  new THREE.Vector3(60,0,5),
  new THREE.Vector3(30,0,40)
];

var lathe = new THREE.Mesh(
  new THREE.LatheGeometry(points, 16),  // pointsで指定した図形を16段階で回転体化
  new THREE.MeshLambertMaterial( { color: 0x00ff00 } )
);
scene.add( lathe );


Z軸上の辺

仕様なのかバグなのかわからんが、Z軸上に辺を書くといろいろ削除されてしまう。
(左)茶碗内側底面(終点)から外側底面(始点)への辺は書かず、開いた辺のまま回転体。
(右)閉じた辺で回転体。欠けてしまう。