Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.03;
Скачать: CL | DM;

Вниз

Алгоритм   Найти похожие ветки 

 
CanBlow ©   (2003-03-18 13:50) [0]

построения третьей точки треугольника.
Вопрос, конечно, идиотский, но помогите пожалуйста!
Значит так... Допустим есть точки А и В. Известно расстояние от А до В, от A до С, от В до С. Известны координаты А и В. Короче треугольник построить... Нужно найти хотя бы одну возможную координату С. И если не в лом, то как это организовать при большем колическте точек (А,В,С известны, а В построить). Уф...Всё... Спасибо!


 
MBo ©   (2003-03-18 14:08) [1]

В школе надо хорошо учиться!

(XC-XA)^2+(YC-YA)^2=AC^2
такое же уравнение для BC

решаешь систему, находишь Xc и Yc (две точки)


 
Внук ©   (2003-03-18 14:09) [2]

Этта... Пересечение двух окружностей найти не получается?


 
Vlad Oshin ©   (2003-03-18 14:09) [3]

система

(a1-x)(a1-x)+(b1-y)(b1-y)=c1 c1
(a2-x)(a2-x)+(b2-y)(b2-y)=c2 c2


насчет формулы расстояния по 2 точкам не уверен, уточни сам


 
pasha676   (2003-03-18 14:11) [4]

Мда. Чему людей в школе учат.


> Известно расстояние от А до В, от A до С, от В до С. Известны
> координаты А и В.


Все сводиться к решению задачи пересечения двух окружностей.

Первая окружность - центр в т. A, радиус ее - длина (AC)
Вторая окружность - центр в т. B, радиус ее - длина (BC)

Решаем - получаем два варианта расположения т. C

Стыдно должно быть.



 
pasha676   (2003-03-18 14:13) [5]

Во наотвечали пока я тут набивал :).


 
Vlad Oshin ©   (2003-03-18 14:15) [6]


> pasha676 (18.03.03 14:13)
> Во наотвечали пока я тут набивал :).

такая же фигня :)


 
CanBlow ©   (2003-03-18 14:15) [7]

Блин... Вы извините тогда за СПААМ, но я до этого ещё ... гм... не доучился наверное! В анкете в ж написано :) !


 
CanBlow ©   (2003-03-18 14:16) [8]

Я ,так сказать, из младшей весовой категории!


 
Alexander Vasjuk   (2003-03-18 15:17) [9]

CanBlow ©
тебе надо коснуться окружностю двух других? я угадал?
не верь никому, это так просто не решается.


 
Alexander Vasjuk   (2003-03-18 15:31) [10]

pasha676 (18.03.03 14:11)
Решить поставленную задачу и ту во что ты ее превратил одинаково сложно.
Нафига стыдить человека, екогда сам не можешь решить.


 
MBo ©   (2003-03-18 15:35) [11]

>Alexander Vasjuk
>не верь никому, это так просто не решается.
ну-ну ;)




 
Vlad Oshin ©   (2003-03-18 15:46) [12]


> тебе надо коснуться окружностю двух других? я угадал?

нет, ему надо


> Известно расстояние
> от А до В, от A до С, от В до С. Известны координаты А и
> В. Короче треугольник построить... Нужно найти хотя бы одну
> возможную координату С.



 
pasha676   (2003-03-18 15:48) [13]

Alexander Vasjuk

Еще раз. Читаем условия задачи.

Дано:

> Известно расстояние от А до В, от A до С, от В до С. Известны
> координаты А и В.

Найти:

> Нужно найти хотя бы одну возможную координату С.


Известны координаты двух вершин треугольника и длина всех сторон. Найти координаты третьей вершины.
Что тут архисложного?
В школе мы делали так. Рисовали точку A. Рисовали точку B. Проводили отрезок. Потом циркуль раздвигали на размер стороны AC. Ставили циркуль в точку A и рисовали окружность. Соответственно делали и с точкой B. Получали две окружности с двумя пересечениями (или с одним пересечением или без пересечений - но это уже вроде как не треугольник). Что тут сложного? Так же и математически.


 
Alexander Vasjuk   (2003-03-18 16:26) [14]

