| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Построение касательной к двум окружностям

Построение касательной к двум окружностям

Ответ
Поиск в этой теме
Непрочитано 22.08.2006, 04:39
Построение касательной к двум окружностям
Никита В.
 
CAD Operator
 
Samara-Gorodok
Регистрация: 01.11.2005
Сообщений: 389

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

Метод последовательных приближений не предлагать.

П.С. Задача должна быть решена средствами акада в т.ч. и посредством лиспа.
__________________
АвтоКАД это не только электронный кульман,
Но и великий ГЕМОР
Просмотров: 70900
 
Непрочитано 15.11.2006, 16:40
#21
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,327


Попробуйте касательную к сплайну
Может будет понятней?

Постройте сплайн, например в виде S
Далее _xline, включение привязки Tangent, указание сплайна .

Водите мышкой. Должно быть видно перекатывание
Хмурый вне форума  
 
Непрочитано 15.11.2006, 17:49
#22
ki

Constructor
 
Регистрация: 28.09.2005
SPb
Сообщений: 689
<phrase 1= Отправить сообщение для ki с помощью Skype™


Привет.

Задача при помощи черчения решается следующим образом:
- рисуется линия через центра окружностей;
- через центра окружностей перепендикулярно предыд. линии рисуются еще две линии;
- откладываются точки на этих линиях, одинаково лежащие от пересечения с окружностью (можно и без этого шага, но так нагляднее);
- через эти точки проводится линия пересекающая обе окружности (т.е. при ее обрезании окружностями, получается две хорды);
- строятся линии проходящие через центр окружности и середину хорды (для каждой окр.);
- точки пересечения этих линий с окружностями и есть точки касательной к обеим окружностям.

По этому алгоритму можно написать лиспик и все будет происходить в авто режиме. В лиспе можно опустить шаг, про который я сказал, что он не обязателен. Просто при проведении линии через точки пересечения перпендикуляров уже можно получить хорды, но они будут маленькие и их трудно было показать на прилагающемся рисунке.
[ATTACH]1163602143.jpg[/ATTACH]
__________________
Для ухода за пожилым программистом требуется приятная женщина, говорящая на FОRTRАN, BАSIС и С++
ki вне форума  
 
Непрочитано 15.11.2006, 17:55
#23
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,327


>ki

Всё уже давно решено самим AutoDesk'ом
См. сообщение №2 от Profan'а в этой теме
Хмурый вне форума  
 
Непрочитано 15.11.2006, 18:06
#24
Pool


 
Регистрация: 18.10.2005
Москва
Сообщений: 61
Отправить сообщение для Pool с помощью Skype™


К сплайну всё строится. Наблюдаю "обкатку" и могу зафиксировать _xline.
Но. Опять-таки, обозначаю на сплайне произвольную точку. Мои попытки провести касательную в этой точке - безуспешны. Линия на S-образном сплайне проводится ЧЕРЕЗ эту точку и по касательной к сплайну - в другом месте.
Если с окружностью, хоть и неудобно, но можно решить вопрос построением радиальной линии + перпендикуляр к ней, то как же быть со сплайном - совершенно не ясно.

.............................................Павел.
Pool вне форума  
 
Непрочитано 15.11.2006, 18:14
#25
ki

Constructor
 
Регистрация: 28.09.2005
SPb
Сообщений: 689
<phrase 1= Отправить сообщение для ki с помощью Skype™


Цитата:
Сообщение от Хмурый
>ki

Всё уже давно решено самим AutoDesk'ом
См. сообщение №2 от Profan'а в этой теме
Век живи - век учись! Гы.
Я отрезками редко пользуюсь и как-то о них не подумал. Спасибо. Ты для меня открыл еще один плюсик этой команды.
__________________
Для ухода за пожилым программистом требуется приятная женщина, говорящая на FОRTRАN, BАSIС и С++
ki вне форума  
 
Непрочитано 15.11.2006, 18:49
#26
Pool


 
Регистрация: 18.10.2005
Москва
Сообщений: 61
Отправить сообщение для Pool с помощью Skype™


Цитата:
Сообщение от ki
Привет.
Задача при помощи черчения решается следующим образом...
Чтой-то засомневался я в правильности Вашего алгоритма.
Почертил, подумал... Алгоритмик-то вышел "битый", не рабочий, не даёт он двух касательных.
Да, расстояния А равны, но, построив по ним линию, расстояния от их середин до окружностей - разные.

............................Павел.
Pool вне форума  
 
