Это должно быть простым делом, но по какой-то причине я не могу понять это.
У меня есть параллелограмм, определенный как четыре точки (в порядке против часовой стрелки, но кроме этого я незнаю какой угол какой).У меня также есть центральная точка параллелограмма и его ориентация (угол его, если «лицом»).То, что я хочу получить, это средняя точка линии на «фронте» параллелограмма.
Чтобы сделать это, я полагаю, мне нужно будет проследить луч от средней точки, под углом, к которому обращен параллелограмм, и проверитькакая из четырех линий она пересекает и где.Вот где я застрял.Я не могу найти формулу для достижения этой цели.Любые идеи?
Я кодирую в C #, но это математическая проблема больше всего, поэтому я приму формулу или psuedocode.
РЕДАКТИРОВАТЬ: Кажется, было немногоесли путаница в моей проблеме;извиняюсь за это.Я должен был указать, что я работаю с двумя измерениями, и «фронт» определяется как линия на параллелограмме, которая пересекает луч, сгенерированный путем наведения из средней точки, под предоставленным углом (к началу координат).Как указано в комментариях, вот диаграмма:
Оранжевые точки представляют углы параллелограмма, синяя точка - центроид, а желтая кривая - уголМне дано.Фиолетовая линия просто параллельна оси X, чтобы помочь представить угол.Серая линия, идущая от синей точки, - это (подраздел) луча, о котором я упоминал ранее, и, таким образом, зеленая точка - это точка, которую я хочу вычислить.Также обратите внимание, что эта диаграмма - просто эскиз, помогающий визуализировать проблему, а не сгенерированный моей программой.
Надеюсь, это поможет устранить любую путаницу.