User:VictorEsq/sandbox

When observing a Three-dimensional space, a vision vector is a vector which connects the origin (0,0,0) and the point from which the space is viewed. It is used in architecture and technological design, in order to determine the Point-of-view of blueprints and interpret it efficiently. A unique property of the vision vector is that both of its ends seem as if they both represent a single point in the space. (see image)

The vision plane is a plane which is perpendicular to the vision vector. Simply put, the 3D model of the three-dimensional space is projected onto the plane and narrowed down to a 2D image. (see image)

Vision Vector and Vision Plane
The vision plane can be derived from the vision vector (and vice versa) using the Coefficient Vector rule: The plane $$ax+by+cz+d=0$$ is perpendicular to its coefficient vector $$(a,b,c)$$.

Since there are infinitely many vision planes for a given vector, all parallel to each other, the official one can be conveniently defined as the one which contains the origin ( $$ax+by+cz=0$$ ). Additionally, the vision vector is multiplicative - for example, (2,-3,1) is equivalent to (-4, 6, -2). Therefore, the vision vector may be noted as t(a, b, c).

Axial Angles
The axial angles are the angles between the x-, y- and z-axes, as projected upon the vision plane (see image). They are unique and calculable for a given vision vector or plane. Given the vision vector (a, b, c), the axial angles are:


 * $$\cos \alpha = \frac{-ab}{\sqrt{(b^2+c^2)(a^2+c^2)}}, \cos \beta = \frac{-ac}{\sqrt{(a^2+b^2)(b^2+c^2)}}, \cos \gamma = \frac{-bc}{\sqrt{(a^2+c^2)(a^2+b^2)}}$$

When $$\alpha$$ is the angle between the x- and y-axes, $$\beta$$ is the angle between the x- and z-axes and $$\gamma$$ is the angle between the y- and z-axes.

Proof
In order to find the axial angles, the axes must be projected onto the vision plane $$ax + by + cz = 0$$. i.e., finding vision vectors that connect points on the plane with a certain point on each axis.

For example, in order to project the x-axis onto the plane, the general point (k, 0, 0) which lies on this axis must be connected to a point on the plane with a vision vector t(a, b, c). For that to occur, a value of t must be found such that the point (at + k, bt, ct) is on the plane:


 * $$a^2 t + ak + b^2 t + c^2 t = 0$$


 * $$t = \frac{-ak}{a^2 + b^2 + c^2} = -a$$ (k set as a2 + b2 + c2 to minimize expressions)


 * $$\vec{x} = (b^2 + c^2,-ab,-ac)$$

The same procedure can be done to the y- and z-axes:


 * $$\vec{y} = (-ab,a^2 + c^2,-bc)$$


 * $$\vec{z} = (-ac,-bc,a^2 + b^2)$$

Now that the axes have been projected onto the plane and into their own vectors, the angles between them can be calculated using the dot-product and the result is as stated above.