1
如何根據運行時的TubeGeometry動態更改網格的半徑。在運行時更新TubeGeometry的半徑
這裏是我創建的網格:
var points = new THREE.SplineCurve3([
new THREE.Vector3(source.x, source.y, source.z),
new THREE.Vector3(target.x, target.y, target.z)
]);
var geometry = new THREE.TubeGeometry(points, 10, 1, 10, false, false);
geometry.dynamic = true;
var material = new THREE.MeshLambertMaterial({color:0x0000cc});
var mesh = new THREE.Mesh(geometry, material);
在這裏,我怎麼嘗試更新管半徑:
var geometry = mesh.geometry;
geometry.radius = 200;
geometry.verticesNeedUpdate = true;
mesh.updateMatrix();
遺憾的是它不更新筒半徑。它是如何正確地完成的?它有可能嗎?
實際上,管的半徑不能容易地通過縮放它改變。我正在使用一個圓柱體(因爲我只連接兩個點)使用[此解決方案](http://stackoverflow.com/questions/15316127/three-js-line-vector-to-cylinder)(參考如果其他人得到卡在這裏)。 – Zardoz 2013-05-02 22:20:13