提交 5d91b204 编写于 作者: Z zz85

Merge remote-tracking branch 'mrdoob/dev'

<h1>[name]</h1>
<div class="desc">todo</div>
<div class="desc">2D Vector.</div>
<h2>Example</h2>
<code>var a = new THREE.Vector2( 0, 1 );
var b = new THREE.Vector2( 1, 0 );
var d = a.distanceTo( b );
</code>
<h2>Constructor</h2>
<h3>[name]()</h3>
<h3>[name]( [page:Float x], [page:Float y] )</h3>
<h2>Properties</h2>
<h3>.[page:Vector3 todo]</h3>
<h3>.[page:Float x]</h3>
<h3>.[page:Float y]</h3>
<h2>Methods</h2>
<h3>.todo( [page:Vector3 todo] )</h3>
<h3>.set( [page:Float x], [page:Float y] ) [page:Vector2]</h3>
<div>
Sets value of this vector.
</div>
<h3>.copy( [page:Vector2 v] ) [page:Vector2]</h3>
<div>
Copies value of *v* to this vector.
</div>
<h3>.add( [page:Vector2 a], [page:Vector2 b] ) [page:Vector2]</h3>
<div>
Sets this vector to *a + b*.
</div>
<h3>.addSelf( [page:Vector2 v] ) [page:Vector2]</h3>
<div>
Adds *v* to this vector.
</div>
<h3>.sub( [page:Vector2 a], [page:Vector2 b] ) [page:Vector2]</h3>
<div>
Sets this vector to *a - b*.
</div>
<h3>.subSelf( [page:Vector2 v] ) [page:Vector2]</h3>
<div>
Subtracts *v* from this vector.
</div>
<h3>.multiplyScalar( [page:Float s] ) [page:Vector2]</h3>
<div>
Multiplies this vector by scalar *s*.
</div>
<h3>.divideScalar( [page:Float s] ) [page:Vector2]</h3>
<div>
Divides this vector by scalar *s*.<br />
Set vector to *( 0, 0 )* if *s == 0*.
</div>
<h3>.negate() [page:Vector2]</h3>
<div>
Inverts this vector.
</div>
<h3>.dot( [page:Vector2 v] ) [page:Float]</h3>
<div>
Computes dot product of this vector and *v*.
</div>
<h3>.lengthSq() [page:Float]</h3>
<div>
Computes squared length of this vector.
</div>
<h3>.length() [page:Float]</h3>
<div>
Computes length of this vector.
</div>
<h3>.normalize() [page:Vector2]</h3>
<div>
Normalizes this vector.
</div>
<h3>.distanceTo( [page:Vector2 v] ) [page:Float]</h3>
<div>
Computes distance of this vector to *v*.
</div>
<h3>.distanceToSquared( [page:Vector2 v] ) [page:Float]</h3>
<div>
Computes squared distance of this vector to *v*.
</div>
<h3>.setLength( [page:Float l] ) [page:Vector2]</h3>
<div>
Normalizes this vector and multiplies it by *l*.
</div>
<h3>.equals( [page:Vector2 v] ) [page:Vector2]</h3>
<div>
Checks for strict equality of this vector and *v*.
</div>
<h3>.isZero() [page:Boolean]</h3>
<div>
Checks if length of this vector is within small epsilon (*0.0001*).
</div>
<h3>.clone() [page:Vector2]</h3>
<div>
todo — todo<br />
Clones this vector.
</div>
......
Vector2 - 2D vector
-------------------
.. ...............................................................................
.. rubric:: Constructor
.. ...............................................................................
.. class:: Vector2( x, y )
2D vector
:param float x: x-coordinate
:param float y: y-coordinate
.. ...............................................................................
.. rubric:: Attributes
.. ...............................................................................
.. attribute:: Vector2.x
float - default ``0``
.. attribute:: Vector2.y
float - default ``0``
.. ...............................................................................
.. rubric:: Methods
.. ...............................................................................
.. function:: Vector2.clone( )
Clones this vector
:returns: New instance identical to this vector
:rtype: :class:`Vector2`
.. function:: Vector2.set( x, y )
Sets value of this vector
:param float x: x-coordinate
:param float y: y-coordinate
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.copy( v )
Copies value of ``v`` to this vector
:param Vector2 v: source vector
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.add( v1, v2 )
Sets this vector to ``v1 + v2``
:param Vector2 v1: source vector 1
:param Vector2 v2: source vector 2
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.addSelf( v )
Adds ``v`` to this vector
:param Vector2 v: source vector
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.sub( v1, v2 )
Sets this vector to ``v1 - v2``
:param Vector2 v1: source vector 1
:param Vector2 v2: source vector 2
.. function:: Vector2.subSelf( v )
Subtracts ``v`` from this vector
:param Vector2 v: source vector
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.multiplyScalar( s )
Multiplies this vector by scalar ``s``
:param float s: scalar
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.divideScalar( s )
Divides this vector by scalar ``s``
Set vector to ``( 0, 0 )`` if ``s == 0``
:param float s: scalar
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.negate( )
Inverts this vector
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.dot( v )
Computes dot product of this vector and ``v``
:returns: dot product
:rtype: float
.. function:: Vector2.lengthSq( )
Computes squared length of this vector
:returns: squared length
:rtype: float
.. function:: Vector2.length( )
Computes length of this vector
:returns: length
:rtype: float
.. function:: Vector2.normalize( )
Normalizes this vector
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.distanceTo( v )
Computes distance of this vector to ``v``
:returns: squared distance
:rtype: float
.. function:: Vector2.distanceToSquared( v )
Computes squared distance of this vector to ``v``
:returns: squared distance
:rtype: float
.. function:: Vector2.setLength( l )
Normalizes this vector and multiplies it by ``l``
:returns: This vector
:rtype: :class:`Vector2`
.. function:: Vector2.equals( v )
Checks for strict equality of this vector and ``v``
:returns: true if this vector equals ``v``
:rtype: boolean
.. function:: Vector2.isZero( )
Checks if length of this vector is within small epsilon (``0.0001``)
:returns: true if this vector is zero
:rtype: boolean
.. ...............................................................................
.. rubric:: Example
.. ...............................................................................
::
var a = new THREE.Vector2( 0, 1 );
var b = new THREE.Vector2( 1, 0 );
var d = a.distanceTo( b );
<h1>[name]</h1>
<div class="desc">todo</div>
<div class="desc">3D vector.</div>
<h2>Example</h2>
<code>var a = new THREE.Vector3( 1, 0, 0 );
var b = new THREE.Vector3( 0, 1, 0 );
var c = new THREE.Vector3();
c.cross( a, b );
</code>
<h2>Constructor</h2>
<h3>[name]()</h3>
<h3>[name]( [page:Float x], [page:Float y], [page:Float z] )</h3>
<h2>Properties</h2>
<h3>.[page:Vector3 todo]</h3>
<h3>.[page:Float x]</h3>
<h3>.[page:Float y]</h3>
<h3>.[page:Float z]</h3>
<h2>Methods</h2>
<h3>.todo( [page:Vector3 todo] )</h3>
<h3>.set( [page:Float x], [page:Float y], [page:Float z] ) [page:Vector3]</h3>
<div>
Sets value of this vector.
</div>
<h3>.setX( [page:Float x] ) [page:Vector3]</h3>
<div>
Sets x value of this vector.
</div>
<h3>.setY( [page:Float y] ) [page:Vector3]</h3>
<div>
Sets y value of this vector.
</div>
<h3>.setZ( [page:Float z] ) [page:Vector3]</h3>
<div>
Sets z value of this vector.
</div>
<h3>.copy( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Copies value of *v* to this vector.
</div>
<h3>.add( [page:Vector3 a], [page:Vector3 b] ) [page:Vector3]</h3>
<div>
Sets this vector to *a + b*.
</div>
<h3>.addSelf( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Adds *v* to this vector.
</div>
<h3>.sub( [page:Vector3 a], [page:Vector3 b] ) [page:Vector3]</h3>
<div>
Sets this vector to *a - b*.
</div>
<h3>.subSelf( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Subtracts *v* from this vector.
</div>
<h3>.multiplyScalar( [page:Float s] ) [page:Vector3]</h3>
<div>
Multiplies this vector by scalar *s*.
</div>
<h3>.divideScalar( [page:Float s] ) [page:Vector3]</h3>
<div>
Divides this vector by scalar *s*.<br />
Set vector to *( 0, 0, 0 )* if *s == 0*.
</div>
<h3>.negate() [page:Vector3]</h3>
<div>
Inverts this vector.
</div>
<h3>.dot( [page:Vector3 v] ) [page:Float]</h3>
<div>
Computes dot product of this vector and *v*.
</div>
<h3>.lengthSq() [page:Float]</h3>
<div>
Computes squared length of this vector.
</div>
<h3>.length() [page:Float]</h3>
<div>
Computes length of this vector.
</div>
<h3>.lengthManhattan() [page:Float]</h3>
<div>
Computes Manhattan length of this vector.<br />
[link:http://en.wikipedia.org/wiki/Taxicab_geometry]
</div>
<h3>.normalize() [page:Vector3]</h3>
<div>
Normalizes this vector.
</div>
<h3>.distanceTo( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Computes distance of this vector to *v*.
</div>
<h3>.distanceToSquared( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Computes squared distance of this vector to *v*.
</div>
<h3>.normalize() [page:Vector3]</h3>
<div>
Normalizes this vector.
</div>
<h3>.setLength( [page:Float l] ) [page:Vector3]</h3>
<div>
Normalizes this vector and multiplies it by *l*.
</div>
<h3>.cross( [page:Vector3 a], [page:Vector3 b] ) [page:Vector3]</h3>
<div>
Sets this vector to cross product of *a* and *b*.
</div>
<h3>.crossSelf( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Sets this vector to cross product of itself and *v*.
</div>
<h3>.setPositionFromMatrix( [page:Matrix4 m] ) [page:Vector3]</h3>
<div>
Sets this vector extracting position from matrix transform.
</div>
<h3>.setRotationFromMatrix( [page:Matrix4 m] ) [page:Vector3]</h3>
<div>
Sets this vector extracting Euler angles rotation from matrix transform.
</div>
<h3>.equals( [page:Vector3 v] ) [page:Vector3]</h3>
<div>
Checks for strict equality of this vector and *v*.
</div>
<h3>.isZero() [page:Boolean]</h3>
<div>
Checks if length of this vector is within small epsilon (*0.0001*).
</div>
<h3>.clone() [page:Vector3]</h3>
<div>
todo — todo<br />
Clones this vector.
</div>
......
Vector3 - 3D vector
-------------------
.. ...............................................................................
.. rubric:: Constructor
.. ...............................................................................
.. class:: Vector3()
3D vector
:param float x: x-coordinate
:param float y: y-coordinate
:param float z: z-coordinate
.. ...............................................................................
.. rubric:: Attributes
.. ...............................................................................
.. attribute:: Vector3.x
float - default ``0``
.. attribute:: Vector3.y
float - default ``0``
.. attribute:: Vector3.z
float - default ``0``
.. ...............................................................................
.. rubric:: Methods
.. ...............................................................................
.. function:: Vector3.clone( )
Clones this vector
:returns: New instance identical to this vector
:rtype: :class:`Vector3`
.. function:: Vector3.set( x, y, z )
Sets value of this vector
:param float x: x-coordinate
:param float y: y-coordinate
:param float z: z-coordinate
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.setX( x )
Sets x-value of this vector
:param float x: x-coordinate
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.setY( y )
Sets y-value of this vector
:param float y: y-coordinate
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.setZ( z )
Sets z-value of this vector
:param float z: z-coordinate
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.copy( v )
Copies value of ``v`` to this vector
:param Vector3 v: source vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.add( v1, v2 )
Sets this vector to ``v1 + v2``
:param Vector3 v1: source vector 1
:param Vector3 v2: source vector 2
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.addSelf( v )
Adds ``v`` to this vector
:param Vector3 v: source vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.sub( v1, v2 )
Sets this vector to ``v1 - v2``
:param Vector3 v1: source vector 1
:param Vector3 v2: source vector 2
.. function:: Vector3.subSelf( v )
Subtracts ``v`` from this vector
:param Vector3 v: source vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.multiplyScalar( s )
Multiplies this vector by scalar ``s``
:param float s: scalar
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.divideScalar( s )
Divides this vector by scalar ``s``
Set vector to ``( 0, 0, 0 )`` if ``s == 0``
:param float s: scalar
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.negate( )
Inverts this vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.dot( v )
Computes dot product of this vector and ``v``
:param Vector3 v: vector
:returns: dot product
:rtype: float
.. function:: Vector3.lengthSq( )
Computes squared length of this vector
:returns: squared length
:rtype: float
.. function:: Vector3.length( )
Computes length of this vector
:returns: length
:rtype: float
.. function:: Vector3.lengthManhattan( )
Computes Manhattan length of this vector
http://en.wikipedia.org/wiki/Taxicab_geometry
:returns: length
:rtype: float
.. function:: Vector3.normalize( )
Normalizes this vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.distanceTo( v )
Computes distance of this vector to ``v``
:param Vector3 v: vector
:returns: squared distance
:rtype: float
.. function:: Vector3.distanceToSquared( v )
Computes squared distance of this vector to ``v``
:param Vector3 v: vector
:returns: squared distance
:rtype: float
.. function:: Vector3.setLength( l )
Normalizes this vector and multiplies it by ``l``
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.cross( a, b )
Sets this vector to cross product of ``a`` and ``b``
:param Vector3 a: vector
:param Vector3 b: vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.crossSelf( v )
Sets this vector to cross product of itself and ``v``
:param Vector3 v: vector
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.setPositionFromMatrix( m )
Sets this vector extracting position from matrix transform
:param Matrix4 m: matrix
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.setRotationFromMatrix( m )
Sets this vector extracting Euler angles rotation from matrix transform
:param Matrix4 m: matrix
:returns: This vector
:rtype: :class:`Vector3`
.. function:: Vector3.equals( v )
Checks for strict equality of this vector and ``v``
:param Vector3 v: vector
:returns: true if this vector equals ``v``
:rtype: boolean
.. function:: Vector3.isZero( )
Checks if length of this vector is within small epsilon (``0.0001``)
:returns: true if this vector is zero
:rtype: boolean
.. ...............................................................................
.. rubric:: Example
.. ...............................................................................
::
var a = new THREE.Vector3( 1, 0, 0 );
var b = new THREE.Vector3( 0, 1, 0 );
var c = new THREE.Vector3();
c.cross( a, b );
<h1>[name]</h1>
<div class="desc">todo</div>
<div class="desc">4D vector.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<h3>[name]( [page:Float x], [page:Float y], [page:Float z], [page:Float w] )</h3>
<h2>Properties</h2>
<h3>.[page:Vector3 todo]</h3>
<h3>.[page:Float x]</h3>
<h3>.[page:Float y]</h3>
<h3>.[page:Float z]</h3>
<h3>.[page:Float w]</h3>
<h2>Methods</h2>
<h3>.todo( [page:Vector3 todo] )</h3>
<h3>.set( [page:Float x], [page:Float y], [page:Float z], [page:Float w] ) [page:Vector4]</h3>
<div>
Sets value of this vector.
</div>
<h3>.copy( [page:Vector4 v] ) [page:Vector4]</h3>
<div>
Copies value of *v* to this vector.
</div>
<h3>.add( [page:Vector4 a], [page:Vector4 b] ) [page:Vector4]</h3>
<div>
Sets this vector to *a + b*.
</div>
<h3>.addSelf( [page:Vector4 v] ) [page:Vector4s]</h3>
<div>
Adds *v* to this vector.
</div>
<h3>.sub( [page:Vector4 a], [page:Vector4 b] ) [page:Vector4]</h3>
<div>
Sets this vector to *a - b*.
</div>
<h3>.subSelf( [page:Vector4 v] ) [page:Vector4]</h3>
<div>
Subtracts *v* from this vector.
</div>
<h3>.multiplyScalar( [page:Float s] ) [page:Vector4]</h3>
<div>
Multiplies this vector by scalar *s*.
</div>
<h3>.divideScalar( [page:Float s] ) [page:Vector4]</h3>
<div>
Divides this vector by scalar *s*.<br />
Set vector to *( 0, 0, 0 )* if *s == 0*.
</div>
<h3>.negate() [page:Vector4]</h3>
<div>
Inverts this vector.
</div>
<h3>.dot( [page:Vector4 v] ) [page:Float]</h3>
<div>
Computes dot product of this vector and *v*.
</div>
<h3>.lengthSq() [page:Float]</h3>
<div>
Computes squared length of this vector.
</div>
<h3>.length() [page:Float]</h3>
<div>
Computes length of this vector.
</div>
<h3>.normalize() [page:Vector4]</h3>
<div>
Normalizes this vector.
</div>
<h3>.setLength( [page:Float l] ) [page:Vector3]</h3>
<div>
Normalizes this vector and multiplies it by *l*.
</div>
<h3>.lerpSelf( [page:Vector4 v], [page:Float alpha] ) [page:Vector4]</h3>
<div>
Linearly interpolate between this vector and *v* with *alpha* factor.
</div>
<h3>.clone() [page:Vector3]</h3>
<div>
todo — todo<br />
Clones this vector.
</div>
......
Vector4 - 4D vector
-------------------
.. ...............................................................................
.. rubric:: Constructor
.. ...............................................................................
.. class:: Vector4( x, y, z, w )
4D vector
:param float x: x-coordinate
:param float y: y-coordinate
:param float z: z-coordinate
:param float w: w-coordinate
.. ...............................................................................
.. rubric:: Attributes
.. ...............................................................................
.. attribute:: Vector4.x
float - default ``0``
.. attribute:: Vector4.y
float - default ``0``
.. attribute:: Vector4.z
float - default ``0``
.. attribute:: Vector4.w
float - default ``1``
.. ...............................................................................
.. rubric:: Methods
.. ...............................................................................
.. function:: Vector4.clone( )
Clones this vector
:returns: New instance identical to this vector
:rtype: :class:`Vector4`
.. function:: Vector4.set( x, y, z, w )
Sets value of this vector
:param float x: x-coordinate
:param float y: y-coordinate
:param float z: z-coordinate
:param float w: w-coordinate
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.copy( v )
Copies value of ``v`` to this vector
Sets ``w`` to 1 if ``v.w`` is undefined
:param Vector4 v: source vector
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.add( v1, v2 )
Sets this vector to ``v1 + v2``
:param Vector4 v1: source vector 1
:param Vector4 v2: source vector 2
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.addSelf( v )
Adds ``v`` to this vector
:param Vector4 v: source vector
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.sub( v1, v2 )
Sets this vector to ``v1 - v2``
:param Vector4 v1: source vector 1
:param Vector4 v2: source vector 2
.. function:: Vector4.subSelf( v )
Subtracts ``v`` from this vector
:param Vector4 v: source vector
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.multiplyScalar( s )
Multiplies this vector by scalar ``s``
:param float s: scalar
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.divideScalar( s )
Divides this vector by scalar ``s``
Set vector to ``( 0, 0, 0, 1 )`` if ``s == 0``
:param float s: scalar
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.negate( )
Inverts this vector
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.dot( v )
Computes dot product of this vector and ``v``
:param Vector4 v: vector
:returns: dot product
:rtype: float
.. function:: Vector4.lengthSq( )
Computes squared length of this vector
:returns: squared length
:rtype: float
.. function:: Vector4.length( )
Computes length of this vector
:returns: length
:rtype: float
.. function:: Vector4.normalize( )
Normalizes this vector
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.setLength( l )
Normalizes this vector and multiplies it by ``l``
:returns: This vector
:rtype: :class:`Vector4`
.. function:: Vector4.lerpSelf( v, alpha )
Linearly interpolate between this vector and ``v`` with ``alpha`` factor
:param Vector4 v: vector
:param float alpha: interpolation factor
:returns: This vector
:rtype: :class:`Vector4`
.. ...............................................................................
.. rubric:: Example
.. ...............................................................................
::
var a = new THREE.Vector4( 1, 0, 0, 0 );
\ No newline at end of file
[page:Object3D] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<div class="desc">Abstract base class for lights.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<h3>[name]( [page:Integer hex] )</h3>
<h2>Properties</h2>
<h3>.[page:Vector3 todo]</h3>
<h2>Methods</h2>
<h3>.todo( [page:Vector3 todo] )</h3>
<div>
todo — todo<br />
</div>
<h3>.[page:Color color]</h3>
<h2>Source</h2>
......
......@@ -346,15 +346,17 @@
if ( xhr.readyState == 4 && ( xhr.status == 200 || xhr.status == 0 ) ) {
// TODO: Set title.
var text = xhr.responseText;
text = text.replace(/\[name\]/gi, name);
text = text.replace(/\[path\]/gi, path);
text = text.replace(/\[page:(\w+)\]/gi, "<a href=\"javascript:goTo('$1')\" title=\"$1\">$1</a>" ); // [page:name]
text = text.replace(/\[page:(\w+)\]/gi, "[page:$1 $1]" ); // [page:name] to [page:name title]
text = text.replace(/\[page:(\w+) ([\w|\.]+)\]/gi, "<a href=\"javascript:goTo('$1')\" title=\"$1\">$2</a>" ); // [page:name title]
text = text.replace(/\[link:([\w|\:|\/|\.|\-]+)\]/gi, "<a href=\"$1\" target=\"_blank\">$1</a>" ); // [link:url]
text = text.replace(/\[link:([\w|\:|\/|\.|\-]+) ([\w|\/|\.|\-]+)\]/gi, "<a href=\"$1\" target=\"_blank\">$2</a>" ); // [link:url title]
text = text.replace(/\*([\w|\ |\-|\/]+)\*/gi, "<strong>$1</strong>" ); // *
text = text.replace(/\[link:([\w|\:|\/|\.|\-|\_]+)\]/gi, "[link:$1 $1]" ); // [link:url] to [link:url title]
text = text.replace(/\[link:([\w|\:|\/|\.|\-|\_]+) ([\w|\:|\/|\.|\-|\_]+)\]/gi, "<a href=\"$1\" target=\"_blank\">$2</a>" ); // [link:url title]
text = text.replace(/\*([\w|\ |\-|\/|\+|\-|\(|\)|\=|\,|\.]+)\*/gi, "<strong>$1</strong>" ); // *
viewer.innerHTML = '<br>' + text + '<br><br>';
......
......@@ -34,17 +34,10 @@ THREE.Vector2.prototype = {
},
clone: function () {
return new THREE.Vector2( this.x, this.y );
},
add: function ( v1, v2 ) {
add: function ( a, b ) {
this.x = v1.x + v2.x;
this.y = v1.y + v2.y;
this.x = a.x + b.x;
this.y = a.y + b.y;
return this;
......@@ -59,10 +52,10 @@ THREE.Vector2.prototype = {
},
sub: function ( v1, v2 ) {
sub: function ( a, b ) {
this.x = v1.x - v2.x;
this.y = v1.y - v2.y;
this.x = a.x - b.x;
this.y = a.y - b.y;
return this;
......@@ -105,7 +98,7 @@ THREE.Vector2.prototype = {
negate: function() {
return this.multiplyScalar( -1 );
return this.multiplyScalar( - 1 );
},
......@@ -171,6 +164,12 @@ THREE.Vector2.prototype = {
return ( this.lengthSq() < 0.0001 /* almostZero */ );
},
clone: function () {
return new THREE.Vector2( this.x, this.y );
}
};
......@@ -63,18 +63,11 @@ THREE.Vector3.prototype = {
},
clone: function () {
return new THREE.Vector3( this.x, this.y, this.z );
},
add: function ( v1, v2 ) {
add: function ( a, b ) {
this.x = v1.x + v2.x;
this.y = v1.y + v2.y;
this.z = v1.z + v2.z;
this.x = a.x + b.x;
this.y = a.y + b.y;
this.z = a.z + b.z;
return this;
......@@ -100,11 +93,11 @@ THREE.Vector3.prototype = {
},
sub: function ( v1, v2 ) {
sub: function ( a, b ) {
this.x = v1.x - v2.x;
this.y = v1.y - v2.y;
this.z = v1.z - v2.z;
this.x = a.x - b.x;
this.y = a.y - b.y;
this.z = a.z - b.z;
return this;
......@@ -183,7 +176,7 @@ THREE.Vector3.prototype = {
negate: function() {
return this.multiplyScalar( -1 );
return this.multiplyScalar( - 1 );
},
......@@ -382,6 +375,12 @@ THREE.Vector3.prototype = {
return ( this.lengthSq() < 0.0001 /* almostZero */ );
},
clone: function () {
return new THREE.Vector3( this.x, this.y, this.z );
}
};
......
......@@ -40,19 +40,12 @@ THREE.Vector4.prototype = {
},
clone: function () {
return new THREE.Vector4( this.x, this.y, this.z, this.w );
},
add: function ( v1, v2 ) {
add: function ( a, b ) {
this.x = v1.x + v2.x;
this.y = v1.y + v2.y;
this.z = v1.z + v2.z;
this.w = v1.w + v2.w;
this.x = a.x + b.x;
this.y = a.y + b.y;
this.z = a.z + b.z;
this.w = a.w + b.w;
return this;
......@@ -69,12 +62,12 @@ THREE.Vector4.prototype = {
},
sub: function ( v1, v2 ) {
sub: function ( a, b ) {
this.x = v1.x - v2.x;
this.y = v1.y - v2.y;
this.z = v1.z - v2.z;
this.w = v1.w - v2.w;
this.x = a.x - b.x;
this.y = a.y - b.y;
this.z = a.z - b.z;
this.w = a.w - b.w;
return this;
......@@ -170,6 +163,12 @@ THREE.Vector4.prototype = {
return this;
},
clone: function () {
return new THREE.Vector4( this.x, this.y, this.z, this.w );
}
};
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册