|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Как сделать прямоугольник из отрезка?
Регистрация: 20.03.2012
Сообщений: 842
|
||
Просмотров: 16558
|
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Правильнее наверное эту тему наверное в Программирование...
Без проверки, на вскидку. Код:
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... Последний раз редактировалось Alan, 13.02.2014 в 19:36. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Я не оформлял это программой/командой. После загрузки текста выполняется построение прямоугольников по отрезкам.
Оформить командой?
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Оформил как команду.
1. Загрузи приложенный текст 2. Набери в комстроке nz_restang для выполнения Прямоугольники НЕ строятся по отрезкам в слое 0 и с буквами в начале имени
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
_.xline отменили?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Offtop: Если не ошибаюсь, где-то она фигурировала как "Конструктивная линия".
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 02.01.2021
Сообщений: 2
|
Коллеги, здравствуйте. Извините, что поднимаю старую тему, но нет желания плодить новые. Подскажите. В коде, который тут приведен, неизвестная сторона прямоугольника берется из названия слоя. Так как я не владею навыками программирования, то подскажите, как мне жёстко задать размер той стороны, вместо того, что она берёз значение из названия слоя? Подскажите хотя бы какая это строка в коде. Буду очень благодарен за помощь.
|
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Цитата:
Код:
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
Регистрация: 26.02.2019
Сообщений: 49
|
|
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Цитата:
Достаточно добавить анализ угла между точками начала и конца отрезка - смотри строки 58, 88 и 89. И поворачивать в случае необходимости Код:
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... Последний раз редактировалось Alan, 12.04.2021 в 17:43. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Выделение (да и вообще любое форматирование) внутри Lisp-кода здесь не работает. Лучше уж номера строк укажи )))
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Привет. А в предпросмотре работало. Сейчас подправлю
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
Регистрация: 26.02.2019
Сообщений: 49
|
Я может чего то не понимаю, но созданный прямоугольник не поворачивается. Возможно я не совсем правильно описал задачу. Суть в том что все линии в моем случае в основном либо под 180 либо под 90 градусов. Но вот конечные прямоугольники из них надо повернуть строго на 90 если конечно линия уже не горизонтальная. Извиняюсь за сумбур, просто не пойму как это решить.
----- добавлено через ~1 мин. ----- Еще есть такой момент, при выполнении лиспа почему то сбрасываются все настроенные привязки... Этого можно как то избежать? |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Да, с этим у тебя наверное проблема
Цитата:
Нарисуй несколько (3-4) линий, построй вручную прямоугольники и приложи к посту. Цитата:
Запомнил: (setq osmd (getvar "osmode")) Вернул: (setvar "osmode" osmd)
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... Последний раз редактировалось Alan, 13.04.2021 в 11:24. |
|||
![]() |
|
||||
Регистрация: 26.02.2019
Сообщений: 49
|
Цитата:
П.С. привязки больше не сбрасывает вроде |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Чертеж, который прислал, использовал как постановку задачи. В нём куча мусора, много слоёв и примитивов, на выключенных слоях, сумашедшие координаты и т.д.. Не стал чистить и т.п.
На новом чертеже вычертил 4 отрезка (они красного цвета). Применил программку. Результат прикладываю
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
А с какого перепугу результат должен быть повернут? Поворачивай исходные данные, и дальше уже строй что надо. И, Alan, зачем так сложно? Можно же и без таких мучений обойтись
![]() Как вариант (особо не тестировал): Код:
Только сейчас сообразил - можно и без vl-remove-if обойтись ![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 26.02.2019
Сообщений: 49
|
Цитата:
П.С. На счет поворота это просто попытка решения одной специфической задачи. Последний раз редактировалось aafeoktistov, 14.04.2021 в 12:38. |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Ну у тебя даже ночью ВСЁ просто!!!
![]() А я по стариковски... ----- добавлено через ~57 мин. ----- Ты же не показал результат, который получается, а прислал хотелку. Я сразу не разобрался, пришлось Алексея aka kpblc будить, ![]() У тебя прямоугольник отскакивает вдаль... потому что у тебя назначена ПСК. Если перевести в Мировую (_UCS), то всё работает с моим опубликованным ЛИСПом. Вариант для ПСК я подправлю и выложу. P.S. Алексей, извини. Не стал копаться с исправлениями текста, просто добавил пару строк переназначения _UCS , если пользовательская Подправленный текст: Код:
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... Последний раз редактировалось Alan, 14.04.2021 в 18:13. |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Конечно так красиво ка Алексей я не напишу. Но по его примеру я избавился от командных методов.
А также добавил, что повернутый прямоугольник всегда рисуется от нижнего конца отрезка вправо. См.картинку. Если надо могу дать откорректированный ЛИСП. Или предыдущее решение устраивает?
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... Последний раз редактировалось Alan, 15.04.2021 в 19:46. |
|||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сделать узел вращения? | remenikomer | Машиностроение | 28 | 25.07.2011 11:39 |
Как сделать курсив GOST Type A (или B) в размерных выносках? | igor_skor | AutoCAD | 5 | 22.01.2011 11:42 |
Нужно сделать чтобы ISOLINES цилиндра не совпадали с диагоналями прямоугольника | Gepar | AutoCAD | 2 | 09.11.2010 21:15 |
Как сделать одной из граней SOLID поверхность Polygon mesh | kukuikar | AutoCAD | 1 | 16.05.2007 07:58 |