Рассчитать координаты линии по треугольнику - PullRequest
0 голосов
/ 06 июня 2019

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

Учитывая изображение ниже, у меня есть координаты для точек A, B, C и z.

Как мне найти координаты i1 и i2?

* +1012 *enter image description here

Ответы [ 2 ]

2 голосов
/ 06 июня 2019

Если CB линия горизонтальная (это не указано четко), то треугольники ACB и AI1I2 похожи, поэтому координатные отношения очень просты

I2.X = B.X + (A.X - B.X) * (z - B.Y) / (A.Y - B.Y)

и аналогичны для I1

0 голосов
/ 06 июня 2019

Вы ищете пересечение двух линейных линий в декартовой плоскости.

Вы должны решить это дважды: у вас есть две строки. Вам нужно решить ...

  1. Пересечение "A, C" с осью "I"
  2. Взаимодействие «A, B» с осью «I»

Вы можете сделать это, используя смоделированное уравнение и «установить их» равными друг другу и решить. Вы можете найти такой ответ здесь: https://stackoverflow.com/a/4543530/1554844

Как только вы решите для обеих пар, у вас есть координаты "X" обеих. У вас тривиально есть буква «Y», так как вы можете нарисовать линию (представьте: линию, проведенную между i точками, они опираются на один и тот же Y, и, поскольку вы вычисляете эти значения, вы должны знать, "Y", так как это ваша ось.)

...