Это небольшая часть более сложной задачи, связанной с геометрией, которой я сейчас занимаюсь.
Вопрос вроде простой, но что-то "не думается".

А вопрос ещё скорее геометрический.
Смысл такой: в трехмерном пространстве есть 2 вершины с известными координатами. Нужно программно определить координаты третьей, чтобы был прямоугольный треугольник.

Принятый ответ

Смысл такой: в трехмерном пространстве есть 2 вершины с известными координатами
В трехмерном пространстве не определить однозначно у тебя бесконечное множество решений, которые образуют конус
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
9
9 лет назад
Отредактирован AsagiriGen
0
У третьей точки просто координата X первой точки и координата Y второй. Или наоборот.
0
24
9 лет назад
0
GeneralElConsul, в трехмерном пространстве?
Это вроде в двухмерном, а у меня трехмерное, да ещё и неизвестно, как повернут треугольник.
2
21
9 лет назад
Отредактирован LVenger
2
Так тут два условия уже с начала - гипотенуза это или катет, то есть если катет, то ты должен либо проверять координаты сразу или брать какое-то исходное направление и по нему определять.
Просто я в координатах шарю, ты можешь зная координаты высчитать дирекционный угол(в твоём случае это угол отсчит по часовой стрелки от направления(отрезка) до направления по оси Y по крайней мере так должно быть)
а вот дальше, надо думать, так как тебе надо так связать реальные и дирекционный углы, чтобы те были во первых каждый реальный не более 90 градусов, узнав угол и дирекционный угол можно легко узнать расстояния и координаты
Формулу тебе сразу прямо не напишу, но на мысль я тебя постарался навести
я геодезист да-да а кто это вообще такой , у нас дофига всякой геометрической состовляющей в работе, сначала сделай для 2-х измерений как я в своём совете, потом развивай формулу до 3-его измерения
2
20
9 лет назад
Отредактирован Mihahail
2
На отрезке(определяемом двумя точками) можно построить бесконечное множество треугольников. Причем у всех у них вершина при прямом угле будет лежать на окружности, у которой данный отрезок - диаметр.
Точнее не на окружности, а на сфере, раз тут три-дэ
условие на координаты вершины соотвественно [(x1+x2)/2 - x]^2 + [ (y1+y2)/2 - y ]^2 + [ (z1+z2)/2 - z ]^2 == ( [ x1 - x2 ]^2 + [ y1 - y2 ]^2 + [ z1 - z2 ]^2 )/2
Но тебе ведь не это нужно, ты наверно не указал всё, что тебе нужно в вопросе.
0
25
9 лет назад
Отредактирован П4ела
0
Слишком мало данных. Нужна длина еще одной стороны. Так же желательно узнать в какой вершине угол 90* (т.е. нужно знать, что катеты, а что гипотенуза).
Из этих 2-х вершин можно построить огромное количество прямоугольных треугольников.

Mihahail, отрезок может быть не только гипотенузой-диаметром но и одним из 2-х катетов, что увеличивает и без того бесконечное число треугольников =)
2
9
9 лет назад
Отредактирован AsagiriGen
2
Это вроде в двухмерном, а у меня трехмерное, да ещё и неизвестно, как повернут треугольник.
Ок, не увидел.
Принцип схожий: у третий точки должна быть одна из координат первой точки, а две остальные второй точки, или наоборот. Например, у тебя есть A(x1,y1,z3) и B(x2, y2 , z3). Чтобы получился прямоугольный треугольник, берем C(x1, y1, z2) или (x2, y1, z2) и т.д.
Проверил в Максе.
2
20
9 лет назад
Отредактирован Mihahail
2
А просто какая-нибудь вершина, чтоб был прямой угол, опираюийся на отрезок как на гипотенузу, то бери точку, у которой максимальная(или минимальная) z координата, из неё берешь x и y, а z берешь из другой точки.
GeneralElConsul, опередил)
П4ела, ну лол, если это катет, то просто делаем к нему перпендикулярный вектор любой длины(и "исходящий" из любого из двух концов отрезка). Т.е. тогда вершина лежит на одной из двух параллельных плоскостей, перпендикулярных отрезку. Условие: x(x1-x2)+y(y1-y2)+z(z1-z2) == [ x1 - x2 ]^2 + [ y1 - y2 ]^2 + [ z1 - z2 ]^2 или c обратным знаком в одной из сторон равенства. Из простых соображений, что вектор r - (r1-r2) лежит в нужной плоскости а значит его скалярное произведение на вектор отрезка(r1-r2) будет ноль.
Тогда получается, кстати, что множество допустимых вершин - это что-то вроде TIE-fighter'a(сфера, зажатая муж двух плоскостей).
Да, как я уже сказал, кто-то не дописал вопрос.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.