MATLAB: Solve an equation for perspective projection

solve equation

Hi guys I got an equation need to simplify but am new to simplify command
D^2=(xa-xb)^2+(ya-yb)^2+(Za-Zb)^2
knowing that:
xa=-f*Xa/Za
xb=-f*Xb/Zb
ya=-f*Ya/Za
yb=-f*Yb/Zb
what i want is to simplify the equation to this form :
af^2+bf+c=0
thank you for help in advance regards,

Best Answer

Hi,
I'm sure this isn't the best solution, but if you enter f, Xa,Xb,Ya,Yb,Za, and Zb as symbols, and then enter your four constraints, and then your equation for D^2, and then use expand, you can pretty easily read off the terms and group them as you like in the quadratic form. I am sure there is a better way, but thought this might help you move along until someone has a better idea.
syms f Xa Xb Za Zb Ya Yb xa=-f*Xa/Za;
xb=-f*Xb/Zb;
ya=-f*Ya/Za;
yb=-f*Yb/Zb;
D2=((xa-xb)^2+(ya-yb)^2+(Za-Zb)^2);
expand(D2)