| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > Lisp классификатор слоёв Autocad

Lisp классификатор слоёв Autocad

Ответ
Поиск в этой теме
Непрочитано 17.09.2021, 11:50 #1
Lisp классификатор слоёв Autocad
[MTL]
 
Санкт-Петербург
Регистрация: 09.01.2018
Сообщений: 30

Добрый день, граждане
Тема для тех, кто работает в Autocad и активно пользуется слоями при проектировании.
Проблема: вам нужно быстро создать новый слой, но продумывать толщину линий, назначать цвета, придумывать название, или вспоминать(искать) как это было раньше - совершенно нет времени. Если в вашей организации методика задания слоёв регламентирована, нужно открывать инструкцию и искать как всё это назначить. Тоже особо неохота. Бывает когда несколько человек работают над одним чертежом, логика задания слоёв и вариантов названий это 10^n, где n - количество человек. Хаос. Вам сюда.
Во вложении классификатор слоёв и, для примера, база данных слоёв. Работает следующим образом:
1. Загружаете лисп-приложение "Layer_v.4.2.LSP" в Autocad. Сохраняете на компьютере базу данных "Слои_v.0.0.xlsx"
2. Пишете в командной строке "ССЛ" русские буквы. Enter
3. Выбираете объект, которому необходимо назначить слой. Enter.
4. Выбираете место куда вы сохранили "Слои_v.0.0.xlsx". Открыть.
5. Появляется индикатор процесса чтения, затем окно "Определение слоя".
6. Раскрываете выпадающий список "Наименование группы:". Выбираете к чему относиться ваш объект. Выбрали. Затем вкладку "Тип", далее "Назначение" и в конце "Статус". Потом ОК. Всё, объект на слое.
Программа запоминает путь к базе после первого вызова. Можно пользоваться несколькими базами. Нажимаете "Изменить...", меняете путь.
Кнопка "Сбросить" применяется, когда вы в процессе выбора передумали и решили вернуться в начало.
База слоёв выложена только для примера, вы можете дописать своё или удалить лишнее. Переназначить как угодно. Добавляйте/удаляйте строки, только не меняйте расположение колонок.
У программы есть ограничения:
1. Lisp открывает и закрывает Excel автоматически, поэтому будьте внимательны. Если в это время Excel уже открыт, программа будет пытаться закрыть открытый документ Excel.
2. Сейчас используется три типа линий "continuous" (сплошная), "center" (штрихпунктирная), и "hidden" (штриховая). Если вам нужны другие типы, боюсь не сработает. Сделать программу для всех вариантов не могу - знаний не хватает. Мне хватает этого.
3. Перед печатью документа, проверьте стиль печати слоёв. По умолчанию "Normal". Если вам нужен другой назначьте вручную. Кто пользуется слоями и стилями, понимает о чём я.

PS: С Autodesk не связан. Проверить работу на всех версиях Autocad всех версий операционных систем - не могу. Если у вас не работает, есть предложения или замечания - пишите. Всё. Пока.

Вложения
Тип файла: lsp Layer_v.4.2.LSP (25.5 Кб, 117 просмотров)
Тип файла: xlsx Слои_v.0.0.xlsx (26.2 Кб, 135 просмотров)

Просмотров: 9222
 
Непрочитано 17.09.2021, 12:03
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


_checkstandards уже не прокатывает от слова совсем?

----- добавлено через ~6 мин. -----
В английской версии не сработает. Цветозависимая печать идет лесом. Реакции контролов диалога писать впрямую текстом - так себе идея.
И самый главный вопрос - что делать тем, кому не повезло заиметь на рабочем месте Excel или Excel старой версии?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 17.09.2021, 12:38
#3
[MTL]


 
Регистрация: 09.01.2018
Санкт-Петербург
Сообщений: 30


Цитата:
_checkstandards уже не прокатывает от слова совсем?
Цитата:
Реакции контролов диалога писать впрямую текстом - так себе идея.
Не стреляйте в пианиста, он играет как умеет

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
И самый главный вопрос - что делать тем, кому не повезло заиметь на рабочем месте Excel или Excel старой версии?
Закрытые оборонные НИИ? Проектировщики в основном пользуются. Ну нет так нет. Алексей, предложите на ваш взгляд лучший вариант.
[MTL] вне форума  
 
