| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
25.05.2012, 11:10 | #1 | |
Как найти экстремум эллипса в автокаде?
Регистрация: 25.05.2012
Сообщений: 1
|
||
Просмотров: 6957
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833
|
Перемещено в раздел AutoCAD
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Переведем на русский "акадовский" язык: Надо провести касательную к эллипсу, тангенс которой (в некоторых точках эллипса) равен 0. И для этого нужна "команда". Понятие "наклонный" эллипс существует только в голове уважаемой всеми Юлия Борисовне.
Для господина gomer- это не вопрос. Вопрос в том, кому это нужно?
__________________
С уважением sbi Последний раз редактировалось sbi, 30.05.2012 в 07:46. Причина: Чтоб не быть Эзопом в ветке |
||||
|
||||
Регистрация: 17.03.2009
Сообщений: 316
|
Я привык мыслить трехмерными автокадовскими приёмами. Идея в том, чтобы сделать эллиптический цилиндр и посмотреть на его габариты сбоку.
1. Собственно эллипс. Показываю сразу в изометрической проекции 2. Вытягиваю _extrude на произвольную высоту 3. Переключаюсь в вид слева, вижу 3d solid 4. Выполняю команду flatshot. Возвращаюсь в изометрический вид. Вот она моя проекция — это прямоугольник. Провожу прямую вдоль оси X через край прямоугольника. Вот она и есть касательная к крайней точке эллипса. Ву а ля. Кстати метод работает не только для эллипса, а вообще для любой фигуры! Возьму на вооружение. __________________ Блин! Написал сообщение, а всё ещё проще, просто элементарно. Не надо никаких солидов. 1. Рисуем эллипс в виде Top 2. Переходим в вид Left. Видим не эллипс, а отрезок. 3. Команда _point. Подкрадываемся курсором справа к правому краю "отрезка-эллипса" пока не выскочит привязка nearest (должна быть включена, разумеется), ставлю точку. Вот он максимум! И зае..сь. __________________ Однако в первом методе точность гарантирована, а во втором случае, я не совсем уверен, что он правильно возьмет ближайшую точку. На глаз, при большом увеличении если посмотреть — вроде касательная. Но чёрт её знает, недолюбливаю я nearest. Последний раз редактировалось fasadel, 30.05.2012 в 15:25. Причина: Ещё проще метод |
|||
|
||||
Экстремум (лат. extremum — крайний) в математике — максимальное или минимальное значение функции на заданном множестве.
Если при этом в некоторой окрестности точки x0 производная f'(x) слева от x0 положительна, а справа отрицательна, то f (x) имеет в x0 максимум; если f'(x)слева от x0 отрицательна, а справа положительна, то — минимум. Функция эллипса непрерывна и при условии, что центр и его оси совпадают с началом координат и осями X, Y экстремум находится очень просто. Другими словами, касательная в точках перегиба параллельна оси Х. «Наклонный» эллипс по моему пониманию это такой эллипс ,оси которого не совпадают с осями X, Y координат и повернуты относительно их на некоторый угол. fasadel
__________________
С уважением sbi |
||||
|
||||
Регистрация: 30.05.2012
Сообщений: 97
|
Решение основано на свойствах сопряженных диаметров эллипса. Если не вдаваться в теорию, то решение таково (см.рис.):
1. Проводим параллельно оси X два пересекающих эллипс отрезка и обрезаем их по эллипсу. Получаем две параллельные хорды эллипса (синие). 2. Через середины этих хорд проводим отрезок (фиолетовый) и удлиняем его до границ эллипса. Получаем один из диаметров эллипса. 3. Концы этого диаметра - суть искомые максимум и минимум (наивысшая и наинизшая точки данного эллипса). Аналогично можно построить левую и правую точки, только хорды надо строить параллельно оси Y. |
|||
|
||||
Регистрация: 17.03.2009
Сообщений: 316
|
Мне кажется, такое (здоровское на самом деле) построение проще всего доказать таким образом. Берем окружность делаем аналогичные построения отрезков, а затем используем преобразование растяжения и сдвига. Получается эллипс. Верхний полукруг окружности описывается формулой
y = sqrt (R*R - x*x). Преобразование его в эллипс является линейным: x1 = x - s*y y1 = m*y где m и s - некоторые коэффициенты. Короче, если найти максимум эллипса после замены переменных, то он совпадет с образом верхнего конца сиреневого отрезка. Проверил! Последний раз редактировалось fasadel, 30.05.2012 в 20:09. |
|||
|
||||
mechanic engineer Регистрация: 18.12.2007
Ukraine
Сообщений: 424
|
Цитата:
Кроме этого, в версиях ACAD, начиная с 2010г. есть параметрика. И все это делается до невозможности просто. Эллипс, отрезок, параллельный, например 0Х, параметризация: касание...
__________________
One thing I can tell you is you got to be free... (John) |
|||
|
||||
Цитата:
Что, конечно, трудно.
__________________
С уважением sbi |
||||
|
||||
Регистрация: 29.10.2004
СПб
Сообщений: 16,336
|
1. превращаем эллипс в область командой _region
2. применяем к области команду _massprop 3. по точкам описанного прямоугольника (Bounding box: ) строим его командой _rectang Последний раз редактировалось Хмурый, 31.05.2012 в 16:43. Причина: очепятка |
|||
|
||||
Регистрация: 29.10.2004
СПб
Сообщений: 16,336
|
программа- это хорошо. мои рецепты, как правило, основываются на использовании штатных средств AutoCAD'а без программирования.
PS зная подоплёку программу написать несложно, но, на каждый чих создавать программу считаю слишком расточительным. Последний раз редактировалось Хмурый, 01.06.2012 в 08:05. |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Коэффициент теплопроводности ж/б плиты, где найти? | eugenmax | Железобетонные конструкции | 24 | 15.12.2020 19:36 |
Как найти главную ось в составном сечении, если соединены материалы с разным E? | parabellum762 | Конструкции зданий и сооружений | 37 | 10.06.2020 14:02 |
помогите найти чертежи в автокаде сегментной фермы 24 м с фонарем, желательно по серии пк-01-129/68, но можно и другой серии) | нага | Поиск литературы, чертежей, моделей и прочих материалов | 0 | 26.05.2011 09:38 |
VBA в 2010 автокаде не дожидается завершения предыдущей команды | NomadV | Программирование | 2 | 13.11.2009 22:30 |