Ray.html 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. <!DOCTYPE html>
  2. <html lang="it">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  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. <p class="desc">
  12. Un raggio che parte da un'origine e si dirige in una determinata direzione. Questo viene utilizzato
  13. dal [page:Raycaster] per assistere il raycasting. Il raycasting viene utilizzato per selezionare
  14. con il mouse (elaborare su quali oggetti nello spazio 3D si trova il mouse) tra le altre cose.
  15. </p>
  16. <h2>Costruttore</h2>
  17. <h3>[name]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
  18. <p>
  19. [page:Vector3 origin] - (opzionale) l'origine del [page:Ray raggio]. Il valore predefinito è un [page:Vector3] a (0, 0, 0).<br />
  20. [page:Vector3 direction] - [page:Vector3] La direzione del [page:Ray raggio]. Deve essere normalizzato
  21. (con [page:Vector3.normalize]) affinchè i metodi funzionino correttamente. Il valore predefinito è [page:Vector3] a (0, 0, -1).<br /><br />
  22. Crea un nuovo [name].
  23. </p>
  24. <h2>Proprietà</h2>
  25. <h3>[property:Vector3 origin]</h3>
  26. <p>L'origine del [page:Ray raggio]. Il valore predefinito è un [page:Vector3] a `(0, 0, 0)`.</p>
  27. <h3>[property:Vector3 direction]</h3>
  28. <p>
  29. La direzione del [page:Ray raggio]. Deve essere normalizzato (con [page:Vector3.normalize])
  30. affinchè i metodi funzionino correttamente. Il valore predefinito è un [page:Vector3] a (0, 0, -1).
  31. </p>
  32. <h2>Metodi</h2>
  33. <h3>[method:this applyMatrix4]( [param:Matrix4 matrix4] )</h3>
  34. <p>
  35. [page:Matrix4 matrix4] - la [page:Matrix4] da applicare a questo [page:Ray raggio].<br /><br />
  36. Trasforma questo [page:Ray raggio] con [page:Matrix4].
  37. </p>
  38. <h3>[method:Vector3 at]( [param:Float t], [param:Vector3 target] ) </h3>
  39. <p>
  40. [page:Float t] - la distanza lungo il [page:Ray raggio] per la quale recuperare una posizione.<br />
  41. [page:Vector3 target] — il risultato sarà copiato in questo Vector3.<br /><br />
  42. Ottiene un [page:Vector3] che corrisponde a una determinata distanza lungo questo [page:Ray raggio].
  43. </p>
  44. <h3>[method:Ray clone]()</h3>
  45. <p>
  46. Crea un nuovo raggio con [page:.origin origine] e [page:.direction direzione] identiche a questo.
  47. </p>
  48. <h3>[method:Vector3 closestPointToPoint]( [param:Vector3 point], [param:Vector3 target] )</h3>
  49. <p>
  50. [page:Vector3 point] - il punto a cui avvicinarsi di più. <br />
  51. [page:Vector3 target] — il risultato verrà copiato in questo Vector3.<br /><br />
  52. Ottiene il punto lungo questo [page:Ray raggio] che è il più vicino al [page:Vector3] fornito.
  53. </p>
  54. <h3>[method:this copy]( [param:Ray ray] )</h3>
  55. <p>
  56. Copia le proprietà [page:.origin origine] e [page:.direction direzione]
  57. del [page:Ray raggio] in questo raggio.
  58. </p>
  59. <h3>[method:Float distanceSqToPoint]( [param:Vector3 point] )</h3>
  60. <p>
  61. [page:Vector3 point] - il [page:Vector3] per calcolare una distanza.<br /><br />
  62. Ottiene la distanza al quadrato dell'avvicinamento più vicino tra il [page:Ray raggio] e il [page:Vector3].
  63. </p>
  64. <h3>[method:Float distanceSqToSegment]( [param:Vector3 v0], [param:Vector3 v1], [param:Vector3 optionalPointOnRay], [param:Vector3 optionalPointOnSegment] )</h3>
  65. <p>
  66. [page:Vector3 v0] - l'inizio del segmento.<br />
  67. [page:Vector3 v1] - la fine del segmento.<br />
  68. optionalPointOnRay - (opzionale) se viene fornito, riceve il punto su questo
  69. [page:Ray raggio] più vicino al segmento.<br />
  70. optionalPointOnSegment - (opzionale) se viene fornito, riceve il punto
  71. sul segmento più vicino al [page:Ray raggio].<br /><br />
  72. Ottiene la distanza al quadrato tra questo [page:Ray raggio] e un segmento.
  73. </p>
  74. <h3>[method:Float distanceToPlane]( [param:Plane plane] )</h3>
  75. <p>
  76. [page:Plane plane] - il [page:Plane] per ottenere la distanza.<br /><br />
  77. Ottiene la distanza tra l'[page:.origin origine] e il [page:Plane piano], o `null` se il [page:Ray raggio] non interseca il [page:Plane piano].
  78. </p>
  79. <h3>[method:Float distanceToPoint]( [param:Vector3 point] )</h3>
  80. <p>
  81. [page:Vector3 point] - Il [page:Vector3] su cui calcolare la distanza.<br /><br />
  82. Ottiene la distanza dell'avvicinamento più vicino tra il [page:Ray raggio] e il [page:Vector3 punto].
  83. </p>
  84. <h3>[method:Boolean equals]( [param:Ray ray] )</h3>
  85. <p>
  86. [page:Ray ray] - il [page:Ray raggio] su cui confrontare.<br /><br />
  87. Restituisce true se questo e l'altro [page:Ray raggio] hanno [page:.origin origine]
  88. e [page:.direction direzione] uguali.
  89. </p>
  90. <h3>[method:Vector3 intersectBox]( [param:Box3 box], [param:Vector3 target] )</h3>
  91. <p>
  92. [page:Box3 box] - il [page:Box3] con cui intersecare.<br />
  93. [page:Vector3 target] — il risultato verrà copiato in questo Vector3.<br /><br />
  94. Interseca questo [page:Ray raggio] con un [page:Box3], restituendo il punto di intersezione o
  95. `null` se non ci sono intersezioni.
  96. </p>
  97. <h3>[method:Vector3 intersectPlane]( [param:Plane plane], [param:Vector3 target] )</h3>
  98. <p>
  99. [page:Plane plane] - il [page:Plane] con cui intersecare.<br />
  100. [page:Vector3 target] — il risultato verrà copiato in questo Vector3.<br /><br />
  101. Interseca questo [page:Ray raggio] con un [page:Plane], restituendo il punto di intersezione o
  102. `null` se non ci sono intersezioni.
  103. </p>
  104. <h3>[method:Vector3 intersectSphere]( [param:Sphere sphere], [param:Vector3 target] )</h3>
  105. <p>
  106. [page:Sphere sphere] - la [page:Sphere] con cui intersecare.<br />
  107. [page:Vector3 target] — il risultato verrà copiato in questo Vector3.<br /><br />
  108. Interseca questo [page:Ray raggio] con una [page:Sphere], restituendo il punto di intersezione o
  109. `null` se non ci sono intersezioni.
  110. </p>
  111. <h3>[method:Vector3 intersectTriangle]( [param:Vector3 a], [param:Vector3 b], [param:Vector3 c], [param:Boolean backfaceCulling], [param:Vector3 target] )</h3>
  112. <p>
  113. [page:Vector3 a], [page:Vector3 b], [page:Vector3 c] - I punti [page:Vector3] che compongono il triangolo.<br />
  114. [page:Boolean backfaceCulling] - se utilizzare backface culling o meno.<br />
  115. [page:Vector3 target] — il risultato verrà copiato in questo Vector3.<br /><br />
  116. Interseca questo [page:Ray raggio] con un triangolo, restituendo il punto di intersezione o
  117. `null` se non ci sono intersezioni.
  118. </p>
  119. <h3>[method:Boolean intersectsBox]( [param:Box3 box] )</h3>
  120. <p>
  121. [page:Box3 box] - il [page:Box3] con cui intersecare.<br /><br />
  122. Restituisce true se questo [page:Ray raggio] si interseca con il [page:Box3].
  123. </p>
  124. <h3>[method:Boolean intersectsPlane]( [param:Plane plane] )</h3>
  125. <p>
  126. [page:Plane plane] - il [page:Plane] con cui intersecare.<br /><br />
  127. Restituisce true se questo [page:Ray raggio] si interseca con il [page:Plane].
  128. </p>
  129. <h3>[method:Boolean intersectsSphere]( [param:Sphere sphere] )</h3>
  130. <p>
  131. [page:Sphere sphere] - la [page:Sphere] con cui intersecare.<br /><br />
  132. Restituisce true se questo [page:Ray raggio] si interseca con la [page:Sphere].
  133. </p>
  134. <h3>[method:this lookAt]( [param:Vector3 v] )</h3>
  135. <p>
  136. [page:Vector3 v] - Il [page:Vector3] da guardare.<br /><br />
  137. Regola la direzione del raggio in modo che punti al vettore nelle coordinate world.
  138. </p>
  139. <h3>[method:this recast]( [param:Float t] )</h3>
  140. <p>
  141. [page:Float t] - La distanza lungo il [page:Ray raggio] da interpolare.<br /><br />
  142. Sposta l'origine di questo [page:Ray raggio] lungo le sue direzione per la distanza data.
  143. </p>
  144. <h3>[method:this set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
  145. <p>
  146. [page:Vector3 origin] - l'[page:.origin origine] del [page:Ray raggio].<br />
  147. [page:Vector3 direction] - la [page:.direction direzione] del [page:Ray raggio].
  148. Deve essere normalizzato (con [page:Vector3.normalize]) affinchè i metodi funzionino correttamente.<br /><br />
  149. Imposta le proprietà [page:.origin origine] e [page:.direction direzione] di questo raggio copiando i valori dagli oggetti dati.
  150. </p>
  151. <h2>Source</h2>
  152. <p>
  153. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  154. </p>
  155. </body>
  156. </html>