# How to calculate quaternion from world position of 3 points on a plane

**URL:** <https://discourse.threejs.org/t/how-to-calculate-quaternion-from-world-position-of-3-points-on-a-plane/44997>\
**Category:** Questions\
**Tags:** geometry\
**Created:** [November 22, 2022, 3:25am UTC](https://discourse.threejs.org/t/how-to-calculate-quaternion-from-world-position-of-3-points-on-a-plane/44997 "2022-11-22T03:25:14Z")\
**Posts on this page:** 1\
**Showing post:** 14

<div class="post-metadata">

**Author:** ![hofk](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/hofk/32/44944_2.png) [@hofk](https://discourse.threejs.org/u/hofk)\
**Post date:** [November 22, 2022, 1:58pm UTC](https://discourse.threejs.org/t/how-to-calculate-quaternion-from-world-position-of-3-points-on-a-plane/44997/14 "2022-11-22T13:58:22Z")

</div>

Of course, extracting the components of the basis vectors into constant values is equivalent to a matrix. But this also within the function. One saves the creation of the matrix in the application code. With the quaternion it seems clearer to myself.

_For ‘historical’ reasons I also like to work component-wise with vectors and matrices._  
_There are hardly any in my_  
[Addon. Produces almost infinite many time-varying geometries with functions](https://discourse.threejs.org/t/addon-produces-almost-infinite-many-time-varying-geometries-with-functions/262)  
[THREEf.js/THREEf.js at cc28a353fe8e3a6e98956dc299d1762b178ad452 · hofk/THREEf.js · GitHub](https://github.com/hofk/THREEf.js/blob/cc28a353fe8e3a6e98956dc299d1762b178ad452/THREEf_136/THREEf.js)

A little more in other addons.

---

_[View the full topic](https://discourse.threejs.org/t/how-to-calculate-quaternion-from-world-position-of-3-points-on-a-plane/44997)._
