THREEJS
var p1 = new THREE.Vector3(-85.35, -35.36,0)
var p2 = new THREE.Vector3(-50, 0, 0);
var p3 = new THREE.Vector3(0, 50, 0);
var p4 = new THREE.Vector3(50, 0, 0);
var p5 = new THREE.Vector3(85.35, -35.36,0);
// 创建线条一:直线
let line1 = new THREE.LineCurve3(p1,p2);
// 重建线条2:三维样条曲线
var curve = new THREE.CatmullRomCurve3([p2, p3, p4]);
// 创建线条3:直线
let line2 = new THREE.LineCurve3(p4,p5);
var CurvePath = new THREE.CurvePath();// 创建CurvePath对象
CurvePath.curves.push(line1, curve, line2);// 插入多段线条
//通过多段曲线路径创建生成管道
//通过多段曲线路径创建生成管道,CCurvePath:管道路径
var geometry2 = new THREE.TubeGeometry(CurvePath, 100, 5, 25, false);
var material = new THREE.MeshLambertMaterial({});
material.map = texloader.load("../images/netline-on.jpg");
material.map.wrapS = material.map.wrapT = THREE.RepeatWrapping;
material.map.needsUpdate = true;
var cube = new THREE.Mesh(geometry2, material);
cube.spead = 0.01;
cube.position.y = 300
aaa.push(cube);
console.log(cube);
scene.add(cube);
根据二点成线。三点构建曲线的方式,生成曲线线段。