История изменений
Исправление ziemin, (текущая версия) :
x1*(y2-y1)*(y2-y1)+tx*(x2-x1)*(x2-x1)+(x2-x1)*(y2-y1)*(ty-y1)
А это не формула квадрата суммы часом? Получается
x1*(y2-y1)*(y2-y1)+tx*(x2-x1)*(x2-x1)+(x2-x1)*(y2-y1)*(ty-y1)
=>
a=(y2-y1)*sqrt(x1) b = (x2-x1)*sqrt(tx)
=>
a^2 + b^2 + 2ab * (ty - y1) / (2 *sqrt(x1)*sqrt(tx)) + 2ab - 2ab
=>
(a + b)^2 + 2ab * (ty - y1) / (2 *sqrt(x1)*sqrt(tx)) - 2ab
=> (a + b)^2 + 2ab ((ty - y1)/2 *sqrt(x1)*sqrt(tx) - 1)
Так же проще считать (a, b надо вычислить заранее)
Исправление ziemin, :
x1*(y2-y1)*(y2-y1)+tx*(x2-x1)*(x2-x1)+(x2-x1)*(y2-y1)*(ty-y1)
А это не формула квадрата суммы часом? Получается
x1*(y2-y1)*(y2-y1)+tx*(x2-x1)*(x2-x1)+(x2-x1)*(y2-y1)*(ty-y1)
=>
a=(y2-y1)*sqrt(x1) b = (x2-x1)*sqrt(tx)
=>
a^2 + b^2 + 2ab * (ty - y1) / (2 *sqrt(x1)*sqrt(tx)) + 2ab - 2ab
=>
(a + b)^2 + 2ab * (ty - y1) / (2 *sqrt(x1)*sqrt(tx) - 2ab
=> (a + b)^2 + 2ab ((ty - y1)/2 *sqrt(x1)*sqrt(tx) - 1)
Так же проще считать (a, b надо вычислить заранее)
Исходная версия ziemin, :
x1*(y2-y1)*(y2-y1)+tx*(x2-x1)*(x2-x1)+(x2-x1)*(y2-y1)*(ty-y1)
А это не формула квадрата суммы часом? Получается
x1*(y2-y1)*(y2-y1)+tx*(x2-x1)*(x2-x1)+(x2-x1)*(y2-y1)*(ty-y1)
=>
a=(y2-y1)*sqrt(x1) b = (x2-x1)*sqrt(tx)
=>
a^2 + b^2 + 2ab * (ty - y1) / (2 *sqrt(x1)*sqrt(tx) + 2ab - 2ab
=>
(a + b)^2 - 2ab * (ty - y1) / (2 *sqrt(x1)*sqrt(tx) - 2ab
=> (a + b)^2 - 2ab (1 + (ty - y1)/2 *sqrt(x1)*sqrt(tx))
Так же проще считать (a, b надо вычислить заранее)