I'm currently reading some codes about conical projection.
Let the viewed target position point be $P$, and the observer point be $Q$, the local coordinate system's $x,y$ plane is perpendicular to $\vec{PQ}$. $z$ axis along $\vec{PQ}$. Let the coordinates of the $x,y,z$ axis's directional unit vector be denoted as $v_x,v_y,v_z$.
Given a point $S$ and a tangent vector $v$ at the point on a surface, the codes calculated projected tangent vector $v'$, and the procedure can be translated into the following math formulas:
$ M=\begin{bmatrix} v_x^T\\v_y^T\\v_z^T \end{bmatrix},S'=M(S-Q)$
$ c_1=\dfrac{[MQ]_z}{[MQ]_z-[MS]_z},c_2= \dfrac{[MQ]_z}{([MQ]_z-[MS]_z)^2} $
$ w=M v $
$ v'_x = c_1w_x + c_2 S_x' w_z $
$ v'_y = c_1w_y + c_2 S_y' w_z $
$ v'_z = w_z$
Here $[u]_x$ means the $x$ component of vector $u$ and so on.
The terms $c_1w_x$ and $c_1w_y$ are quite easy to understand - projecting will magnify near objects, but I cannot understand $c_2$ and $c_2 S_x' w_z$. Could someone teach me how to derive these formulas?