MBo © (18.03.03 15:35)
Ну-ну - это решение? Ну и ну!

Vlad Oshin © (18.03.03 15:46)
Просто у меня назрела именно про касание задача. И сводится она именно к данной.
Я хотел услышать мнение именно задающего.

pasha676 (18.03.03 15:48)
Вариант с циркулем для программирования не покатит.
Все говорят - что тут решать!
И НИКТО не дал решения.
А решение на самом деле трехэтажное. И в него должно входить условие существования решения.



 
Vlad Oshin ©   (2003-03-18 16:31) [15]


> Alexander Vasjuk (18.03.03 16:26)


ну, хорошо.
Давайте каснемся окружностей.
Получается опять же система, только формулы вспоминать надо, что лень ужасно.
играем на том, что касательные в т.т. касания - общие.



 
Alexander Vasjuk   (2003-03-18 16:39) [16]

Касательные IMHO усложняют дело.
Можно без систем. Через углы.
Думаю, для начала надо повернуть и подвинуть точки, чтоб А стала (0, 0), а В лежала на Ох.
Так проще, но тоже сложно, но решаемо.
Потом развирнуть и сдвинуть все назад...

pasha676
что молчишь?
Не так уж просто оказалось, не так ли.
Я точно знаю, что тебе эта задача не под силу.


 
Radionov Alexey ©   (2003-03-18 16:47) [17]

>Alexander Vasjuk (18.03.03 16:39)
повторю посто от MBo © (18.03.03 14:08)
"В школе надо хорошо учиться!"


 
Alexander Vasjuk   (2003-03-18 16:57) [18]

Radionov Alexey © (18.03.03 16:47)
У меня диплом с отличием.
А ты можешь дать решение, а не мораль читать?
Думаю, нет.


 
Vlad Oshin ©   (2003-03-18 17:07) [19]


> Alexander Vasjuk (18.03.03 16:57

хоть так, хоть так
но ему этого, имхо, не надо.

Задача решаема, правда, да, не такая простая как кажется :)


 
Radionov Alexey ©   (2003-03-18 17:07) [20]

>Alexander Vasjuk (18.03.03 16:57)
Писями меряться будем? А у меня к.т.н. :))
А задачей займусь имхо только если на слабо возьмешь ;)


 
Radionov Alexey ©   (2003-03-18 17:15) [21]

>Alexander Vasjuk (18.03.03 16:57)
Чтобы не быть голословным:
одна из координат вершины c:
cy = -1/2*(ay*(ac^2-ab^2-cb^2)-(ab^2-cb^2+ac^2)*b_y-sqrt((-b_y+ay-ab)*(-b_y+ay+ab)*(ab+ac-cb)*(ab+ac+cb)*(-ab+cb+ac)*(-cb-ab+ac)))/(ab^2)

где ab = длинна стороны AB
cb = длинна стороны CB
ac = длинна стороны AC


 
Alexander Vasjuk   (2003-03-18 17:18) [22]

Radionov Alexey © (18.03.03 17:07)
Достаточно, что наши писи не ниже уровня школы. Продвинутый школьник решит задачу.

Можешь не заниматься, признайся только, что задача все-таки сложная. :)


 
Radionov Alexey ©   (2003-03-18 17:19) [23]

>Alexander Vasjuk (18.03.03 16:57)

Как ты, наверное, успел догадаться (диплом с отличием все-таки)
Второе решение для коорд. Cy такое:
cy = -1/2*((ac^2-ab^2-cb^2)*ay+(-ab^2+cb^2-ac^2)*b_y+sqrt(-(ax-bx)^2*(-ab^2+ac^2+cb^2+2*cb*ac)*(-ab^2+ac^2-2*cb*ac+cb^2)))/(ab^2)

