2013-09-12 5 views
0

Я могу сделать это на бумаге достаточно легко, но у меня есть немного ментального блока, чтобы получить это на языке (я бы взял любой ответ, но Java, вероятно, был самым простым).Определение уравнения прямой линии из двух декартовых координат

У меня есть два набора точек Точка A (xA, yA) и точка B (xB, yB).

Зная это и предполагая, что эти два создают прямой график, мне нужно написать функцию, которая даст мне xC, учитывая, что я знаю yC (и, очевидно, что новая точка находится в одной строке) ,

Все оцененная помощь :)

С наилучшими пожеланиями

+0

«Я могу сделать это на бумаге, но не в Java» не имеет особого смысла для меня , Если это был жесткий алгоритм, нормально (или если у вас возникли проблемы из-за целочисленного деления). Но преобразование уравнения на бумаге в уравнение в Java не так уж сложно. – Teepeemm

ответ

6
(yB-yA)/(xB-xA) = (yC - yA)/(xC-xA) 

вы просто должны получить xC сейчас, то есть

xC = xA + ((yC - yA) * (xB-xA)/(yB-yA)) 

Это, предполагая, что yB отличается от yA. Если они равны, то есть не решения, если yC отличается от yA, и бесконечные решения (каждые xC работ), если yC=yA

+1

Спасибо, бог знает, почему я так сильно нашел! Полный умственный блок! :) –