[identity profile] shes-mother.livejournal.com posting in [community profile] useful_faq
я, наверное, блондинко, а может быть обчиталась сложной математики, поэтому не могу сообразить..
задачка следующая.
есть три точки на одной прямой (А, В, С) и есть четвертая отдельно от них (S).
известны координаты точек А, В и S вида (Х,У,Н), т. е. дело происходит в трехмерном пространстве.
также известны расстояния от точки С до точек А и В. напоминаю, эти точки находятся на одной прямой.
жизненно необходимо к утру расчитать координаты точки С.



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

упд: Как считает программа координаты точки С, я не в курсе, поэтому даю все данные, которые нам известны на конец измерений, в том числе и точку S. Лучше не пишите, что я надавала вам лишних сведений.. я просто снабдила вас максимумом информации. думаю, было бы хуже, если бы я чего-то недосказала.

Всем спасибо :)

Date: 2008-01-29 07:01 pm (UTC)
From: [identity profile] abavera.livejournal.com
А кто такая (S) и как отностися (Р) к (С)?

Date: 2008-01-29 07:02 pm (UTC)
From: [identity profile] abavera.livejournal.com
кроме того, коль А В и С на одной прямой - то зачем вам вообще трехмерка и точка Р?

Date: 2008-01-29 07:09 pm (UTC)
From: [identity profile] krolchatina.livejournal.com
+1
Точка S она же P не нужна в общем-то (ну только как начало координат)

Достаточно начала координат (ну пусть будет Р) и точек А B и расстояний СB и СA.
Находите вектор AB (как разность векторов PB и PA), преварщаете его в вектор BC (поскольку AB и CB известны) и дальше координаты С это сумма векторов PB и BC


Ну может можно и поизящнеею

Date: 2008-01-29 07:50 pm (UTC)
From: [identity profile] krolchatina.livejournal.com
А чего тут писать то?

Lля удобства записи оси назовем 1,2,3 вместо x,y,z

Вектор AB: (B1-A1,B2-A2,B3-A3)
Если расстояния CB и CA известны, то известно и отношение расстояний BC к AB. Обзовем его U для удобства.
Тогда вектор BC: ( (B1-A1)*U,(B2-A2)*U,(B3-A3)*U)
Чтобы найти координаты точки C, добавляем вектор ОB (B1,B2,B3)

Результат:
( (B1-A1)*U + B1 ,(B2-A2)*U + B2 ,(B3-A3)*U + B3 )
Ожидаемо от точки S не зависит вообще ничего.

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

Date: 2008-01-29 07:54 pm (UTC)
From: [identity profile] http://users.livejournal.com/_zapped_/
совершенно верно :))
раз координаты точек А и В известны, то вам известно уравнение прямой АВ,
слоедовательно мы можем определить координаты любой точки на этой прямой, зная расстояние до неё.

поскольку точка С лежит на этой прямой, и известно расстояние до А или/и В, то определить её координаты не составляет труда... уравнений самих не помню, если надо, покопаюсь в памяти (давно это было)...
точка S, получается, лишняя

Date: 2008-01-29 08:06 pm (UTC)
From: [identity profile] http://users.livejournal.com/_zapped_/
ну, Вам тут уже написали (http://community.livejournal.com/useful_faq/6073212.html?thread=57718140#t57718140)

Date: 2008-01-29 07:19 pm (UTC)
From: [identity profile] abavera.livejournal.com
через две точки можно провести ТОЛЬКО ОДНУ ПРЯМУЮ.
А вы утверждаете, что точка С тоже принадлежит этой прямой.
а тем более у вас есть расстояния АС и ВС.
я тут вообще задачки не вижу :)

Date: 2008-01-29 07:45 pm (UTC)
From: [identity profile] gr-moonk.livejournal.com
надо имхо поставить точку В в начало координат... тогда ВА=корень((m*i)^2+(n*j)^2+(z*k)^2) i,j,k - по сути одно и то же число.. так как линейная прямая.. ВС берём тогда с другими i,j,k но длинну подгоняем под длинну ВС.. а вообще по хорошему это надо в аське обсуждать.. я что то не совсем уверен чтоя прав..

Date: 2008-01-29 08:27 pm (UTC)
From: [identity profile] 4irkov.livejournal.com
Вы бы хотя бы координаты выложили.
Ну вот, сопсна:

Image

Date: 2008-01-29 08:30 pm (UTC)
From: [identity profile] 4irkov.livejournal.com
блять, в последней строчке, там С равно не вектору АВ, а вектору АС.

Date: 2008-01-29 08:33 pm (UTC)
From: [identity profile] krolchatina.livejournal.com
!!!!!!!
Коордианты A нужно прибавить к вектору АС для полного счастья все же.
Edited Date: 2008-01-29 08:34 pm (UTC)
(deleted comment)

Date: 2008-01-29 08:45 pm (UTC)
From: [identity profile] krolchatina.livejournal.com
Ну потомушта "координаты точки С" - это вектор ОС, где О - начало системы координат (С1,С2,С3).
Чтобы получить этот вектор, нужно к вектору АС добавить вектор ОА, иначе получится лажа.

Date: 2008-01-29 08:44 pm (UTC)
From: [identity profile] 4irkov.livejournal.com
Хм, точно. Забыл )
Надо задать вектор OA и к нему прибавить вектор АС по закону сложения векторов. Афтор, думаю разберецца.
Но полпузырька - мне, ыыы

Date: 2008-01-29 08:46 pm (UTC)
From: [identity profile] krolchatina.livejournal.com
У меня оно зато в одну строчку )

Date: 2008-01-29 09:01 pm (UTC)
From: [identity profile] 4irkov.livejournal.com
Выкладывай свое, чо.
А то че, зря решал, што ле.

Апдейт:
Image

Date: 2008-01-29 09:04 pm (UTC)
From: [identity profile] krolchatina.livejournal.com
Дык вон, давно уже написал: http://community.livejournal.com/useful_faq/6073212.html?thread=57718140#t57718140
U у меня - это отношение длин BC к AB.

Решения сходятся, кстати, что приятно.

Date: 2008-01-29 09:26 pm (UTC)
From: [identity profile] 4irkov.livejournal.com
Кстати, тоже хотел сразу найти t через отношения. Но векторы в пространстве начал учить только сейчас (буквально вчера), так что побоялся запутаться. В итоге все равно забыл в конце координаты прибавить, гы

Date: 2008-01-30 12:49 pm (UTC)
From: [identity profile] roquefort-tln.livejournal.com
Че-то я вас не понимаю. Информация необходимая для решения задачи - это координаты точек A и B и одно из расстояний L/l. Вся остальная информация избыточна. Зачем точка S - вообще не понимаю.

У вас автокад есть? строите линию АВ по координатам точек, командой lengthen удлиняете ее на величину L, измеряете координату конца. Фсё!

Date: 2008-01-30 01:07 pm (UTC)
From: [identity profile] roquefort-tln.livejournal.com
То же самое но без автокада:
1. Высчитываете по теореме Пифагора (трехмерной) расстояние АВ
2. дальше тупо пропорция - отношение разностей каждой из координат точек (A - С) и (А - В) будет равна отношению длин отрезков АС и АВ

(Xa-Xc) / (Xa-Xb) = Lac / Lab
(Ya-yc) / (Ya-Yb) = Lac / Lab
(Za-Zc) / (Za-Zb) = Lac / Lab

Вроде так... Поправьте если что