Найти начальную и конечную координаты XY перпендикулярной линии, вычисленные из начальной и конечной координат XY базовой линии - PullRequest
0 голосов
/ 25 февраля 2010

Использование следующих значений координат начальной и конечной точки базовой линии:

X1 = 5296823,36 Y1 = 2542131,23

Х2 = 5311334,21 Y2 = 2548768,66

Я хотел бы рассчитать начальную и конечную координаты маятниковой линии, которая пересекает базовую линию в средней точке. Эта пересекающаяся перпендикулярная линия должна проходить на заданном расстоянии по обе стороны от базовой линии (например, Dist = 100).

Я был бы очень признателен, если бы кто-нибудь мог дать некоторые рекомендации, используя простые формулы, которые можно перенести в Excel или VB.

Большое спасибо заранее.

1 Ответ

2 голосов
/ 25 февраля 2010

Шаги:

Найти среднюю точку двух координат (xmid, ymid)

Найдите градиент отрезка, соединяющего две координаты (назовите его m).

Градиент линии, перпендикулярной этой линии, равен -1 / м.

Используйте этот новый градиент и координаты средней точки (xmid, ymid), чтобы найти уравнение перпендикулярной линии (подставьте xmid, ymid и -1 / m в уравнение линии), назовите его y = -1x / м + к

Представьте прямоугольный треугольник от xmid, ymid до вашей целевой точки (r единиц вдоль перпендикулярной линии - гипотенуза). Компонент x будет иметь X единиц измерения, а компонент y будет (-1X / m + k) единиц вверх.

Решить

r ^ 2 = X ^ 2 + (-1X / m + k) ^ 2

чтобы найти X. Где вы уже нашли r, m и k на предыдущих шагах.

Подставьте значения + ve и -ve этого значения в y = -1x / m + k, чтобы получить координаты y ваших конечных точек, а Боб - ваш дядя.

Должно быть относительно просто перевести это на любой данный язык программирования в очень короткий промежуток времени, но вам может понадобиться понять основную математику, чтобы сделать это, и как учитель математики я не собираюсь делать ваше Домашнее задание для вас.

...