|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Привет.
Задача при помощи черчения решается следующим образом: - рисуется линия через центра окружностей; - через центра окружностей перепендикулярно предыд. линии рисуются еще две линии; - откладываются точки на этих линиях, одинаково лежащие от пересечения с окружностью (можно и без этого шага, но так нагляднее); - через эти точки проводится линия пересекающая обе окружности (т.е. при ее обрезании окружностями, получается две хорды); - строятся линии проходящие через центр окружности и середину хорды (для каждой окр.); - точки пересечения этих линий с окружностями и есть точки касательной к обеим окружностям. По этому алгоритму можно написать лиспик и все будет происходить в авто режиме. В лиспе можно опустить шаг, про который я сказал, что он не обязателен. Просто при проведении линии через точки пересечения перпендикуляров уже можно получить хорды, но они будут маленькие и их трудно было показать на прилагающемся рисунке. [ATTACH]1163602143.jpg[/ATTACH]
__________________
Для ухода за пожилым программистом требуется приятная женщина, говорящая на FОRTRАN, BАSIС и С++ |
||||
|
||||
К сплайну всё строится. Наблюдаю "обкатку" и могу зафиксировать _xline.
Но. Опять-таки, обозначаю на сплайне произвольную точку. Мои попытки провести касательную в этой точке - безуспешны. Линия на S-образном сплайне проводится ЧЕРЕЗ эту точку и по касательной к сплайну - в другом месте. Если с окружностью, хоть и неудобно, но можно решить вопрос построением радиальной линии + перпендикуляр к ней, то как же быть со сплайном - совершенно не ясно. .............................................Павел. |
||||
|
||||
Цитата:
Я отрезками редко пользуюсь и как-то о них не подумал. Спасибо. Ты для меня открыл еще один плюсик этой команды.
__________________
Для ухода за пожилым программистом требуется приятная женщина, говорящая на FОRTRАN, BАSIС и С++ |
||||
|
||||
Цитата:
Почертил, подумал... Алгоритмик-то вышел "битый", не рабочий, не даёт он двух касательных. Да, расстояния А равны, но, построив по ним линию, расстояния от их середин до окружностей - разные. ............................Павел. |
||||
|
||||
Правильный алгоритм - у nmr.
И то, вкралась опечатка. Цитата:
Судя по всему, Цитата:
|
||||
|
||||
Итак, в сухом остатке остались непонятыми два вопроса.
Есть ли возможность делать такое вообще?? 1. Окружность. Построение касательной из произвольной точки на окружности. Без построения радиальной линии. 2. Сплайн. Построение касательной из произвольной точки на сплайне. Любым способом. .....................................Павел. |
||||
|
||||
Речь о другом.
Из любой точки, расположенной на кривой, можно провести единственную касательную к этой кривой. Саму эту точку определяю и задаю я!!! Как её построить в акаде? По окружности - без вспомогательных линий, а в сплайне - как угодно. |
||||
|
||||
Конструктор, инженер-механик на пенсии Регистрация: 03.10.2003
Новосибирск
Сообщений: 6,953
|
Экий спор возник из ничаГо
Цитата:
Цитата:
Цитата:
ЗЫ. Да кстати напрасно ты писал, что xline в 2002 не работает |
|||
|
||||
архитектор Регистрация: 23.05.2005
Сообщений: 123
|
Может я чего не понимаю. В чем проблема.
Выбираешь рисование бесконечной линией (не отрезок) Выбираешь привязку TAN указываешь на окружность, линия вращается вокруг окружности, опять выбираешь tan и указываешь на другую окружность. Она фиксируется в единственных точках.
__________________
vpud |
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825
|
Цитата:
2. Намечаем точку на нем в которой хотим построить касательную (например пересечь отрезоком) 3. Вводим команду Xline, выбираем привязку "перпендикуляр" и щелкаем по сплайну в любом месте. Прямая бегает по сплайну "нормально", вторую точку ставим на той самой точке пересечения сплайна с отрезком. 4. Вводим команду Xline, выбираем привязку "перпендикуляр" и щелкаем по уже построенному Xline в любом месте, второй раз щелкаем по нашей точке. Вот эта Xline и будет касательной к сплайну в заданной точке. |
|||
|
||||
Регистрация: 29.10.2004
СПб
Сообщений: 16,327
|
Вот здесь обсуждалась тема построения касательной к сплайну
http://www.autocad.ru/cgi-bin/f1/board.cgi?t=27132DG |
|||
|
||||
2 Pool
Алгоритм правильный. Таким образом строится одна касательная (см. рис.). А вторую касательную получаем зеркаля первую относительно центров окр. Если методом черчения надо, то нужно повторить несколько шагов для противоположной стороны. Да и не актуально это уже. Отрезком все хорошо строится.
__________________
Для ухода за пожилым программистом требуется приятная женщина, говорящая на FОRTRАN, BАSIС и С++ |
||||
|
||||
Конструктор, инженер-механик на пенсии Регистрация: 03.10.2003
Новосибирск
Сообщений: 6,953
|
Не не в тему
Цитата:
Цитата:
|
|||
|
||||
Цитата:
НУ НЕТУ НИКАКОЙ ВТОРОЙ ОКРУЖНОСТИ И ВТОРОЙ ТОЧКИ. ЕСТЬ ТОЛЬКО ОДНА ОКРУЖНОСТЬ И ОДНА ТОЧКА НА НЕЙ. КАК ИМЕННО В ЭТОЙ ТОЧКЕ (ИЗ ЭТОЙ ТОЧКИ) ПОСТРОИТЬ КАСАТЕЛЬНУЮ, НЕ СТРОЯ РАДИУСНУЮ ЛИНИЮ. У меня _xline + tan к окружности и линия (любая), и тем более "обкатка" не наблюдаются. Это глюк 2002? ............................................Павел. ЗЫ Похоже, автокад действительно подглючивает - по сплайну вчера нормаль не строились, сегодня нормаль к сплайну пошла. Вопрос касательной к сплайну снят. Цитата:
. . |
||||
|
||||
Регистрация: 16.05.2006
Сообщений: 31
|
Всем здрасти! почитал все что вы тут пишите и не увидел реализацию данной задачи через LISP, я просто щас пытаюсь изучить LISP и неплохобы увидеть пример реализации лисп программы , если можно конечно, заранее спасибо.
ЗЫ: в MDT есть прям такая команда "прямая по касательной к двум окружностями" и чертится в спецслое AM_CL, кроме этого там еще много вспомогательных прямых. |
|||