Собственно, все. cx1 и сx2 - нефиг делать уже


 
Игорь Шевченко ©   (2003-03-18 17:19) [24]

Radionov Alexey © (18.03.03 17:15)


> ab = длинна стороны AB

Длина. Извини :-)))


 
Radionov Alexey ©   (2003-03-18 17:21) [25]

>Игорь Шевченко © (18.03.03 17:19)
Это я в запале :)))
Извинения приняты. (Деградация, Игорь... что поделать)


 
pasha676   (2003-03-18 17:23) [26]

2Alexander Vasjuk

Ты прикалываешься или издеваешься? Или тупишь после рабочего дня (такое бывает ничего страшного)? Задачу свели к двум окружностям и решению системы из двух уравнений. Что еще надо?
Уравнения написал еще MBo в первом посте. Я умею решать два уравнения с двумя переменными. Если ты нет - то о чем спорить то?

Что касаемо циркуля. Это я для наглядности так объяснил. Почему не прокатит? Просто выражаешь окружность проведенную циркулем
через вполне определенную и во всех учебниках известную формулу
(X-X1)^2+(Y-Y1)^2=R^2
Если тебе эта формула ничего не говорит об окружности - то ты не фига ничего не понял в математике школьной программы.
Если ты не можеш получить точки пересечения исходя из нескольких формул линий - то опять же говорит об этом же.

Давай рассмотрим твою супер-пупер сложную задачу.
Ты так и не написал что в них дано, а что нет. Кстати.

Но можно поставить пиво и бабло - что это можно решить через систему уравнений (в той постановке о которой ты намекнул). Главное правильно их составить.


 
Alexander Vasjuk   (2003-03-18 17:33) [27]

Radionov Alexey ©
браво! не зря я тебя злил!
Щас проверю, если все правльно, с меня немеряно пива!
Решение мне тоже надо.


 
Alexander Vasjuk   (2003-03-18 17:50) [28]

pasha676 (18.03.03 17:23)
Успокойся, сынок.
Задачу поставил даже не я.
Но все уже поняли, что дано.
Ты очень много слов написал. Я понял, что ты очень крут, но я не вижу решения.
А пиво, извини, я ставлю Radionov Alexey, он дал решение.
А если ты действительно крут, дай более простое решение. У меня пива хватит на двоих, а тебе, если хочешь, и бабло устрою.
Ты только не горячись, а пости по уму.


 
Alexander Vasjuk   (2003-03-18 18:02) [29]

pasha676 (18.03.03 17:23)
вот мое решение, Паша
a и b - координаты центра первой окружности;
r1 - радиус первой окружности;
f - угол наклона прямой проходящей через центра двух известных окружностей;
h - расстояние между этими центрами;
r2 - радиус второй окружности;
r0 - радиус искомой окружности координаты центра которой мы ищем;

x` = (2r0(r1-r2)+r1^2-r2^2+h^2)/2h
y` = + - корень((r0^-r1)^2 - x`^2)

x = a + x`cos(f) - y`sin(f)
y = b + y`cos(f) + x`sin(f)


Попробуй хоть немного упростить.


 
REA ©   (2003-03-18 18:04) [30]

Эээ - на плоскости или в скольких измерениях? Евклидова геометрия или нет?


 
Alexander Vasjuk   (2003-03-18 18:13) [31]

REA © (18.03.03 18:04)
Попробуй эээ - общий случай :)



Страницы: 1 вся ветка

Текущий архив: 2003.04.03;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.032 c
1-6463
Ильдар
2003-03-24 12:29
2003.04.03
Какие библиотеки нужны


3-6356
Smashich
2003-03-13 10:29
2003.04.03
Полнотекстовый поиск


1-6521
Sergei
2003-03-24 17:01
2003.04.03
DrawGrid


14-6768
manumba
2003-03-14 16:41
2003.04.03
Автоматическое тестирование


3-6405
Pk
2003-03-14 22:18
2003.04.03
Подсчитать число записей в группе(QReport)