Непрочитано 15.11.2006, 19:11
#27
Pool


 
Регистрация: 18.10.2005
Москва
Сообщений: 61
Отправить сообщение для Pool с помощью Skype™


Правильный алгоритм - у nmr.
И то, вкралась опечатка.
Цитата:
Сообщение от nmr писал
...
6. Из центра О1 проводим касательную K к О2. Точка пересечения К и О3 это Т3.
Указанная линия не пересекает ОЗ.
Судя по всему,
Цитата:
Сообщение от следует читать
...
6. Из центра О1 проводим касательную K к О3. Точка пересечения К и О3 это Т3.
........................................Павел.
Pool вне форума  
 
Непрочитано 15.11.2006, 22:35
#28
Pool


 
Регистрация: 18.10.2005
Москва
Сообщений: 61
Отправить сообщение для Pool с помощью Skype™


Итак, в сухом остатке остались непонятыми два вопроса.
Есть ли возможность делать такое вообще??

1. Окружность.
Построение касательной из произвольной точки на окружности. Без построения радиальной линии.

2. Сплайн.
Построение касательной из произвольной точки на сплайне. Любым способом.

.....................................Павел.
Pool вне форума  
 
Непрочитано 16.11.2006, 03:19
#29
Vlad®

розмысл
 
Регистрация: 12.06.2005
Иркутск
Сообщений: 1,973
<phrase 1=


В Компасе есть такая кнопочка - построение касательной к 2 окружностиям. Строит 4 касательные.
[ATTACH]1163636381.gif[/ATTACH]
Vlad® вне форума  
 
Непрочитано 16.11.2006, 03:48
#30
Pool


 
Регистрация: 18.10.2005
Москва
Сообщений: 61
Отправить сообщение для Pool с помощью Skype™


Речь о другом.
Из любой точки, расположенной на кривой, можно провести единственную касательную к этой кривой.
Саму эту точку определяю и задаю я!!!

Как её построить в акаде?
По окружности - без вспомогательных линий, а в сплайне - как угодно.
Pool вне форума  
 
Непрочитано 16.11.2006, 06:21
#31
Serge Krasnikov

Конструктор, инженер-механик на пенсии
 
Регистрация: 03.10.2003
Новосибирск
Сообщений: 6,953


Экий спор возник из ничаГо
Цитата:
Сообщение от Pool
Итак, в сухом остатке остались непонятыми два вопроса.
Есть ли возможность делать такое вообще??
Дык вродебА как делают
Цитата:
1. Окружность.
Построение касательной из произвольной точки на окружности. Без построения радиальной линии.
Эта возможность была в акадах более старшего поколения. 2.62 однако не помню, а вот в 10 точно была
Цитата:
2. Сплайн.
Построение касательной из произвольной точки на сплайне. Любым способом.
Да. Ведешь отрезок из точки и на касательную к сплайну, ну или бесконечную xline

ЗЫ. Да кстати напрасно ты писал, что xline в 2002 не работает
Serge Krasnikov вне форума  
 
Непрочитано 16.11.2006, 08:25 Построение касательной к двум окружностям
#32
VPUD56

архитектор
 
Регистрация: 23.05.2005
Сообщений: 123


Может я чего не понимаю. В чем проблема.
Выбираешь рисование бесконечной линией (не отрезок) Выбираешь привязку TAN указываешь на окружность, линия вращается вокруг окружности, опять выбираешь tan и указываешь на другую окружность. Она фиксируется в единственных точках.
__________________
vpud
VPUD56 вне форума  
 
Непрочитано 16.11.2006, 08:26
#33
DEM

YngIngKllr
 
Регистрация: 29.03.2005
СПб
Сообщений: 12,968


Блин Хмурый уже все объяснил, че не понятно то. :twisted:
__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.
DEM вне форума  
 
Непрочитано 16.11.2006, 08:44 Построение касательной к двум окружностям
#34
VPUD56

архитектор
 
Регистрация: 23.05.2005
Сообщений: 123


Отрезок оказывается тоже работает. Полилиния не работает. Привязывается жестко к первой окружности.
__________________
vpud
VPUD56 вне форума  
 
Непрочитано 16.11.2006, 08:44
#35
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Цитата:
Сообщение от Pool
2. Сплайн.
Построение касательной из произвольной точки на сплайне. Любым способом.
1. Чертим произвольный сплайн.
2. Намечаем точку на нем в которой хотим построить касательную (например пересечь отрезоком)
3. Вводим команду Xline, выбираем привязку "перпендикуляр" и щелкаем по сплайну в любом месте. Прямая бегает по сплайну "нормально", вторую точку ставим на той самой точке пересечения сплайна с отрезком.
4. Вводим команду Xline, выбираем привязку "перпендикуляр" и щелкаем по уже построенному Xline в любом месте, второй раз щелкаем по нашей точке. Вот эта Xline и будет касательной к сплайну в заданной точке.
Krieger вне форума  
 
