Vector3.html 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393
  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">3D vector.</div>
  12. <h2>Example</h2>
  13. <code>var a = new THREE.Vector3( 1, 0, 0 );
  14. var b = new THREE.Vector3( 0, 1, 0 );
  15. var c = new THREE.Vector3();
  16. c.crossVectors( a, b );
  17. </code>
  18. <h2>Constructor</h2>
  19. <h3>[name]( [page:Float x], [page:Float y], [page:Float z] )</h3>
  20. <h2>Properties</h2>
  21. <h3>.[page:Float x]</h3>
  22. <h3>.[page:Float y]</h3>
  23. <h3>.[page:Float z]</h3>
  24. <h2>Methods</h2>
  25. <h3>.set( [page:Float x], [page:Float y], [page:Float z] ) [page:Vector3]</h3>
  26. <div>
  27. Sets value of this vector.
  28. </div>
  29. <h3>.setX( [page:Float x] ) [page:Vector3]</h3>
  30. <div>
  31. Sets x value of this vector.
  32. </div>
  33. <h3>.setY( [page:Float y] ) [page:Vector3]</h3>
  34. <div>
  35. Sets y value of this vector.
  36. </div>
  37. <h3>.setZ( [page:Float z] ) [page:Vector3]</h3>
  38. <div>
  39. Sets z value of this vector.
  40. </div>
  41. <h3>.copy( [page:Vector3 v] ) [page:Vector3]</h3>
  42. <div>
  43. Copies value of *v* to this vector.
  44. </div>
  45. <h3>.add( [page:Vector3 v] ) [page:Vector3]</h3>
  46. <div>
  47. Adds *v* to this vector.
  48. </div>
  49. <h3>.addVectors( [page:Vector3 a], [page:Vector3 b] ) [page:Vector3]</h3>
  50. <div>
  51. Sets this vector to *a + b*.
  52. </div>
  53. <h3>.sub( [page:Vector3 v] ) [page:Vector3]</h3>
  54. <div>
  55. Subtracts *v* from this vector.
  56. </div>
  57. <h3>.subVectors( [page:Vector3 a], [page:Vector3 b] ) [page:Vector3]</h3>
  58. <div>
  59. Sets this vector to *a - b*.
  60. </div>
  61. <h3>.multiplyScalar( [page:Float s] ) [page:Vector3]</h3>
  62. <div>
  63. Multiplies this vector by scalar *s*.
  64. </div>
  65. <h3>.divideScalar( [page:Float s] ) [page:Vector3]</h3>
  66. <div>
  67. Divides this vector by scalar *s*.<br />
  68. Set vector to *( 0, 0, 0 )* if *s == 0*.
  69. </div>
  70. <h3>.negate() [page:Vector3]</h3>
  71. <div>
  72. Inverts this vector.
  73. </div>
  74. <h3>.dot( [page:Vector3 v] ) [page:Float]</h3>
  75. <div>
  76. Computes dot product of this vector and *v*.
  77. </div>
  78. <h3>.lengthSq() [page:Float]</h3>
  79. <div>
  80. Computes squared length of this vector.
  81. </div>
  82. <h3>.length() [page:Float]</h3>
  83. <div>
  84. Computes length of this vector.
  85. </div>
  86. <h3>.lengthManhattan() [page:Float]</h3>
  87. <div>
  88. Computes Manhattan length of this vector.<br />
  89. [link:http://en.wikipedia.org/wiki/Taxicab_geometry]
  90. </div>
  91. <h3>.normalize() [page:Vector3]</h3>
  92. <div>
  93. Normalizes this vector.
  94. </div>
  95. <h3>.distanceTo( [page:Vector3 v] ) [page:Float]</h3>
  96. <div>
  97. Computes distance of this vector to *v*.
  98. </div>
  99. <h3>.distanceToSquared( [page:Vector3 v] ) [page:Float]</h3>
  100. <div>
  101. Computes squared distance of this vector to *v*.
  102. </div>
  103. <h3>.setLength( [page:Float l] ) [page:Vector3]</h3>
  104. <div>
  105. Normalizes this vector and multiplies it by *l*.
  106. </div>
  107. <h3>.cross( [page:Vector3 v] ) [page:Vector3]</h3>
  108. <div>
  109. Sets this vector to cross product of itself and *v*.
  110. </div>
  111. <h3>.crossVectors( [page:Vector3 a], [page:Vector3 b] ) [page:Vector3]</h3>
  112. <div>
  113. Sets this vector to cross product of *a* and *b*.
  114. </div>
  115. <h3>.getPositionFromMatrix( [page:Matrix4 m] ) [page:Vector3]</h3>
  116. <div>
  117. Sets this vector extracting position from matrix transform.
  118. </div>
  119. <h3>.getScaleFromMatrix( [page:Matrix4 m] ) [page:Vector3]</h3>
  120. <div>
  121. Sets this vector extracting scale from matrix transform.
  122. </div>
  123. <h3>.equals( [page:Vector3 v] ) [page:Vector3]</h3>
  124. <div>
  125. Checks for strict equality of this vector and *v*.
  126. </div>
  127. <h3>.clone() [page:Vector3]</h3>
  128. <div>
  129. Clones this vector.
  130. </div>
  131. <h3>.clamp([page:todo min], [page:todo max]) [page:todo]</h3>
  132. <div>
  133. min -- todo <br />
  134. max -- todo
  135. </div>
  136. <div>
  137. todo
  138. </div>
  139. <h3>.applyMatrix3([page:todo m]) [page:todo]</h3>
  140. <div>
  141. m -- todo
  142. </div>
  143. <div>
  144. todo
  145. </div>
  146. <h3>.applyMatrix4([page:todo m]) [page:todo]</h3>
  147. <div>
  148. m -- todo
  149. </div>
  150. <div>
  151. todo
  152. </div>
  153. <h3>.projectOnPlane([page:todo planeNormal]) [page:todo]</h3>
  154. <div>
  155. planeNormal -- todo
  156. </div>
  157. <div>
  158. todo
  159. </div>
  160. <h3>.projectOnVector([page:todo vector]) [page:todo]</h3>
  161. <div>
  162. vector -- todo
  163. </div>
  164. <div>
  165. todo
  166. </div>
  167. <h3>.addScalar([page:todo s]) [page:todo]</h3>
  168. <div>
  169. s -- todo
  170. </div>
  171. <div>
  172. todo
  173. </div>
  174. <h3>.divide([page:todo v]) [page:todo]</h3>
  175. <div>
  176. v -- todo
  177. </div>
  178. <div>
  179. todo
  180. </div>
  181. <h3>.min([page:todo v]) [page:todo]</h3>
  182. <div>
  183. v -- todo
  184. </div>
  185. <div>
  186. todo
  187. </div>
  188. <h3>.setComponent([page:todo index], [page:todo value]) [page:todo]</h3>
  189. <div>
  190. index -- todo <br />
  191. value -- todo
  192. </div>
  193. <div>
  194. todo
  195. </div>
  196. <h3>.transformDirection([page:todo m]) [page:todo]</h3>
  197. <div>
  198. m -- todo
  199. </div>
  200. <div>
  201. todo
  202. </div>
  203. <h3>.multiplyVectors([page:todo a], [page:todo b]) [page:todo]</h3>
  204. <div>
  205. a -- todo <br />
  206. b -- todo
  207. </div>
  208. <div>
  209. todo
  210. </div>
  211. <h3>.getComponent([page:todo index]) [page:todo]</h3>
  212. <div>
  213. index -- todo
  214. </div>
  215. <div>
  216. todo
  217. </div>
  218. <h3>.applyAxisAngle([page:todo axis], [page:todo angle]) [page:todo]</h3>
  219. <div>
  220. axis -- todo <br />
  221. angle -- todo
  222. </div>
  223. <div>
  224. todo
  225. </div>
  226. <h3>.lerp([page:todo v], [page:todo alpha]) [page:todo]</h3>
  227. <div>
  228. v -- todo <br />
  229. alpha -- todo
  230. </div>
  231. <div>
  232. todo
  233. </div>
  234. <h3>.max([page:todo v]) [page:todo]</h3>
  235. <div>
  236. v -- todo
  237. </div>
  238. <div>
  239. todo
  240. </div>
  241. <h3>.angleTo([page:todo v]) [page:todo]</h3>
  242. <div>
  243. v -- todo
  244. </div>
  245. <div>
  246. todo
  247. </div>
  248. <h3>.getColumnFromMatrix([page:todo index], [page:todo matrix]) [page:todo]</h3>
  249. <div>
  250. index -- todo <br />
  251. matrix -- todo
  252. </div>
  253. <div>
  254. todo
  255. </div>
  256. <h3>.reflect([page:todo vector]) [page:todo]</h3>
  257. <div>
  258. vector -- todo
  259. </div>
  260. <div>
  261. todo
  262. </div>
  263. <h3>.fromArray([page:todo array]) [page:todo]</h3>
  264. <div>
  265. array -- todo
  266. </div>
  267. <div>
  268. todo
  269. </div>
  270. <h3>.multiply([page:todo v], [page:todo w]) [page:todo]</h3>
  271. <div>
  272. v -- todo <br />
  273. w -- todo
  274. </div>
  275. <div>
  276. todo
  277. </div>
  278. <h3>.applyProjection([page:todo m]) [page:todo]</h3>
  279. <div>
  280. m -- todo
  281. </div>
  282. <div>
  283. todo
  284. </div>
  285. <h3>.setEulerFromRotationMatrix([page:todo m], [page:todo order]) [page:todo]</h3>
  286. <div>
  287. m -- todo <br />
  288. order -- todo
  289. </div>
  290. <div>
  291. todo
  292. </div>
  293. <h3>.toArray() [page:todo]</h3>
  294. <div>
  295. todo
  296. </div>
  297. <h3>.applyEuler([page:todo v], [page:todo eulerOrder]) [page:todo]</h3>
  298. <div>
  299. v -- todo <br />
  300. eulerOrder -- todo
  301. </div>
  302. <div>
  303. todo
  304. </div>
  305. <h3>.applyQuaternion([page:todo q]) [page:todo]</h3>
  306. <div>
  307. q -- todo
  308. </div>
  309. <div>
  310. todo
  311. </div>
  312. <h3>.setEulerFromQuaternion([page:todo q], [page:todo order]) [page:todo]</h3>
  313. <div>
  314. q -- todo <br />
  315. order -- todo
  316. </div>
  317. <div>
  318. todo
  319. </div>
  320. <h2>Source</h2>
  321. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  322. </body>
  323. </html>