案例:Three 几何体建模6网格管道     状态:可编辑再运行    进入竖版
 运行结果 
x
 
1
<!DOCTYPE html>
2
<html>
3
<head>
4
  <meta charset="UTF-8">
5
  <style>
6
    body {
7
      margin: 0;
8
      overflow: hidden;
9
      /* 隐藏body窗口区域滚动条 */
10
    }
11
  </style>
12
  <!--引入three.js三维引擎-->
13
  <script src="/js/threejs/three.js"></script>
14
  <script src="/example/threejs/solarsystem/files/OrbitControls.js"></script>
15
</head>
16
17
<body>
18
  <script>
19
    //创建场景
20
    var scene = new THREE.Scene();
21
22
    //创建管道成型的路径(3D样条曲线)
23
var path = new THREE.CatmullRomCurve3([
24
  new THREE.Vector3(-10, -50, -50),
25
  new THREE.Vector3(10, 0, 0),
26
  new THREE.Vector3(8, 50, 50),
27
  new THREE.Vector3(-5, 0, 100)
28
]);
29
      // 也可以使用LineCurve3创建直线段路径
30
//path = new THREE.LineCurve3(new THREE.Vector3(0, 100, 0), new THREE.Vector3(0, 0, 0));
31
// path:路径   40:沿着轨迹细分数  10:管道半径   25:管道截面圆细分数
32
var geometry = new THREE.TubeGeometry(path, 40, 10, 25);
33
      
34
//材质对象
35
var material = new THREE.LineBasicMaterial({
36
  color: 0x000000
37
});
38
//线条模型对象
39
var line = new THREE.Line(geometry, material);
40
scene.add(line); //线条对象添加到场景中
41
      
42
    /**
43
     * 光源设置
44
     */
45
    //点光源
46
    var point = new THREE.PointLight(0xffffff);
47
    point.position.set(400, 200, 300); //点光源位置
48
    scene.add(point); //点光源添加到场景中