JSRUN 用代码说话

管道缓冲几何体

编辑教程

管道缓冲几何体(TubeBufferGeometry)

创建一个沿着三维曲线延伸的管道。

示例

function CustomSinCurve( scale ) {

    THREE.Curve.call( this );

    this.scale = ( scale === undefined ) ? 1 : scale;

}

CustomSinCurve.prototype = Object.create( THREE.Curve.prototype );
CustomSinCurve.prototype.constructor = CustomSinCurve;

CustomSinCurve.prototype.getPoint = function ( t ) {

    var tx = t * 3 - 1.5;
    var ty = Math.sin( 2 * Math.PI * t );
    var tz = 0;

    return new THREE.Vector3( tx, ty, tz ).multiplyScalar( this.scale );

};

var path = new CustomSinCurve( 10 );
var geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
var material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
var mesh = new THREE.Mesh( geometry, material );
scene.add( mesh );

构造器

TubeBufferGeometry(path : Curve, tubularSegments : Integer, radius : Float, radialSegments : Integer, closed : Boolean)
path Curve 一个由基类Curve继承而来的路径。
tubularSegments Integer 组成这一管道的分段数,默认值为64。
radius Float 管道的半径,默认值为1。
radialSegments Integer 管道横截面的分段数目,默认值为8。
closed Boolean 管道的两端是否闭合,默认值为false。

属性

共有属性请参见其基类BufferGeometry。

.parameters : Object

一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。

.tangents : Array

一个Vector3切线数组。

.normals : Array

一个Vector3法线数组。

.binormals : Array

一个Vector3次法线数组。

方法(Methods)

共有方法请参见其基类BufferGeometry。

JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