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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Подготовка подосновы

LISP. Подготовка подосновы

Ответ
Поиск в этой теме
Непрочитано 13.04.2011, 20:25 24 |
LISP. Подготовка подосновы
VVA
 
Инженер LISP
 
Минск
Регистрация: 11.05.2005
Сообщений: 6,990

Набор команд, опубликованных в теме Подоснова
Желательно ознакомиться с указанной темой или как минимум с описанием
Описание команд
Код:
[Выделить все]
BGLAYDEL - Удаление выключенных и замороженных слоев с примитивами
BG1BLEXP - Взрывает блоки, состоящие из одного примитива (возможно другого блока)
BGBLEXP  - Взрывает блок и все блоки, входящие в него, превращая видимые атрибуты в текст
BGBLEXP1 - Взрывает блоки 1-го уровня, превращая видимые атрибуты в текст
BGBLDYNEXP1 - Взрывает динамические блоки 1-го уровня, превращая видимые атрибуты в текст
BGBLEXP1NOATT - Взрывает блоки 1-го уровня, у которых нет видимых атрибутов
BGBLXCLIP - Показывает подрезанные блоки
BGBLDYN2A - Преобразовывает динамические блоки в анонимные
BGBLDYN2S - Преобразовывает динамические блоки в статические
BGBLALLDYN2A - Преобразовывает ВСЕ динамические блоки в анонимные    
BGBLALLDYN2S - Преобразовывает ВСЕ динамические блоки в статические  
BGBLXCLIPEXP - взорвать подрезанный блок
BGCB - копирует одно из вхождений блока в блок с новым именем 
BGRB - переименовывает одно из вхождений блока в блок с новым именем
M2U - Преобразовать MINSERT в Unnamed блок
M2B - Преобразовать MINSERT в блок
U2B - Преобразовать UNNAMED в блок
U2BM - Преобразовать UNNAMED в блок множественный выбор
UX - Взорвать UNNAMED блок
=======================================
BGRGB2ACI - Изменяет цвет с RGB на ACI
BGAll2RGB - Изменяет ACI цвет в его RGB эквивалент
BGCOLOR - Задает выбранный цвет всем объектам
BGCOLORCMD - Задает выбранный цвет всем объектам с запросом в командной строке
BGCOLORXREF - Меняет цвет выбранных внешних сылок (только в текушем сеансе)
BGCOLBL - Установка "послою" цвета примитивов подосновы. Если цвет задан явно- создается новый слой !Новое с версии 3.0
BGResetXRef -Сброс настроек слоев выбранных внешних ссылок на установленные в исходном файле
BGBLCC - Изменяет цвет выбранных блоков
BGENCC - Изменяет цвет выбранного элемента блока
BGCATT - Изменяет цвет атрибутов выбранных блоков
BGCBL2 - Изменяет цвет в блоках 2 и более уровня (вложенных блоках)
BGBLFIX - Нормализация блоков (цвет, слой, взрываемость и т.п.)
BGCFT   - Конвертирует все поля в обычный текст
BGCFTSEL - конвертирование полей в обычный текст в выбранных примитивах
BGHATCHDEL - Удаление штриховки
Текущая версия 3.13a
Отличие версий 3.3 и 3.6 и выше - переписана функция взрыва блоков (команды BGBLEXP...)
В версии 3.3 - вариант из expresstools. Сохраняются поля при взрыве. Медленная обработка при большом количестве блоков
В версии 3.6 функция bg:BURST-ONE заменена функцией Lee Mac LM:burst. На порядок быстрее, если атрибут многострочный и включена маскировка - получаем маскированный мтест.
Поля не сохраняются.

