|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Помогите вписать неправильную фигуру в прямоугольник
Регистрация: 17.08.2021
Сообщений: 2
|
||
Просмотров: 3489
|
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,170
|
Цитата:
Другой вопрос - чем это Вам поможет. Без примера чертежа трудно говорить о чем-либо. |
|||
![]() |
|
||||
Регистрация: 17.08.2021
Сообщений: 2
|
Цитата:
Нарисовал фигуру сплайнами, далее нужно задать ее габаритные размеры с высокой точностью. На некоторых фигурах срабатывает привязка к квадрантам, строю вспомогательный прямоугольник по квадрантам и масштабирую обе фигуры по опорным отрезкам прямоугольника |
|||
![]() |
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,170
|
Цитата:
Если обстоятельства/инструкции/убеждения не позволяют выложить пример чертежа - то Вам помогут только телепаты. Они общаются на другом форуме: https://4pda.to/forum/index.php?showtopic=589572 Единственное, что еще могу подсказать навскидку. Если нужно смасштабировать фигуру с разными коэф. по пазным осям, ее надо загнать в блок (_block), затем в свойствах блока выставить нужные масштабные коэф. (например, 1 по X, 2.876 по Y), после чего блок подорвать. О каких квадрантах идет речь при работе со сплайнами - непонятно. В Акаде такие точки заданы только для окружностей, эллипсов и их дуг. |
|||
![]() |
|
||||
пенсионер Регистрация: 09.04.2018
Украина
Сообщений: 2,308
|
Для сплайнов работает только привязка к ближайшей и конечной точке, понятие квадранта у них отсутствует, привязка по касательной с ними не работает. Вообще сплайны своеобразные объекты, всегда старался их не использовать, ввиду их непредсказуемости (или непонимания возможностей).
Командой типа "показать все" можно вписать фигуру в экран по "меньшему" размеру, как программа находит граничные точки - ??. Последний раз редактировалось Бим, 20.08.2021 в 18:28. |
|||
![]() |
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,170
|
Цитата:
Лечение по фотографии, конечно, несколько эффективнее лечения по описанию. Но все же это только лечение по фотографии. Нужен пример DWG, неужели не понятно. ps Скачал лисп, намалевал сплайном фигуру, примерно похожую на ту, что на картинке. Запустил лисп, все работает, но по каким-то причинам граничный прямоугольник несколько отступал от фигуры. Преобразовал сплайн в полилинию (опция стандартной команды редактирования сплайна) с максимально возможной точностью (99), и все построилось как надо. PPS Странно, у меня все работает (2010) Последний раз редактировалось kp+, 22.08.2021 в 12:28. |
|||
![]() |
|
||||
Регистрация: 24.08.2023
Сообщений: 3
|
Всем доброго времени суток. Помогите нубу. Не могу понять как вызвать команду автолиспа из ссылки в третьем посту. Создал файл в блокноте, скопировал в него код, сохранил с расширением .lsp загрузил в автокаде, а дальше что - не понимаю, или нужно еще чего скачать?
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 24.08.2023
Сообщений: 3
|
[quote=Кулик Алексей aka kpblc;2045698]https://dwg.ru/pub/9[/Q
Спасибо. Создал файл, загрузил в автокаде, как запустить функцию не совсем понимаю. Вот код: ;; Selection Set Bounding Box - Lee Mac ;; Returns a list of the lower-left and upper-right WCS coordinates of a ;; rectangular frame bounding all objects in a supplied selection set. ;; sel - [sel] Selection set for which to return bounding box (defun LM:ssboundingbox ( sel / idx llp ls1 ls2 obj urp ) (repeat (setq idx (sslength sel)) (setq obj (vlax-ename->vla-object (ssname sel (setq idx (1- idx))))) (if (and (vlax-method-applicable-p obj 'getboundingbox) (not (vl-catch-all-error-p (vl-catch-all-apply 'vla-getboundingbox (list obj 'llp 'urp)))) ) (setq ls1 (cons (vlax-safearray->list llp) ls1) ls2 (cons (vlax-safearray->list urp) ls2) ) ) ) (if (and ls1 ls2) (mapcar '(lambda ( a b ) (apply 'mapcar (cons a b))) '(min max) (list ls1 ls2)) ) ) |
|||
![]() |
|
||||
Регистрация: 24.08.2023
Сообщений: 3
|
Цитата:
|
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите с макросом для лиспа ATTSS | Куинбус Флестрин | LISP | 0 | 01.04.2017 22:46 |
Помогите разобраться. При внесении расширенных данных в прямоугольник он (прямоугольник) искажается. | AlexZh | LISP | 10 | 01.03.2017 08:15 |
Помогите определить условные обозначения на плане помещения | VictorStar | Организация проектирования и оформление документации | 9 | 21.07.2016 19:34 |
Помогите с пояснительной запиской по разделам ГСВ, ВК, ОВ, как сделать у кого есть пример помогите | Shamilchik | Поиск литературы, чертежей, моделей и прочих материалов | 2 | 11.07.2015 20:04 |
Помогите посчитать 3D площадь | Ditrih24 | AutoCAD | 4 | 26.06.2015 20:03 |