Непрочитано 16.11.2006, 09:17
#36
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,327


Вот здесь обсуждалась тема построения касательной к сплайну
http://www.autocad.ru/cgi-bin/f1/board.cgi?t=27132DG
Хмурый вне форума  
 
Непрочитано 16.11.2006, 09:28
#37
ki

Constructor
 
Регистрация: 28.09.2005
SPb
Сообщений: 689
<phrase 1= Отправить сообщение для ki с помощью Skype™


2 Pool
Алгоритм правильный. Таким образом строится одна касательная (см. рис.). А вторую касательную получаем зеркаля первую относительно центров окр. Если методом черчения надо, то нужно повторить несколько шагов для противоположной стороны.
Да и не актуально это уже. Отрезком все хорошо строится.
__________________
Для ухода за пожилым программистом требуется приятная женщина, говорящая на FОRTRАN, BАSIС и С++
ki вне форума  
 
Непрочитано 16.11.2006, 11:25
#38
Serge Krasnikov

Конструктор, инженер-механик на пенсии
 
Регистрация: 03.10.2003
Новосибирск
Сообщений: 6,953


Не не в тему
Цитата:
Сообщение от Хмурый
Вот здесь обсуждалась тема построения касательной к сплайну
http://www.autocad.ru/cgi-bin/f1/board.cgi?t=27132DG
Есть некоторая разница в ссылке обсуждается
Цитата:
Каким методом можно в Акаде построить косательную к конкретной точке на сплайне?
Покрайней мере так звучал вопрос, а сдесь касательные из точки к окружности, методы построения разные однако
Serge Krasnikov вне форума  
 
Непрочитано 16.11.2006, 13:56 Re: Построение касательной к двум окружностям
#39
Pool


 
Регистрация: 18.10.2005
Москва
Сообщений: 61
Отправить сообщение для Pool с помощью Skype™


Цитата:
Сообщение от VPUD56
Может я чего не понимаю. В чем проблема.
Выбираешь рисование бесконечной линией (не отрезок) Выбираешь привязку TAN указываешь на окружность, линия вращается вокруг окружности, опять выбираешь tan и указываешь на другую окружность. Она фиксируется в единственных точках.
Я сильно плакаль. Почти рыдал.

НУ НЕТУ НИКАКОЙ ВТОРОЙ ОКРУЖНОСТИ И ВТОРОЙ ТОЧКИ.

ЕСТЬ ТОЛЬКО ОДНА ОКРУЖНОСТЬ И ОДНА ТОЧКА НА НЕЙ.

КАК ИМЕННО В ЭТОЙ ТОЧКЕ (ИЗ ЭТОЙ ТОЧКИ) ПОСТРОИТЬ КАСАТЕЛЬНУЮ, НЕ СТРОЯ РАДИУСНУЮ ЛИНИЮ.
У меня _xline + tan к окружности и линия (любая), и тем более "обкатка" не наблюдаются. Это глюк 2002?

............................................Павел.

ЗЫ Похоже, автокад действительно подглючивает - по сплайну вчера нормаль не строились, сегодня нормаль к сплайну пошла. Вопрос касательной к сплайну снят.


Цитата:
Сообщение от Serge Krasnikov
Цитата:
Сообщение от Pool писал
1. Окружность.
Построение касательной из произвольной точки на окружности. Без построения радиальной линии.
Эта возможность была в акадах более старшего поколения. 2.62 однако не помню, а вот в 10 точно была
А сегодня? Начиная с 2002.
.
.
Pool вне форума  
 
Непрочитано 16.11.2006, 16:10
#40
Syrex


 
Регистрация: 16.05.2006
Сообщений: 31


Всем здрасти! почитал все что вы тут пишите и не увидел реализацию данной задачи через LISP, я просто щас пытаюсь изучить LISP и неплохобы увидеть пример реализации лисп программы , если можно конечно, заранее спасибо.
ЗЫ: в MDT есть прям такая команда "прямая по касательной к двум окружностями" и чертится в спецслое AM_CL, кроме этого там еще много вспомогательных прямых.
Syrex вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Построение касательной к двум окружностям

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск