提交 9e2103f9 编写于 作者: T tinaun

support arrows with zero-length tails

上级 47e05f8e
......@@ -34,10 +34,12 @@ THREE.ArrowHelper = ( function () {
if ( headWidth === undefined ) headWidth = 0.2 * headLength;
this.position.copy( origin );
this.line = new THREE.Line( lineGeometry, new THREE.LineBasicMaterial( { color: color } ) );
this.line.matrixAutoUpdate = false;
this.add( this.line );
if ( headLength < length ) {
this.line = new THREE.Line( lineGeometry, new THREE.LineBasicMaterial( { color: color } ) );
this.line.matrixAutoUpdate = false;
this.add( this.line );
}
this.cone = new THREE.Mesh( coneGeometry, new THREE.MeshBasicMaterial( { color: color } ) );
this.cone.matrixAutoUpdate = false;
......@@ -89,8 +91,10 @@ THREE.ArrowHelper.prototype.setLength = function ( length, headLength, headWidth
if ( headLength === undefined ) headLength = 0.2 * length;
if ( headWidth === undefined ) headWidth = 0.2 * headLength;
this.line.scale.set( 1, length - headLength, 1 );
this.line.updateMatrix();
if ( headLength < length ){
this.line.scale.set( 1, length - headLength, 1 );
this.line.updateMatrix();
}
this.cone.scale.set( headWidth, headLength, headWidth );
this.cone.position.y = length;
......@@ -100,7 +104,7 @@ THREE.ArrowHelper.prototype.setLength = function ( length, headLength, headWidth
THREE.ArrowHelper.prototype.setColor = function ( color ) {
this.line.material.color.set( color );
if ( this.line !== undefined ) this.line.material.color.set( color );
this.cone.material.color.set( color );
};
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册