Vector4.html 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <script src="../../list.js"></script>
  6. <script src="../../page.js"></script>
  7. <link type="text/css" rel="stylesheet" href="../../page.css" />
  8. </head>
  9. <body>
  10. <h1>[name]</h1>
  11. <div class="desc">4D vector.</div>
  12. <h2>Constructor</h2>
  13. <h3>[name]( [page:Float x], [page:Float y], [page:Float z], [page:Float w] )</h3>
  14. <div>
  15. x -- [page:Float] <br />
  16. y -- [page:Float] <br />
  17. z -- [page:Float] <br />
  18. w -- [page:Float]
  19. </div>
  20. <h2>Properties</h2>
  21. <h3>[property:Float x]</h3>
  22. <h3>[property:Float y]</h3>
  23. <h3>[property:Float z]</h3>
  24. <h3>[property:Float w]</h3>
  25. <h2>Methods</h2>
  26. <h3>[method:Vector4 set]( [page:Float x], [page:Float y], [page:Float z], [page:Float w] ) [page:Vector4 this]</h3>
  27. <div>
  28. Sets value of this vector.
  29. </div>
  30. <h3>[method:Vector4 copy]( [page:Vector4 v] ) [page:Vector4 this]</h3>
  31. <div>
  32. Copies value of *v* to this vector.
  33. </div>
  34. <h3>[method:Vector4 add]( [page:Vector4 v] ) [page:Vector4 this]</h3>
  35. <div>
  36. Adds *v* to this vector.
  37. </div>
  38. <h3>[method:Vector4 addVectors]( [page:Vector4 a], [page:Vector4 b] ) [page:Vector4 this]</h3>
  39. <div>
  40. Sets this vector to *a + b*.
  41. </div>
  42. <h3>[method:Vector4 sub]( [page:Vector4 v] )</h3>
  43. <div>
  44. Subtracts *v* from this vector.
  45. </div>
  46. <h3>[method:Vector4 subVectors]( [page:Vector4 a], [page:Vector4 b] ) [page:Vector4 this]</h3>
  47. <div>
  48. Sets this vector to *a - b*.
  49. </div>
  50. <h3>[method:Vector4 multiplyScalar]( [page:Float s] ) [page:Vector4 this]</h3>
  51. <div>
  52. Multiplies this vector by scalar *s*.
  53. </div>
  54. <h3>[method:Vector4 divideScalar]( [page:Float s] ) [page:Vector4 this]</h3>
  55. <div>
  56. Divides this vector by scalar *s*.<br />
  57. Set vector to *( 0, 0, 0 )* if *s == 0*.
  58. </div>
  59. <h3>[method:Vector4 negate]() [page:Vector4 this]</h3>
  60. <div>
  61. Inverts this vector.
  62. </div>
  63. <h3>[method:Float dot]( [page:Vector4 v] )</h3>
  64. <div>
  65. Computes dot product of this vector and *v*.
  66. </div>
  67. <h3>[method:Float lengthSq]()</h3>
  68. <div>
  69. Computes squared length of this vector.
  70. </div>
  71. <h3>[method:Float length]()</h3>
  72. <div>
  73. Computes length of this vector.
  74. </div>
  75. <h3>[method:Vector4 normalize]() [page:Vector4 this]</h3>
  76. <div>
  77. Normalizes this vector.
  78. </div>
  79. <h3>[method:Vector4 setLength]( [page:Float l] ) [page:Vector4 this]</h3>
  80. <div>
  81. Normalizes this vector and multiplies it by *l*.
  82. </div>
  83. <h3>[method:Vector4 lerp]( [page:Vector4 v], [page:Float alpha] ) [page:Vector4 this]</h3>
  84. <div>
  85. Linearly interpolate between this vector and *v* with *alpha* factor.
  86. </div>
  87. <h3>[method:Vector4 clone]()</h3>
  88. <div>
  89. Clones this vector.
  90. </div>
  91. <h3>[method:Vector4 clamp]([page:Vector4 min], [page:Vector4 max]) [page:Vector4 this]</h3>
  92. <div>
  93. min -- [page:Vector4] <br />
  94. max -- [page:Vector4]
  95. </div>
  96. <div>
  97. If this vector's x, y, z, or w value is greater than the max vector's x, y, z, or w value, it is replaced by the corresponding value.<br/><br/>
  98. If this vector's x, y, z, or w value is less than the min vector's x, y, z, or w value, it is replace by the corresponding value.
  99. </div>
  100. <h3>[method:Vector4 clampScalar]([page:Float min], [page:Float max]) [page:Vector4 this]</h3>
  101. <div>
  102. min -- [page:Float] the minimum value the components will be clamped to <br />
  103. max -- [page:Float] the maximum value the components will be clamped to
  104. </div>
  105. <div>
  106. If this vector's x, y, z or w values are greater than the max value, they are replaced by the max value. <br />
  107. If this vector's x, y, z or w values are less than the min value, they are replace by the min value.
  108. </div>
  109. <h3>[method:Vector4 floor]()</h3>
  110. <div>
  111. The components of the vector are rounded downwards (towards negative infinity) to an integer value.
  112. </div>
  113. <h3>[method:Vector4 ceil]()</h3>
  114. <div>
  115. The components of the vector are rounded upwards (towards positive infinity) to an integer value.
  116. </div>
  117. <h3>[method:Vector4 round]()</h3>
  118. <div>
  119. The components of the vector are rounded towards the nearest integer value.
  120. </div>
  121. <h3>[method:Vector4 roundToZero]()</h3>
  122. <div>
  123. The components of the vector are rounded towards zero (up if negative, down if positive) to an integer value.
  124. </div>
  125. <h3>[method:Vector4 applyMatrix4]([page:Matrix4 m]) [page:Vector4 this]</h3>
  126. <div>
  127. m -- [page:Matrix4]
  128. </div>
  129. <div>
  130. Transforms the vector by the matrix.
  131. </div>
  132. <h3>[method:Vector4 min]([page:Vector4 v]) [page:Vector4 this]</h3>
  133. <div>
  134. v -- [page:Vector4]
  135. </div>
  136. <div>
  137. If this vector's x, y, z, or w value is less than vector v's x, y, z, or w value, that value is replaced by the corresponding vector v value.
  138. </div>
  139. <h3>[method:Vector4 max]([page:Vector4 v]) [page:Vector4 this]</h3>
  140. <div>
  141. v -- [page:Vector4]
  142. </div>
  143. <div>
  144. If this vector's x, y, z, or w value is greater than vector v's x, y, z, or w value, that value is replaced by the corresponding vector v value.
  145. </div>
  146. <h3>[method:Vector4 addScalar]([page:Float s]) [page:Vector4 this]</h3>
  147. <div>
  148. s -- [page:Float]
  149. </div>
  150. <div>
  151. Adds a scalar value to all of the vector's components.
  152. </div>
  153. <h3>[method:Boolean equals]([page:Vector4 v])</h3>
  154. <div>
  155. v -- [page:Vector4]
  156. </div>
  157. <div>
  158. Checks to see if this vector matches vector v.
  159. </div>
  160. <h3>[method:Vector4 setAxisAngleFromRotationMatrix]([page:Matrix4 m]) [page:Vector4 this]</h3>
  161. <div>
  162. m -- [page:Matrix4]
  163. </div>
  164. <div>
  165. Sets this Vector4 to the computed <a href='http://en.wikipedia.org/wiki/Axis%E2%80%93angle_representation' target='_blank'>axis-angle representation</a> of the rotation defined by Matrix4 m. Assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled).<br/><br/>
  166. The axis is stored in components (x, y, z) of the vector, and the rotation in radians is stored in component w
  167. </div>
  168. <h3>[method:Vector4 setAxisAngleFromQuaternion]([page:Quaternion q]) [page:Vector4 this]</h3>
  169. <div>
  170. q -- [page:Quaternion]
  171. </div>
  172. <div>
  173. Sets this Vector4 to the computed <a href='http://en.wikipedia.org/wiki/Axis%E2%80%93angle_representation' target='_blank'>axis-angle representation</a> of the rotation defined by Quaternion q.<br/><br/>
  174. The axis is stored in components (x, y, z) of the vector, and the rotation in radians is stored in component w
  175. </div>
  176. <h3>[method:Float getComponent]([page:Integer index])</h3>
  177. <div>
  178. index -- [page:Integer] 0, 1, 2, or 3
  179. </div>
  180. <div>
  181. Returns the value of the vector component x, y, or z by an index.<br/><br/>
  182. Index 0: x<br/>
  183. Index 1: y<br/>
  184. Index 2: z<br/>
  185. Index 3: w<br/>
  186. </div>
  187. <h3>[method:null setComponent]([page:Integer index], [page:Float value])</h3>
  188. <div>
  189. index -- [page:Integer] 0 - 3 <br />
  190. value -- [page:Float]
  191. </div>
  192. <div>
  193. Sets the value of the vector component x, y, or z by an index.<br/><br/>
  194. Index 0: x<br/>
  195. Index 1: y<br/>
  196. Index 2: z<br/>
  197. Index 3: w<br/>
  198. </div>
  199. <h3>[method:Vector4 fromArray]([page:Array array]) [page:Vector4 this]</h3>
  200. <div>
  201. array -- [page:Array] An array formatted [x, y, z, w]
  202. </div>
  203. <div>
  204. Sets the vector's components based on an array formatted like [x, y, z, w]
  205. </div>
  206. <h3>[method:Array toArray]()</h3>
  207. <div>
  208. Returns an array in the format [x, y, z, w]
  209. </div>
  210. <h3>[method:Float lengthManhattan]()</h3>
  211. <div>
  212. Computes Manhattan length of this vector.<br />
  213. [link:http://en.wikipedia.org/wiki/Taxicab_geometry]
  214. </div>
  215. <h3>[method:Vector4 setX]([page:Float x]) [page:Vector4 this]</h3>
  216. <div>
  217. x -- [page:Float]
  218. </div>
  219. <div>
  220. Sets the x component of the vector.
  221. </div>
  222. <h3>[method:Vector4 setY]([page:Float y]) [page:Vector4 this]</h3>
  223. <div>
  224. y -- [page:Float]
  225. </div>
  226. <div>
  227. Sets the y component of the vector.
  228. </div>
  229. <h3>[method:Vector4 setZ]([page:Float z]) [page:Vector4 this]</h3>
  230. <div>
  231. z -- [page:Float]
  232. </div>
  233. <div>
  234. Sets the z component of the vector.
  235. </div>
  236. <h3>[method:Vector4 setW]([page:Float w]) [page:Vector4 this]</h3>
  237. <div>
  238. w -- [page:Float]
  239. </div>
  240. <div>
  241. Sets the w component of the vector.
  242. </div>
  243. <h2>Source</h2>
  244. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  245. </body>
  246. </html>