1.拉伸
非封闭图形拉伸
(是一个面)
封闭图形拉伸
(是一个实体)
2.旋转 lathe
非封闭图形旋转
(是一个曲面)
var points = [];
for ( var i = 0; i < 10; i ++ ) {
points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
}
var geometry = new THREE.LatheGeometry( points );
var material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
var lathe = new THREE.Mesh( geometry, material );
scene.add( lathe );
封闭图形旋转
function latheShape(){
var pts = [
new THREE.Vector3(0,50,150),//top left
new THREE.Vector3(0,50,200),//top right
new THREE.Vector3(10,-50,200),//bottom right
new THREE.Vector3(30,-50,150),//bottom left
new THREE.Vector3(0,50,150)//back to top left - close square path
];
var mesh = new THREE.Mesh( new THREE.LatheGeometry( pts, 60 ), new THREE.MeshPhongMaterial( { color: 0xffff00, wireframe: false, shading: THREE.FlatShading } ));
mesh.position.y = 150;
mesh.overdraw = true;
mesh.doubleSided = true;
sceneB.add( mesh );
}
Lathe
参考此文档: https://threejs.org/docs/#api/en/geometries/LatheGeometry