title: Calculate rotation by vector
body: <p>I have a sphere with a center in <em>(0,0,0)</em> and radius = 1, with three marked points on it's surface, forming a triangle:</p>
  
  <pre><code>x = (1,0,0)
  y = (0,1,0)
  z = (0,0,1)
  </code></pre>
  
  <p>Now, I am translating <strong>y</strong> by a vector <strong>v_y</strong> to get <strong>y'</strong></p>
  
  <pre><code>v_y = [1, 2, 3]
  y' = (1, 3, 3)
  </code></pre>
  
  <p>I want to calculate v_x and v_z the way, both x' and z' will move in the same manner, so calculated points will form simillar triangle (same side to side ratios)</p>
  
  <p>I know it can be achieved by rotating, and scaling this sphere, but I have no idea how to calculate this just by knowing this vector.
  I need two angles for rotation, and one scalar for scaling.</p>
  
  <p>Maybe I am wrong, and I can just calculate those vectors without calculating a rotation.</p>