Непрочитано 17.09.2021, 12:43
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Я бы, во-первых, попробовал штатные средства. Может, они окажутся более вменяемыми и более предсказуемыми.
Во-вторых, на форуме были функции по загрузке штатных типов линий.
В-третьих, создать callback-функцию, которую и использовать для обработки диалога.
Четвертое. Не стоит лезьть в печать, особенно если об этом не просят.
Пятое. Базу можно хранить в том же csv, который уже прочитается где угодно.
Offtop: Лично я очень не люблю стилезависимую печать, поскольку предсказать, как будет выглядеть чертеж даже приблизительно весьма затруднительно. Но это мои предпочтения.
Цитата:
Сообщение от [MTL
;1958766]Закрытые оборонные НИИ?
У меня на сегодняшней работе (а это ни разу не оборонка) Excel снесен у всех пользователей, за исключением особо избранных. Ну или особо наглых и ушлых типа меня
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.09.2021, 13:07
#5
kacugu

начинающий инженер-гидротехник
 
Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 893


Offtop:
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Excel снесен у всех пользователей
Чем заменили, если не секрет)?
kacugu вне форума  
 
Непрочитано 17.09.2021, 13:11
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Offtop: Гуглотаблицами.

----- добавлено через ~1 мин. -----
Я ошибся - код в английской (чисто теоретически) сработать должен. Но проверить не могу.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 17.09.2021, 13:32
#7
[MTL]


 
Регистрация: 09.01.2018
Санкт-Петербург
Сообщений: 30


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Я бы, во-первых, попробовал штатные средства. Может, они окажутся более вменяемыми и более предсказуемыми.
Во-вторых, на форуме были функции по загрузке штатных типов линий.
В-третьих, создать callback-функцию, которую и использовать для обработки диалога.
Четвертое. Не стоит лезьть в печать, особенно если об этом не просят.
Пятое. Базу можно хранить в том же csv, который уже прочитается где угодно.
Спасибо. Подумаю. Честно говоря столько времени потратил на неё, что уже подташнивает.
[MTL] вне форума  
 
Непрочитано 17.09.2021, 13:44
1 | #8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


По поводу callback мне в свое время подказал А.Ривилис, я даже статейку нарисовал: https://autolisp.ru/2015/02/05/dcl-develop/
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.09.2021, 15:23
#9
румата


 
Регистрация: 06.04.2015
Сообщений: 2,673