Код:
[Выделить все]
;;;	Версии:
;;;	1.0 - исправлены ошибки burst - при наследовании типа линии поблоку, показ скрытых атрибутов и наследования типа линии блока
;;;	                                если в блок примитив входил не на 0 слое, тип линии поблоку.
;;;	      добавлена обработка Burst LineWeight
;;;	1.1  изменение цвета блока при наличии атрибутов (см ;;; Change VVA 12.09.2008)
;;;	...
;;;	1.4  Обработка стилей мультилиний
;;;	1.11 ChangeAllObjectsColor - Обработка размеров, leader и mtext с явным заданием цвета.
;;;	     BGBLEXP - обработка видимостей динамических блоков (если в видимости включены атрибуты)
;;;	     BG1BLEXP - Обабатываются блоки, состоящие из одного элемента и
;;;	     - имя блока A$C*
;;;	     - или любое другое имя и этот один элемент другой блок
;;;	1.12 - Не удаляет блоки, расположенные на выключенном/ замороженном слое
;;;	       и имеющие хотя бы 1 примитив на включенном слое, отличном от "0"
;;;	2.0  - BGBLEXP - исправлена ошибка со списком
;;;	2.1  - обработка блоков внешних ссылок ChangeXrefAllObjectsColor
;;;	2.2  - команда BGCFT
;;;	2.3  - add BGCOLORXREF and BGRGB2ACI
;;;	2.4  - Обработка многострочных атрибутов
;;;     2.5  - Добавленна gc:FieldCode ChangeAllObjectsColor ChangeXrefAllObjectsColor - обработка Unicode символов
;;;     2.6  - Добавленны команды BGBLDYN2A BGBLDYN2S
;;;     2.7  - Добавлена обработка предварительного выбора
;;;     2.8  - Баги с обработкой атрибутов и visibility
;;;     2.9 - Команда BGBLDYNEXP1 
;;;     2.9.1 - добавлена ф-ция bg:massoc
;;;     2.10  - Конвертация динамических блоков  bg:DynToStatic. Сохранение и восстановление значений атрибутов
;;;     2.11 - Изменения в bg:get-all-atts (обработка UNICOD символов в значениях атрибутов)
;;;              добавлена команда BGHATCHDEL
;;;             ChangeAllObjectsColor - change table text and grid color
;;;    2.12  - Учтен lineweight для атрибутов. Изменен BgBlFIX
;;;    2.13  - Добавлена функция BG:GET-TEXTSTRING (как замена vla-get-textstring. Т.к. неверно возвращает строку при наличии юникод символов)
;;;    2.14  - Добавлена команда BGAll2RGB Изменена ClearFieldInAllObjects
;;;    2.15  - Небольшие изменения в BGAll2RGB. добавлены BGCB и BGRB
;;;;   2.16  - BGCBL2 теперь работает с RGB и ACI цветами
;;;;   2.17  - BGBLCC  теперь работает с RGB и ACI цветами + мелкие изменения
;;;;   2.18  - Учтено предложение http://forum.dwg.ru/showpost.php?p=949149&postcount=102
;;;;           Добавлена команда BGBLXCLIPEXP
;;;;   2.19  - Команда BGBLFIX. Добавлена опция игнорирования блокированных слоев
;;;    2.22  - Добавлены опции Одинаковые масштабы и Разрешить расчленение
;;;    2.23 - Внесены изменения в команду BGBLXCLIPEXP
;;;    2.24  - Отредактирована команда UX (вложенность анонимных блоков)
;;;    2.25  - Fix BGBLCC и BGCBL2 command. Add BGCFTSEL
;;;    2.26  - BGCFT - добавлена обработка формата текста в таблице. Добавлены команды BGBLALLDYN2A и BGBLALLDYN2S
;;;    2.27  - в командах U2B ,UX добавлена обработка блоков с именем *E
;;;    2.28  - BGCFT - исправлена ошибка + изменения в function bg:DynToStatic
;;;    2.29  - Исправлен недочет ClearFieldInThisObject
;;;    2.30    Fixed minor bugs in function ClearFieldInThisObject   http://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/vla-get-textstring-u-symbols/td-p/4365165
;;;    2.31    BGCFT добавлена очистка полей в размерах  ( http://forum.dwg.ru/showthread.php?p=1335110#post1335110 )
;;;    2.32    изменения в bg:get-TextString (http://forum.dwg.ru/showpost.php?p=1386990&postcount=235)
;;;    2.33    изменения в bg:get-TextString (http://forum.dwg.ru/showpost.php?p=1386990&postcount=252) 
;;;    2.34    BGBLFIX обработка именованных стилей печати
;;;    2.35    BGBLEXP изменения
;;;    2.36    изменения в команде UX http://forum.dwg.ru/showthread.php?p=1421560#post1421560
;;;    2.37    BGCFT исправлена ошибка при обработке заблокированных ячеек таблицы
;;;    2.38    BGLAYDEL исправлена ошибка с востановлением слоев
;;;    2.40    Изменения в ф-ции bg:FieldCode. Добавлена ф-ция bg:GetObjectIDString mark VVA 2015-12-07
;;;    2.41    Изменения в ф-ции ClearFieldInThisObject. Обработка значений размеров над и под размерной линией. Mark VVA 2016-01-04
;;;    3.0    Добавлена команда BGCOLBL
;;;            Установка послою цвета примитивов подосновы. Если цвет задан явно- создается новый слой
;;;    3.1    BGBLEXP - сохранение полей в атрибутах
;;;   3.2    BGCFT игнор
;;;   3.3    Исправление в команде M2B
;;;   3.4    Исправление fix bg:explode-block (исключение обработки внешних ссылок)
;;;   3.5    BG:BURST-ONE измененая для сохранения постоянных атрибутов
;;;   3.6    добавлено bg:del-constraint в BGBLEXP
;;;   3.7    изменения в команде M2B
;;;   3.8    Изменения в bg:FieldCode (http://forum.dwg.ru/showpost.php?p=1754063&postcount=467)
;;;   3.9    Изменения BGLAYDEL. Слои удаляются командой _-LAYDEL
;;;   3.10   Добавлена команда BGCOLORCMD
;;;;  3.11   Изменения BGLAYDEL
;;;;  3.12   Изменения в функции mip_MTEXT_Unformat (VVA 2021-12-24)
;;;;          https://forum.dwg.ru/showthread.php?p=1975506#post1975506
;;;;   3.12a   Изменения в функции bg:hatch-delete-form-Block (VVA 2022-05-13)
;;;;            https://forum.dwg.ru/showpost.php?p=1991289&postcount=624

Полезные ссылки
C2L - Color to Layer или еще здесь
COLORFL - Color From Layer
PFL - Properties From Layer

Вложения
Тип файла: zip bgtools 3.3.zip (53.6 Кб, 6417 просмотров)
Тип файла: zip bgtools3.13b.zip (57.3 Кб, 171 просмотров)

__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 29.01.2024 в 16:36. Причина: См историю изменений
Просмотров: 410694
 
Автор темы   Непрочитано 12.12.2011, 17:58
#61
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Цитата:
Сообщение от shartal Посмотреть сообщение
Хочу создать пакетный файл на обработку группы dwg, и вспылающий запрос не позволяет автоматизировать это.
Вызывай так
Код:
[Выделить все]
(ConvField->Text nil)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 13.12.2011, 12:20
#62
shartal


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


Прошу прощения, как это в загрузке применить?
Выражение (autoload "bgtools" ' ("(ConvField->Text nil)")) не принимается.
shartal на форуме  
 
Автор темы   Непрочитано 13.12.2011, 12:36
#63
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


А как ты собирался с командами это делать?
Сделай промежуточный lsp файл или в bgtools допиши свою команду
Код:
[Выделить все]
(defun C:BGCFTALL ()(ConvField->Text nil))
и вызывай ее
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 13.12.2011, 13:51
#64
shartal


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


Конечно. Спасибо.
shartal на форуме  
 
Автор темы   Непрочитано 01.03.2012, 15:51
#65
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Добавилось пару команд
Цитата:
Сообщение от ASLYS Посмотреть сообщение
VVA, подборка команд просто незаменимая, огромное спасибо!
часто пользуюсь BGRGB2ACI, сейчас понадобилось наоборот поменять в блоках цвет ACI на RGB (нужно заменить цвет red на 255,0,0)
можете добавить в этот сборник?
Добавилась команда BGAll2RGB

Цитата:
Сообщение от Kostinok Посмотреть сообщение
VVA, здравствуйте

Команда "BGCOLORXREF", меняет цвет выбранной внешней ссылки, а как вернуть исходное состояние цвета?
Цитата:
BGResetXRef -Сброс настроек слоев выбранных внешних ссылок на установленные в исходном файле
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 02.03.2012, 13:26
#66
ASLYS

Delineante
 
Регистрация: 26.12.2006
Ростов-на-Дону/Madrid
Сообщений: 396
<phrase 1=


Спасибо!!!

PS: у меня блоки второго уровня, BGRGB2ACI – работает с вложенными блоками, а
BGAll2RGB меняет цвет только снаружи. Еще не удалось взорвать/переименовать вложенный анонимный блок.
Вложения
Тип файла: dwg
DWG R14
PRUEBA.dwg (257.7 Кб, 4684 просмотров)
ASLYS вне форума  
 
Автор темы   Непрочитано 02.03.2012, 18:20
#67
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Обновил до версии 2.15
BGAll2RGB - работает с вложенными блоками
U2B - переименовывает анонимный блок верхнего уровня (можно вызывать в редакторе блоков). Задачи переименовывать вложенные анонимные блоки не стояло. Оно надо?
Добавил команды копирования и переименования (BGCD и BGRB) одного из вхождений блока (включая динамические), как продолжение этой темы
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 05.03.2012, 12:49
#68
ASLYS

Delineante
 
Регистрация: 26.12.2006
Ростов-на-Дону/Madrid
Сообщений: 396
<phrase 1=


Теперь все работает, супер!

Есть одна проблема, когда в блоке меняется цвет на RGB, то меняется цвет всех элементов блока. Т.е. белый цвет тоже меняется на RGB и не печатается, а нужно поменять только красную штриховку. В моем случае нужно что-то наподобии BGCBL2, только для RGB.

u2b в редакторе блока выдает:
Comando: u2b
Select block:
New block name: 123
no function definition: TABLELIST

я для анонимных блоков использую другой лисп, но его тоже надо запускать из редактора блоков.
Вложения
Тип файла: lsp ren_ablk.lsp (1.2 Кб, 220 просмотров)
ASLYS вне форума  
 
Автор темы   Непрочитано 05.03.2012, 19:37
#69
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


ASLYS,
Обновил до 2.16
Цитата:
Сообщение от ASLYS Посмотреть сообщение
Т.е. белый цвет тоже меняется на RGB и не печатается
Внес изменения, что белый/черный (цвет 7) меняется в RGB на черный 0,0,0
Цитата:
Сообщение от ASLYS Посмотреть сообщение
В моем случае нужно что-то наподобии BGCBL2, только для RGB.
Обновил BGCBL2. Теперь можно цвета выбирать из ACI, RGB и альбомов цветов
Цитата:
Сообщение от ASLYS Посмотреть сообщение
no function definition: TABLELIST
Добавил
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 05.03.2012, 21:02
#70
ASLYS

Delineante
 
Регистрация: 26.12.2006
Ростов-на-Дону/Madrid
Сообщений: 396
<phrase 1=


То, что надо, отлично работает! Cпасибо!

PS после команды BGALL2RGB цвет 0,0,0 меняет на 76,0,0
ASLYS вне форума  
 
Непрочитано 07.03.2012, 08:25
#71
Jonas

конструктор машиностроитель
 
Регистрация: 14.05.2007
Новосибирск
Сообщений: 893


После команды BGBLDYN2S (преобразовывает блоки в статические) появляются описания блоков $BG$_ ........ _1... которые не удаляются.
Вопрос - так задумано или что то не так?
Jonas вне форума  
 
Автор темы   Непрочитано 07.03.2012, 09:56
#72
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


То, что появляется имя "$BG$_ ***" так и должно быть. Это имя статического блока.
Цитата:
Сообщение от Jonas Посмотреть сообщение
... которые не удаляются.
Блок не удаляется, если на него есть ссылка в модели, в листе, в описании другого блока. Специальных мер по "не удалению" блоков не предпринимается
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 13.03.2012, 14:45
#73
shartal


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


Заметил особенность. Команда BGBLDYN2A преобразовывает все блоки во всех пространствах и листа и модели. А команды BGBLDYNEXP1, BGBLEXP1NOATT и BGBLEXP работают с объектами только текущего пространства. Возможно ли их действие расширить на весь файл?
shartal на форуме  
 
Непрочитано 23.03.2012, 10:29
#74
crosandr

Инженер-строитель
 
Регистрация: 09.07.2010
Санкт-Петербург
Сообщений: 1,988


Добрый день, у меня небольшой вопрос по команде BGHATCHDEL. Задача следующая. Есть блок в котором куча ненужной штриховки. Хочется эту штриховку оттуда удалить, чтоб оставить только линии. Команда BGHATCHDEL удаляет штриховку со всего чертежа даже если сказать ей, чтоб на замороженных и заблокированных слоях ничего не трогать (слои и замораживал, и блокировал естественно). Это баг или я что-то не так делаю?
crosandr вне форума  
 
Автор темы   Непрочитано 23.03.2012, 11:16
#75
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


crosandr, Скачай последнюю (2.16) версию. BGHATCHDEL сейчас спрашивает это
Миниатюры
Нажмите на изображение для увеличения
Название: bghd.png
Просмотров: 245
Размер:	12.6 Кб
ID:	77002  
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 23.03.2012, 11:35
#76
crosandr

Инженер-строитель
 
Регистрация: 09.07.2010
Санкт-Петербург
Сообщений: 1,988


Цитата:
Сообщение от VVA Посмотреть сообщение
Скачай последнюю (2.16) версию
работаю с этой версией
Цитата:
Сообщение от VVA Посмотреть сообщение
BGHATCHDEL сейчас спрашивает это
Цитата:
Сообщение от crosandr Посмотреть сообщение
Команда BGHATCHDEL удаляет штриховку со всего чертежа даже если сказать ей, чтоб на замороженных и заблокированных слоях ничего не трогать (слои и замораживал, и блокировал естественно).
так собственно об этом я и писал. Вроде и спрашиват, но удаляет во всем чертеже.
Приложил файл, в котором нужно удалить штриховку из блока test.
Вложения
Тип файла: dwg
DWG 2004
тест.dwg (109.2 Кб, 4666 просмотров)
crosandr вне форума  
 
Автор темы   Непрочитано 23.03.2012, 13:45
#77
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


crosandr,
Проверил. Все работает
Еще раз обращаю внимание, что речь идет о слоях.
У тебя в блоке TEST штриховка а 0 слое. В блоке A$C07DF5D4C на слое ZALIVKA
1. При загрузке bgtools в командной строке пишется
Цитата:
Background tools v.2.16 Наберите в командной строке:
2. Создал слой "Слой1". На нем нарисовал штриховку. Слой заблокировал.
3. Заблокировал слой "ZALIVKA"
3. Вызвал BGHATCHDEL и ответил НЕТ. Штриховка из блока TEST удалилась.
PS В будущем добавлю команду удаления штриховки их конкретного блока
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 23.03.2012, 13:53
#78
crosandr

Инженер-строитель
 
Регистрация: 09.07.2010
Санкт-Петербург
Сообщений: 1,988


Цитата:
Сообщение от VVA Посмотреть сообщение
Еще раз обращаю внимание, что речь идет о слоях.
У тебя в блоке TEST штриховка а 0 слое
все, понял, спасибо))
Переместил штриховку внутри блока на спецслой, остальные слои заблокировал и команда BGHATCHDEL удалила то, что нужно
crosandr вне форума  
 
Непрочитано 03.04.2012, 14:03
#79
Alex_80

ПГС
 
Регистрация: 24.11.2011
Сообщений: 31


На AutoCAD 2013 версия 2.10 команды BGBLDYN2A и BGBLDYN2S преобразовывают нормально. Обновил до версии 2.16. Атрибуты с полями стали ###.
BGBLDYN2A - Преобразовывает динамические блоки в анонимные
BGBLDYN2S - Преобразовывает динамические блоки в статические
Alex_80 вне форума  
 
Непрочитано 03.04.2012, 14:29
#80
Вовочка

пищевая технология
 
Регистрация: 02.06.2009
Киев
Сообщений: 283
<phrase 1=


Можно ли добавить к Бэкграунду программку "Взрыва подрезаного блока". Объясню, имеем подрезанный блок. Я его взрываю, и мне вылазит весь блок, а нужно, только то что подрезано
Вовочка вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Подготовка подосновы

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу) Red Nova LISP 4553 21.02.2024 23:09
{Конкурс} Lisp. Задачки для студентов gomer LISP 10 05.01.2011 16:33
LISP на команду 3dcorbit Малюк LISP 2 30.09.2009 14:18
Запуск Lisp команды в новом документе BlackHarp LISP 1 26.03.2009 23:06
загрузка DOS прог через LISP Gaa LISP 15 12.08.2005 19:19