<p>So there are an infinite number of vectors that satisfy this. Here are 3 ways to find some solutions:</p>
<ol>
<li><p>Use the swap and negate method similar to that from 2D.
Given a vector <span class="math-container">$(x, y, z)$</span> orthogonal vectors are <span class="math-container">$(-y, x, 0)$</span>, or <span class="math-container">$(-z, 0, x)$</span> or <span class="math-container">$(0, -z, y)$</span> ie set 1 component to zero then swap the other two and negate one of them(usually the first).</p>
</li>
<li><p>Solve for the dot product. The dot product of two orthogonal vectors would be equal to zero. So just pick two values and solve for third. ie given a vector <span class="math-container">$(1,2,3)$</span> the dot product of an orthogonal vector would be <span class="math-container">$1x+2y+3z=0$</span>. Use some method to pick <span class="math-container">$x,y$</span>, or just pick them randomly, and solve for <span class="math-container">$z$</span>. This is nice if you have just a little extra info but not all of it.</p>
</li>
<li><p>Similar to number 2. Solve the cross product for a vector that is orthogonal.</p>
</li>
</ol>
<p>Oh...I guess it goes without saying since I forgot to say it...
The last vector is the cross product of the compass heading, and the &quot;made up&quot; vector.</p>

CC BY-SA 4.0
2022-12-12T22:32:51.710Z
2022-12-12T23:23:50.530Z
2022-12-12T23:23:50.530Z
pmw1234
<p>Let's say I have a 3D model that represents a small real-world space; it could be bounded by a 10&quot; by 10&quot; by 10&quot; box. I know the real-world compass bearing for an observer in the center of the box looking down the X axis. How can I estimate the bearings of other vectors in this space?</p>

<3d><mathematics>
Approximate compass bearing of a normal
gavinmh
# Approximate compass bearing of a normal

(Asked by: username_0 on 2022-12-09)

Let's say I have a 3D model that represents a small real-world space; it could be bounded by a 10" by 10" by 10" box. I know the real-world compass bearing for an observer in the center of the box looking down the X axis. How can I estimate the bearings of other vectors in this space?

**Tags:** 3d, mathematics


---

## 1 answers

### Answer by username_1 on 2022-12-12. Score: 1

So there are an infinite number of vectors that satisfy this. Here are 3 ways to find some solutions:

1. Use the swap and negate method similar to that from 2D.
   Given a vector $(x, y, z)$ orthogonal vectors are $(-y, x, 0)$, or $(-z, 0, x)$ or $(0, -z, y)$ ie set 1 component to zero then swap the other two and negate one of them(usually the first).
2. Solve for the dot product. The dot product of two orthogonal vectors would be equal to zero. So just pick two values and solve for third. ie given a vector $(1,2,3)$ the dot product of an orthogonal vector would be $1x+2y+3z=0$. Use some method to pick $x,y$, or just pick them randomly, and solve for $z$. This is nice if you have just a little extra info but not all of it.
3. Similar to number 2. Solve the cross product for a vector that is orthogonal.

Oh...I guess it goes without saying since I forgot to say it...
The last vector is the cross product of the compass heading, and the "made up" vector.


---