Цитата:
Сообщение от [MTL
Хаос.
Может проще предопределенный набор слоев хранить в файле шаблона чертежа (тот который .dwt) нежели пользовать такой многодельный механизм, да еще и через эксцель?
румата вне форума  
 
Автор темы   Непрочитано 17.09.2021, 15:28
#10
[MTL]


 
Регистрация: 09.01.2018
Санкт-Петербург
Сообщений: 30


Цитата:
Сообщение от румата Посмотреть сообщение
Может проще предопределенный набор слоев хранить в файле шаблона чертежа (тот который .dwt) нежели пользовать такой многодельный механизм, да еще и через эксцель?
После чистки чертежа всё что не используется пропадает. Открывать искать?
[MTL] вне форума  
 
Непрочитано 17.09.2021, 17:15
#11
румата


 
Регистрация: 06.04.2015
Сообщений: 2,673


Цитата:
Сообщение от [MTL
;1958821]После чистки чертежа всё что не используется пропадает. Открывать искать?
Нет. Шаблон остается не тронутым после чистки. Просто шаблону нужно создавать новые чертежи, которые потом чистятся при необходимости.
https://knowledge.autodesk.com/ru/su...1C688-htm.html
румата вне форума  
 
Автор темы   Непрочитано 17.09.2021, 18:12
#12
[MTL]


 
Регистрация: 09.01.2018
Санкт-Петербург
Сообщений: 30


Цитата:
Сообщение от румата Посмотреть сообщение
Просто шаблону нужно создавать новые чертежи
Перед вами уже готовый чертёж, созданный Ивановым И.И. Он уже почищен и создан неизвестно по какому шаблону. Ваша задача быстро разобраться.
Кроме того, база слоёв может быть большой. В примере >300шт. Названия могут быть непонятными, подчас даже нелепыми. В редакторе слоёв Автокада может быть непонятно, что это. Даже перелистать такое глаза разбегаются.
Но вообще в чём-то вы правы. Каждый работает как ему удобно. Надо считать клики мышки. Если бы проблема действительно стояла остро, Autodesk решил бы.
[MTL] вне форума  
 
Непрочитано 17.09.2021, 21:08
#13
LenidSN


 
Регистрация: 24.01.2018
Сообщений: 62


Цитата:
Сообщение от [MTL
;1958866]Перед вами уже готовый чертёж, созданный Ивановым И.И. Он уже почищен и создан неизвестно по какому шаблону. Ваша задача быстро разобраться.
Вот пусть Иванов И.И. и разбирается...

[MTL] , вы уходите от темы. Зачем нужна ваша программа, если проблема решается средствами AutoCAD?
Румата абсолютно прав, ничего не стоит после чистки рабочего чертежа восстановить свой набор слоев с помощью команды _adcenter.
Просто постарайтесь убедить публику, что есть резон использовать (так или иначе) Отдельную Краснознаменную базу слоев, а не файл-шаблон в этими слоями.
LenidSN вне форума  
 
Непрочитано 18.09.2021, 05:59
#14
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


На самом деле было бы интересно нечто подобное. Но данная программа лишь помогает выбрать слой, а нужно его создавать по определенным правилам. dcl с несколькими окошками, где и выбираешь блоки наименования слоя, а уж слой генерируется (или выбирается, если такой уже есть) автоматом. В идеале, чтобы эти окна могли висеть постоянно и заменили стандартный выбор слоев.
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 18.09.2021, 10:59
#15
румата


 
Регистрация: 06.04.2015
Сообщений: 2,673


Цитата:
Сообщение от Krieger Посмотреть сообщение
В идеале, чтобы эти окна могли висеть постоянно и заменили стандартный выбор слоев.
В идеале, для каждого специалиста нужно создать свою инструментальную палитру, для того, что б выбирая какой-то примитив или блок для размещения в чертеже, этот примитив или блок попадав в заранее предопределенный слой без выбора из километрового списка слоев
румата вне форума  
 
Непрочитано 18.09.2021, 11:37
#16
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Цитата:
Сообщение от румата Посмотреть сообщение
В идеале, для каждого специалиста нужно создать свою инструментальную палитру, для того, что б выбирая какой-то примитив или блок для размещения в чертеже, этот примитив или блок попадав в заранее предопределенный слой без выбора из километрового списка слоев
Если делать кнопки под каждый слой, то получится километровый список кнопок.
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 18.09.2021, 11:39
#17
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Offtop: Что, "Корпоративные стандарты", часть фиг пойми какая?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.09.2021, 12:06
#18
румата


 
Регистрация: 06.04.2015
Сообщений: 2,673


Цитата:
Сообщение от Krieger Посмотреть сообщение
Если делать кнопки под каждый слой, то получится километровый список кнопок.
Для каждой специализации чертежника получится не такой уж и километровый
румата вне форума  
 
Непрочитано 18.09.2021, 12:18
#19
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Цитата:
Сообщение от румата Посмотреть сообщение
Для каждой специализации чертежника получится не такой уж и километровый
Это смотря как работать. У меня 2 стиля, когда слои раскидываю по принадлежности на чертеже и когда слои раскидываю функционально к тому что вычерчиваю. Если в первом случае мне достаточно 20 +/- слоев и тогда ни кнопки, ни лиспы не нужны, то во втором случае их уже под сотню может набегать, что для кнопок уже многовато. И у меня нет заранее готовых заготовок, у меня полет мысли в процессе работы, разве что слои создаются по маске из блоков. Первые блоки зачастую повторяются, а вот последние уже уникальные. Поэтому нужен генератор слоев. Абсолютно все случаи не предусмотришь, да и зачем...
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 18.09.2021, 12:22
#20
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,005


Цитата:
Сообщение от Krieger Посмотреть сообщение
Если делать кнопки под каждый слой, то получится километровый список кнопок.
были же надстройки авторазмещения объектов по слоям, например. Исполнитель "по нормальному" вообще не должен думать - что на каком слое размещать, он предоставляет свои услуги именно проектировщика/конструктора/др. - а не организатора процесса черчения/оформления.

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
"Корпоративные стандарты", часть фиг пойми какая?
ну так даже встроенными средствами акада мало кто из фирм их реализовали. Ибо при реализации данных стандартов должно быть волевое решение начальства: ВСЕ работаем именно так, не смотря на выявляемые недостатки/недочеты. Т.е. принять на себя ответственность за возможные задержки/срывы сроков на процессе обкатки..)

И с этими "БД" слоев будет энное количество вариантов в пределах одних и тех же фирм - кто как из исполнителей привык работать, в каком стиле сделаны "рыбы" и т.д.

а сейчас со всем этим организационным бардаком еще и в БИМ "впишемся" со следующего года))
Сергей812 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > Lisp классификатор слоёв Autocad

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Плагин сборки в чертёж отмеченных областей из других файлов чертежей, с разбивкой объектов MagiCAD и SPDS. Протестировано в AutoCAD 2015, 2018 MagiCAD2016 в AutoCAD 2015 petro_f Готовые программы 20 28.07.2020 14:21
Как в lisp программно заполнить таблицу созданную в autoCad? SNIIP LISP 8 26.04.2013 10:20
проверить текущий профиль AutoCAD с помощью LISP или Delphi Leo_fmf LISP 8 06.02.2012 15:21
Как средствами LISP узнать, сколько чертежей открыто в AutoCAD? Nike LISP 5 22.06.2010 12:28
Не работает LISP в AutoCAD 2006 hotirium LISP 8 02.06.2010 16:00