Прямая может задаваться 5 разными способами:
1) уравнение y = kx + b; самое первое уравнение прямой, которому учат в школе - удобно для построения и вычислений вручную, но в программе его использование весьма неудобно
2) по 2 точкам, лежащим на ней - на самом деле достаточно удобно, но имеет достаточно узкое применение
3) по вектору нормали прямой и точке - вектор нормали к прямой - это вектор, перпендикулярный ей, подробнее о нём ниже
4) по направляющему вектору прямой и точке - направляющий вектор - это вектор, лежащий на прямой и перпендикулярный вектору нормали (ну логично), о нём ниже
5) уравнение прямой ax + by + c = 0; классическое уравнение прямой, в большинстве случаев наиболее универсально (по моему мнению, конечно), сейчас о нём:
Координаты вектора нормали такой прямой: (a; b) или (-a; -b)
Координаты направляющего вектора такой прямой: (-b; a) или (b; -a)
Прямые параллельны, если a1/b1 = a2/b2
Расстояние от точки до прямой (будьте осторожны: расстояние может быть отрицательным, всё зависит от того, с какой стороны от прямой лежит точка):
(a*x1 + b*y1 + c)/sqrt(a^2 + b^2), где x1, y1 - координаты точки
Построение прямой по вектору нормали и точке или направляющему вектору и точке сводится к построению прямой по 2 точкам, так что рассмотрим именно его (оно, к тому же, используется наиболее часто):
Если x1, y1, x2, y2 - координаты первой и второй точек соответственно, то
a = y1 - y2
b = x2 - x1
c = x1 * y2 - x2 * y1