| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
18.08.2017, 00:41 | #1 | |
Изменение/доработка макроса отрисовки охранных зон
ПенсионЭр
Регистрация: 26.06.2009
Сообщений: 359
|
||
Просмотров: 3852
|
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
|
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
|
|||
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 359
|
trir, ГИС мы не используем. У нас только автокад. Спасибо за инфу про ГИС.
Где бы мне найти инфу про команду LENGTHEN? Какие она имеет параметры? Мне хочется "докрутить" макрос до ума, хотя бы первый вариант. Там, по логике, всего ничего - удлинить каждую полилинию (obj1 и obj2), возникшую после оффсета, на величину, равную тому же оффсету. У меня пока не получается: "грамоте (автолиспа) не обучен" Прошу помощи. __________________ p.s. Вопрос: почему макрос ZZ.lsp "не берёт" эту линию (файл приложен)? Что нужно сделать? Спасибо. Последний раз редактировалось MrBrown, 18.08.2017 в 15:49. |
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
недавно подобное реализовывал на HLSL
https://ru.wikipedia.org/wiki/%D0%90...BD%D0%B8%D0%B5 http://jcgt.org/published/0002/02/08/paper.pdf http://www.danielkoitzsch.de/blog/20...nes-in-opengl/ |
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
command вообще не стоит использовать, рассчитай контур и сделай его через entmake
в системе координат сегмента координаты буфера постоянны: смещение, 0; смещение, длина; -смещение, длина; -смещение, 0; нужно только перевести эти координаты в МСК и мы получим буферы для каждого сегмента. А вот как состыковать эти сегменты - отдельная интересная тема Последний раз редактировалось trir, 19.08.2017 в 10:44. |
|||
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 359
|
trir, о, если б я умел!
Сижу часами, анализирую код, ищу по инету аналоги. Вот "догнал" своим мозгом то, что выложил. Теперь буду пытаться сделать второй вариант охранной зоны - с закруглениями. p.s. совет типа "учи основы автолиспа" не проходит: уже пытался, увы. p.p.s кстати, гляну, что же такое "entmake", авось пригодится когда. ----- добавлено через ~22 мин. ----- trir, функция entmake создаёт новый примитив. А мне-то зачем? Ведь нужные примитивы уже созданы. Их надо было только растянуть, что я и сделал. |
|||
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 359
|
Вопрос к мастерам автолиспа: почему приложенный макрос ZZM.lsp не отрисовывает охранную зону вокруг этой полилинии (файл приложен)?
Ком. строка сообщает, что примитив не выбран. Как доработать макрос? Спасибо. Последний раз редактировалось MrBrown, 19.08.2017 в 12:17. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Тогда entmod
----- добавлено через ~1 мин. ----- См. DXF Reference и параметры ssget. Ты зачем требуешь, что полилиния должна быть незамкнутой?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 359
|
Кулик Алексей aka kpblc, Почитал про entmod. Делает то же, что и entmake, кроме того модифицирует.
Но почему эта функция лучше command? Где кроется подвох в моём коде? Это первое. А второе я совсем не понял, прошу извинить. "Ты зачем требуешь, что полилиния должна быть незамкнутой?" - я ничего не требую. То есть, даже не подозреваю, что в коде макроса что-то там требуется. Объясни, пожалуйста, какую строчку нужно исправить. Или подбрось мне ссылку, чтобы я мог сам разобраться. Желательно на русском. ----- добавлено через ~6 мин. ----- Кажется, нашел строчку: Код:
----- добавлено через ~13 мин. ----- Так работает: Код:
И заработало. Признаюсь: удалил интуитивно, по образу и подобию другого макроса. Буду разбираться. Последний раз редактировалось MrBrown, 19.08.2017 в 15:15. |
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
Цитата:
Цитата:
Цитата:
|
|||
|
||||
Цитата:
, офсет, взорвать
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
По-моему, entmod только модифицирует, создать она не в силах. Но, может быть, и ошибаюсь.
Потому что, во-первых, грабли. А, во-вторых, без некоторых танцев с бубном ты не можешь отследить, корректно у тебя отработала command или нет. Один из альтернативных вариантов я расписывал здесь: http://autolisp.ru/2017/07/22/vl-cmd...ye-znacheniya/ А лучше всего прочитать, что такое фильтры ssget, и посмотреть DXF-коды полилиний в DXF Reference.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Варианты планировок жилых высотных зданий | Fear888 | Поиск литературы, чертежей, моделей и прочих материалов | 0 | 22.03.2013 08:53 |
варианты конструкции противопожарного перекрытия 1-го типа REI150 | Stierlitz | Прочее. Архитектура и строительство | 20 | 17.09.2012 17:28 |
Варианты фундаментов | Ивасик | Основания и фундаменты | 4 | 11.05.2010 14:55 |
Варианты проектов подстанций | FRAER | Поиск литературы, чертежей, моделей и прочих материалов | 0 | 23.12.2009 11:02 |
Эстакада - варианты изготовления опор | Xenser2 | Конструкции зданий и сооружений | 9 | 01.05.2009 14:40 |