Страница 1 из 3

Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 16:51
NOVA
Не могу найти или чего-то не понимаю. Везде в параметрическом виде. Надо с переменными x,y,z; переменными точки начала луча x0, y0,z0? Ну и там какие-нибудь коэффициенты угла ABC. Подставляем x, y - находим Z. Или это должна быть система уравнений?

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 17:23
snezhok_13
В параметрическом везде - потому что это самое простое представление, самое применимое - начало, направление и параметр. y = kx + b для плоскости хорош, но есть ли что-то такое же аналитическое для 3д, я не уверен) Подпишусь на тему, вдруг математики ответят)

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 17:34
NOVA
Уравнение прямой в пространстве имеет практически такой же вид, как а на плоскости.
http://www.cleverstudents.ru/line_and_p ... space.html
Прям хоть составляй систему c (x>=5, y >=3, z>=1) Только как с помощью такой системы одно через другое выводить?

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:02
Cr0c
Так уравнение надо или что попроще? Вот Ray имеет такое - точку и направление. Чем параметрика плоха? Слооожна )) а так всё зависит от задачи: посчитать прямую? Пересечение прямых? С плоскостью? Ближайшую точку на сфере?

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:06
NOVA
Cr0c писал(а):Так уравнение надо или что попроще? Вот Ray имеет такое - точку и направление. Чем параметрика плоха? Слооожна )) а так всё зависит от задачи: посчитать прямую? Пересечение прямых? С плоскостью? Ближайшую точку на сфере?

Надо математически выводить одно из другого. Как вытащить X из ветора направления? На бумаге не наглядно. Надо спокойно взять любую переменную из уравнения, сократить или умножить.

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:23
Cr0c
Читаем по той ссылке и видим параметрическое: x = ray.origin + ray.direction * [lambda];
И так для каждой оси. Обобщая, получаем изначальное point = ray.origin + ray.direction * [lambda], где lambda "удаление" от точки.
Считать по известной координате? Запросто!
lambda = (point_z - ray.origin.z) / ray.direction.z;
point = ray.origin + ray.direction * lambda;
Так можно любую из координат подставлять.

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:26
NOVA
Cr0c писал(а):Так можно любую из координат подставлять.

И в теорему синусов?

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:30
Cr0c
NOVA писал(а):
Cr0c писал(а):Так можно любую из координат подставлять.

И в теорему синусов?

А здесь теорема синусов?

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:33
NOVA
Cr0c писал(а):
NOVA писал(а):
Cr0c писал(а):Так можно любую из координат подставлять.

И в теорему синусов?

А здесь теорема синусов?

Мне надо выдёргивать переменные свободно я же писал. Теорема синусов может пригодится. Иначе как решить вот такую задачу?
Изображение

На сколько градусов надо повернуть ГО с двумя векторами из него (синим) вокруг точки А, чтобы верхний вектор пересёк точку B. Результат нарисован жёлтым цветом. Всё выразить математически.

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:38
Cr0c
У синего угла что дано? А и В - заданы?

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:41
NOVA
Ну вообще - то это конкретный случай. Случаи бывают разные.
В данном случае дан угол между лучами. Координаты A, Координаты B. А значит AB длина - есть. Также есть длина GO-A. Она постоянна. Да это я бы и так сделал. Я тут чуть поглобальнее решил поразмыслить. заданы 8 векторов. 4 и 4 точки пересечения одновременно и задана длина одного вектора. Например единица. Надо получить все точки пересечения. Но без уравнений лучей в пространстве... Разве что с прямыми поэкспериментировать.

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:51
Cr0c
G = GO_new
|AB| / sin G_angle = |AG| / sin A_angle =>
sin В_angle = |AG| * sin G_angle / |AB|
A_angle = 180 - arcsin (|AG| * sin G_angle / |AB|) - G_angle
Угол поворота равен углу между текущим углом А и нужным. Не забыть определить знак поворота!
Как-то так, вроде.

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 19:53
Cr0c
NOVA писал(а):заданы 8 векторов. 4 и 4 точки пересечения одновременно и задана длина одного вектора. Например единица

Ничего не понял. Вряд ли ошибаются те, кто даёт задачу после пояснительного рисунка ))

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 20:04
NOVA
Это слишком шикарно, чтобы Вы смогли решить такую серьёзную задачу на раз два. Ну смотрите. Все углы из ГО известны. Это два разных ГО, но вектора точные, дочерние. Изначально положения и повороты ГО неизвестны. Но то, что каждый соостветствующий луч лево-право-верх-низ-пересекаются - это точно. Вобщем изначально эти ГО расположены в ряд и смотрят в одну сторону. Надо найти положение второго ГО, чтобы все лучи точно пересеклись попарно. Прямых углов нет. То есть левый правый вектор первого ГО лежат в одной плоскости, левый правый второго ГО лежат во второй плоскости и так далее. Все они лежат в разных плоскостях, но пересекаются. Левый ГО1 с левым ГО2, Правый ГО1 с правым ГО2 и так далее.
Скрытый текст:
Изображение

Re: Уравнение луча в пространстве и на плоскости?

СообщениеДобавлено: 09 фев 2018, 20:35
Cr0c
Известны 5 точек го1, 4 точки го2 и все углы из го2?