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

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

LISP. Очистка чертежа от мусора

Ответ
Поиск в этой теме
Непрочитано 18.08.2014, 16:15 11 | #1
LISP. Очистка чертежа от мусора
gomer
 
строю, ломаю
 
Украина
Регистрация: 03.04.2008
Сообщений: 5,515

Выкладываю пилотный проект программы по очистке чертежа. Код не мой, я просто собрал кое-что до кучи
Надеюсь кому-нибудь да поможет

Применение
- Загрузить CleanDWG.vlx в автокад или CleanDWG.des в bricscad
- В командной строке набрать CLEANDWG

Замеченные ошибки
В Autocad 2013 En русские буквы в диалоговом окне отображаются некорректно. Обсуждение проблемы тут

Критика и предложения приветствуются

История изменений
31.03.2014 Программа обновлена до версии 1.3

Миниатюры
Нажмите на изображение для увеличения
Название: CleanDWG13.png
Просмотров: 7744
Размер:	39.4 Кб
ID:	147269  

Вложения
Тип файла: zip CleanDWG13.zip (19.1 Кб, 12527 просмотров)


Последний раз редактировалось gomer, 16.03.2016 в 18:02.
Просмотров: 182882
 
Непрочитано 18.08.2014, 16:19
#2
Кулик Алексей aka kpblc
Moderator

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


Добавь еще очистку параметрических зависимостей и историю твердых тел Можно заодно еще и словари посносить, но это только для варианта "невертикального" AutoCAD (ИМХО).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 18.08.2014, 16:28
#3
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Очистка истории твердых тел какая-то есть. Насчет параметризации я пока не нашел "некомандный" способ для сего действия. В планах еще разобраться с с пустыми блоками, изображениями и внешними ссылками (код спилю у VVA из bgtools) и очистка прокси с помощью программы А. Ривилиса.
Алгоритм обработки текста самый простой пока, но это все поправимо
gomer вне форума  
 
Непрочитано 18.08.2014, 16:34
#4
Кулик Алексей aka kpblc
Moderator

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


Посмотри у меня на сайте - я делал все это.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 18.08.2014, 18:01
#5
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Кулик Алексей aka kpblc, А через entnext не быстрее будет удалить п-зависимости и вообще можно ли?
gomer вне форума  
 
Непрочитано 18.08.2014, 18:11
#6
Кулик Алексей aka kpblc
Moderator

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


Не думаю, что получится. Посмотри мой код http://autolisp.ru/2014/03/24/clear-dwg-at-opening/ - вроде бы работало. Нарисовать для этого кода dcl не проблема, но мне сегодня точно не до этого будет.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 18.08.2014, 20:27
#7
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Не думаю, что получится.
Да действительно, не получается... А почему сначала entdel, а потом vla-delete?
gomer вне форума  
 
Непрочитано 18.08.2014, 21:16
#8
skkkk


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


Цитата:
Сообщение от gomer Посмотреть сообщение
Критика и предложения приветствуются
Более ли менее потестировал по всем пунктам - ошибок не нашел.
Критиковать - нос не дорос, а вот предложения - пожалуй (в добавок к #3):
1. Прикрутить бы туда удаление дубликатов из overkill'a.
2. Мое мнение: галочки на удаление точек и маскировок и групп по умолчанию лучше бы убрать. Думаю, их правильнее сознательно поставить, чем случайно посносить нужные объекты. А в идеале - запоминать галочки, выбранные ранее. Хотя бы в пределах сеанса, но неплохо бы и глобально. Как это сделать лучше - не знаю. Может в реестр писать или в текстовый файл?
3. Не смог создать пустой Мтекст (однострочник получилось), может, программно надо было - поленился. А вот текст, содержащий только пробелы, не удаляется. Жаль, потому что его нельзя выделить кроме как Ctrl+A. Может, добавить галку "Текст из пробелов"? Ну или под одну грубенку его, все равно не могу придумать от него практического толку - в топку.

Беру на вооружение, спасибо, gomer.
skkkk вне форума  
 
Непрочитано 18.08.2014, 23:16
#9
Кулик Алексей aka kpblc
Moderator

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


Offtop: Если завтра будет время, опубликую графический вариант своего кода.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 19.08.2014, 17:00
#10
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
1. Прикрутить бы туда удаление дубликатов из overkill'a.
Тут я бы посоветовал макрос, так как overkill - самостоятельная команда со своим диалогом

Цитата:
Сообщение от skkkk Посмотреть сообщение
галочки на удаление точек и маскировок и групп по умолчанию лучше бы убрать.
Может ты и прав, это не сложно переделать

Цитата:
Сообщение от skkkk Посмотреть сообщение
в идеале - запоминать галочки, выбранные ранее. Хотя бы в пределах сеанса, но неплохо бы и глобально. Как это сделать лучше - не знаю. Может в реестр писать или в текстовый файл?
не хотелось бы связываться с реестром, но опять же это несложно добавить, вопрос в том как реализовать это

Цитата:
Сообщение от skkkk Посмотреть сообщение
текст, содержащий только пробелы, не удаляется. Жаль, потому что его нельзя выделить кроме как Ctrl+A. Может, добавить галку "Текст из пробелов"? Ну или под одну грубенку его, все равно не могу придумать от него практического толку - в топку.
Текст с маскировкой может быть полезен Сейчас программа выбирает только пустой текст. Придумаешь маску (условие пустоты) для выбора, добавлю. Вообще это не так просто, нужно выбрать все тексты и каждый проверить на наличие контента и уж потом удалить. Это займет больше времени, а я уже заметил, что на больших файлах программа может вызвать подвисание. В-общем нужно тестить.
gomer вне форума  
 
Непрочитано 20.08.2014, 02:56
#11
skkkk


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


Цитата:
Сообщение от gomer Посмотреть сообщение
Тут я бы посоветовал макрос, так как overkill - самостоятельная команда со своим диалогом
А жаль. У нее есть брат -overkill, который, вроде, можно накормить аргументами через (vla-SendCommand). А в случае отсутствия на машине ExpressTools можно эту галочку в DCL-диалог не включать. Но по-моему, ты недолюбливаешь командные способы.
Цитата:
Сообщение от gomer Посмотреть сообщение
не хотелось бы связываться с реестром, но опять же это несложно добавить, вопрос в том как реализовать это
Пока только могу лишь в качестве набросков для алгоритма:
Вариант №1:
1. Создаем для каждой галки запись в реестре. Шучу. Если это будет сумма битовых флагов, то записи хватит одной.
2. При запуске читаем эту запись.
3. При изменении пользователем набора галочек... чтобы узнать что будем делать, отправь смс на короткий номер
Вариант №2:
1. Создаем в укромном местечке, а может и в той же самой папке, откуда запущен лисп (кстати, не об этом ли здесь?) текстовый файл и делаем туда запись суммы битовых флагов.
2. Далее как и в п.п. 2 и 3 варианта №1.

Цитата:
Сообщение от gomer Посмотреть сообщение
Текст с маскировкой может быть полезен
Ну ладно, не в топку. То есть, если делать, то непременно отдельную галку? А маскированные пустые тексты, может, вообще удалять/не удалять вместе с маскировками?
Цитата:
Сообщение от gomer Посмотреть сообщение
Придумаешь маску (условие пустоты) для выбора, добавлю.
Пока слёту так и не могу придумать маску для n-ного количества пробелов. А заодно и "непустых" пробелов (те, что Ctrl+Shift+Space). А может и не надо, потому что
Цитата:
Сообщение от gomer Посмотреть сообщение
выбрать все тексты и каждый проверить на наличие контента
- это как-то не айс. Реально долго это может быть. Если уж и делать такую галку, то с пометкой "долго" и выключенной по умолчанию

----- добавлено через ~1 ч. -----
Еще пару мыслей:
1. Линии нулевой длины.
2. Может, "плющилку" 2D? Или хотя бы обнуление уровня полилиний? В частности случаи, когда полилиния ведет себя как-то неадекватно. Попадались такие файлы, может, смогу найти - выложу. При выборе такой полилинии не видна ее центральная ручка (при GRIPS=2) , и при попытке потянуть за крайнюю ручку рядом с полилинией появляется начало координат, с осью, параллельной этой полилинии (СК объекта?). У таких полилиний уровень всегда ненулевой, и при попытке обнулить его через свойства полилиния просто пропадает из виду. Надеюсь, понятно объяснить получилось...

Последний раз редактировалось skkkk, 20.08.2014 в 04:14.
skkkk вне форума  
 
Автор темы   Непрочитано 20.08.2014, 11:08
#12
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
Создаем для каждой галки запись в реестре. Шучу.
Это не шутки, так и придется сделать, ведь
Цитата:
Сообщение от skkkk Посмотреть сообщение
Линии нулевой длины.
и сразу найдутся товарищи, кому не по нраву линии маленькой, но гордой, ненулевой длины. Точнее отрезки и скукоженные полилинии но это опять же лопатить. Знаю, спрашивал...
Хотя лопатить все равно придется, если нужно будет чистить в блоках
gomer вне форума  
 
Непрочитано 20.08.2014, 11:14
#13
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от gomer Посмотреть сообщение
Это не шутки, так и придется сделать, ведь
Еще раз говорю - посмотри у меня на сайте (http://autolisp.ru/2014/03/24/clear-dwg-at-opening/). Вся очистка регулируется единственным параметром - битом. А разбираешь ты его уже внутри кода.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 20.08.2014, 11:21
#14
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Цитата:
Сообщение от skkkk Посмотреть сообщение
Пока слёту так и не могу придумать маску для n-ного количества пробелов.
Тримить строку от пробелов и табуляции и проверять на пустоту.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 20.08.2014, 11:40
#15
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от Do$ Посмотреть сообщение
Тримить строку от пробелов и табуляции и проверять на пустоту.
А заодно сносить форматирование...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 20.08.2014, 13:43
#16
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Да, если мтекст и все что на его основе.
Offtop: Как же с этим проще в NET! Там напрямую из MTEXT без танцев с бубном можно прочитать строку без форматирования...
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 21.08.2014, 14:01
#17
skkkk


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


Цитата:
Сообщение от gomer Посмотреть сообщение
и сразу найдутся товарищи, кому не по нраву линии маленькой, но гордой, ненулевой длины
Можно для них сделать поле для записи минимального значения длины. Ниже которой все удалять. Но тут в таком темпе сейчас пойдет-поедет, что окошко программы не уместится на экране меньше 30 дюймов
Цитата:
Сообщение от Do$ Посмотреть сообщение
Тримить строку от пробелов и табуляции и проверять на пустоту.

Цитата:
Сообщение от Do$ Посмотреть сообщение
Offtop: Как же с этим проще в NET! Там напрямую из MTEXT без танцев с бубном можно прочитать строку без форматирования...
Я не ошибусь, если скажу, что все танцы сводятся к применению одной функции, например, LM:Unformat от Lee Mac?

----- добавлено через ~11 мин. -----
Цитата:
Сообщение от gomer Посмотреть сообщение
Это не шутки, так и придется сделать, ведь
В смысле, только из-за линий нулевой длины придется делать запись в реестре для каждой галочки? Не пойму, почему так?
skkkk вне форума  
 
Непрочитано 21.08.2014, 20:28
#18
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Offtop:
Цитата:
Сообщение от skkkk Посмотреть сообщение
Я не ошибусь, если скажу, что все танцы сводятся к применению одной функции, например, LM:Unformat от Lee Mac?
Я тоже так думал, когда примерно год тому назад коллега попросил помочь убрать форматирование мультитекста из чертежа. Большой чертеж геодезической съемки, где на каждый текст навешано было форматирования выше крыши. Ну, я прикинул - на лиспе я знаю кучу функций для этого, в том числе mip_MTEXT_Unformat, LM:Unformat, StripMtext... Не буду трогать NET, обойдусь ими. В итоге ни одна из них не справилась на 100%, все равно оставался мусор. В итоге, промучившись с поиском и проверками почти час, я плюнул на это дело и написал код в NET.
Если убрать всю "обвязку" (используемые имена пространств, выбор объектов, открытие-закрытие объектов на запись и пр...), то все сводится к одной строчке:
Код:
[Выделить все]
mText.Contents = mText.Text;
Берем одно свойство и записываем в другое - вот и все танцы.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Автор темы   Непрочитано 21.08.2014, 22:20
#19
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


ну . Net и побыстрее будет. проблема только в совместимости...
gomer вне форума  
 
Непрочитано 22.08.2014, 09:55
#20
MorganSpb


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


как установить данную приблуду? лисп подгрузил, результата нет.
MorganSpb вне форума  
 
Непрочитано 22.08.2014, 10:32
1 | #21
freese

ingénieur
 
Регистрация: 21.07.2008
Сообщений: 763


Цитата:
Сообщение от MorganSpb Посмотреть сообщение
как установить данную приблуду? лисп подгрузил, результата нет.
нужно vlx загружать, диалоговое окно вызывается CleanDWG
freese вне форума  
 
Непрочитано 22.08.2014, 12:29
#22
MorganSpb


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


Цитата:
Сообщение от freese Посмотреть сообщение
нужно vlx загружать, диалоговое окно вызывается CleanDWG
Спасибо, что то ступил, я и lsp и vlx одновременно подгрузил и ничего не заработало.
MorganSpb вне форума  
 
Непрочитано 30.08.2014, 20:02
#23
skkkk


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


Вспомнил еще про неиспользуемые внешние ссылки, а также про растры, которые болтаются во внешних ссылках...
skkkk вне форума  
 
Автор темы   Непрочитано 30.08.2014, 20:21
#24
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
Вспомнил еще про неиспользуемые внешние ссылки, а также про растры, которые болтаются во внешних ссылках...
Я не думаю что, это под силу лиспу, слишком уж он медленный. Если говорить о растрах и ссылках в чертеже, то это реализовано в bgtools. У меня просто руки не доходят допилить под свою прогу
gomer вне форума  
 
Непрочитано 01.09.2014, 14:22
#25
Sergey_5

Коструктор
 
Регистрация: 28.08.2014
Москва
Сообщений: 5


Здравствуйте! А не подскажете, как установить данную вещь?

----- добавлено через ~1 ч. -----
Все, разобрался
Помогло! Большое спасибо!
Sergey_5 вне форума  
 
Непрочитано 05.09.2014, 11:10
#26
shartal


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


Что имеется в виду под Настройки печати?. В диспетчере параметров листов все как было так и осталось. Возможно принтер установленный в параметрах должен был бы сброситься на Нет?
shartal вне форума  
 
Автор темы   Непрочитано 05.09.2014, 17:29
#27
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


откройте диспетчер параметров листов, там в списке найдете то, что ищете
gomer вне форума  
 
Непрочитано 18.10.2014, 16:03
#28
skkkk


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


Цитата:
Сообщение от skkkk Посмотреть сообщение
2. Может, "плющилку" 2D? Или хотя бы обнуление уровня полилиний? В частности случаи, когда полилиния ведет себя как-то неадекватно. Попадались такие файлы, может, смогу найти - выложу. При выборе такой полилинии не видна ее центральная ручка (при GRIPS=2) , и при попытке потянуть за крайнюю ручку рядом с полилинией появляется начало координат, с осью, параллельной этой полилинии (СК объекта?). У таких полилиний уровень всегда ненулевой, и при попытке обнулить его через свойства полилиния просто пропадает из виду. Надеюсь, понятно объяснить получилось...
Вернулся к своему посту, поскольку нашел такой файл. Ошибся я правда в одном: такой полилинии можно назначить нулевой уровень, но адекватнее она от этого не становятся. Просто улетает в другую часть модели.
Кто знает, что это за такое, и можно ли сделать с такой линией что-то, чтоб она осталась на своем видимом месте, но с нулевым уровнем и адекватная?
Вложения
Тип файла: dwg
DWG 2010
Пример неадекватной полилинии.dwg (88.7 Кб, 3850 просмотров)
skkkk вне форума  
 
Непрочитано 18.10.2014, 20:01
#29
Кулик Алексей aka kpblc
Moderator

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


Там система координат объекта ни разу не похожа на мировую. Поэтому в качестве решения: flatten из ET или SuperFlatten из архивов форума )
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 18.10.2014, 20:04
#30
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
адекватная?
посмотри код 210 у твоей полилинии

----- добавлено через ~3 мин. -----
У меня тут беда случилась с исходником... нет, никуда он не потерялся. Но слетела кодировка, и в блокноте++ при открытии абракадабры наблюдаю. При этом НП++ показывает кодировку макинтош... Но какой макинтош? если я сроду им не пользовался... это меня бесит чрезвычайно
gomer вне форума  
 
Непрочитано 18.10.2014, 23:14
#31
skkkk


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


gomer, я не понял, дело в файле (и в каком именно?) или в NP++? Файлы на всякий прилагаю. Вроде я в них ничего пока не менял.
У меня как-то что-то давно слетало в NP++, так я после этого, когда вернул все обратно, сделал backup папок NP++ из Program Files и из AppData->Roaming. После переустановки Windows очень помогло. В том числе перешла и вся моя подсветка синтаксиса, и выпадающее меню функций (автозавершение) и все остальное. Очень советую. Если нужно, могу скинуть свои баки. Правда, перевод у меня какой-то кривой стал почему-то: половина меню на русском, другая - на английском. Но на скорость не влияет, и я заморачиваться не стал.
Вложения
Тип файла: rar CleanDWG.rar (3.3 Кб, 175 просмотров)
skkkk вне форума  
 
Автор темы   Непрочитано 19.10.2014, 00:37
#32
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


А у тебя мои исходники нормально открываются? Дело в том, что например я меняю кодировку на win1251 тескт становится нормальным, переоткрываю блокнот, текст нормальный, закрываю файл и переоткрываю блокнот - абракадабры и макинтош, будь он не ладен
Миниатюры
Нажмите на изображение для увеличения
Название: скрин2.png
Просмотров: 379
Размер:	70.5 Кб
ID:	137033  
gomer вне форума  
 
Непрочитано 19.10.2014, 12:07
#33
skkkk


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


Цитата:
Сообщение от gomer Посмотреть сообщение
А у тебя мои исходники нормально открываются?
Полностью. Как и все другие. Может, настройки? У меня вообще ANSI...
P.S.:Смотрю, там у тебя изменения уже есть
P.P.S.: Прошу прощение за качество скрина, но качественный не прикрепляется из-за размера
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок.jpg
Просмотров: 214
Размер:	137.9 Кб
ID:	137048  Нажмите на изображение для увеличения
Название: Снимок2.JPG
Просмотров: 237
Размер:	56.1 Кб
ID:	137049  
skkkk вне форума  
 
Автор темы   Непрочитано 19.10.2014, 12:39
#34
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


У тебя какая-то древняя версия стоит, еще 5 сколько-ко там, если не ошибаюсь, В этой версии как раз нормально все. А уже в 6й бардак...
gomer вне форума  
 
Непрочитано 19.10.2014, 13:08
#35
skkkk


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


Offtop: У меня версия 6.1.2. Последняя на данный момент, вроде 6.6.9.
Я устанавливал недавно последнюю версию, но оказалось, что в ней переработали алгоритм сортировки функций автозавершения.
В файле с перечнем этих функций я записал их в таком порядке, что самые часто используемые находятся выше остальных, игнорируя алфавитный порядок. А в новой версии этот порядок не игнорируется и применяется "насильно", мне это жутко не понравилось, вот я и решил откатиться.
Что-то подзагадилась как-то ветка ... Может, откроем тему про NP++ для лиспа и других языков под AutoCAD?
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок.JPG
Просмотров: 264
Размер:	41.4 Кб
ID:	137050  Нажмите на изображение для увеличения
Название: Снимок 2.JPG
Просмотров: 183
Размер:	23.4 Кб
ID:	137052  
skkkk вне форума  
 
Автор темы   Непрочитано 19.10.2014, 13:16
#36
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
Может, откроем тему про NP++ для лиспа и других языков под AutoCAD?
я не против, открывай Самое интересное то, что vlide нормально парсит cleandwg.lsp...
gomer вне форума  
 
Непрочитано 19.10.2014, 13:19
#37
skkkk


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


Цитата:
Сообщение от gomer Посмотреть сообщение
vlide нормально парсит cleandwg.lsp...
Так, стало быть, дело только в этом файле?
Offtop:
Цитата:
Сообщение от gomer Посмотреть сообщение
я не против, открывай
Задумался... А в каком разделе бы ее открыть? Разное или Программирование?
skkkk вне форума  
 
Автор темы   Непрочитано 19.10.2014, 13:30
#38
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
Так, стало быть, дело только в этом файле?
Есть и другие файлы, взятые из инета, в которых всплывает макинтош...
В программировании конечно
gomer вне форума  
 
Непрочитано 19.10.2014, 14:15
#39
skkkk


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


Offtop: Думаю, тут дело в NP++. Может, проще всего его переустановить? Сохранив настройки из папок программы. Ума не приложу, что это может быть.
Возвращаясь к неадекватной полилинии... Надеюсь, что это по теме "Очистка чертежа...", хотя более подходит под тему обнуления Z-координаты, но раз я уж начал ходатайствовать о добавлении в очистку такой функции, то продолжу тут. gomer, если ты против, скажи сразу - я отстану.
Цитата:
Сообщение от gomer Посмотреть сообщение
посмотри код 210 у твоей полилинии
Почитал, 210 - это координата Х вектора направления выдавливания. Меняю ее на '(0.0 0.0 1.0) - полилиния улетает совершенно в другое место. А хотелось бы, чтоб она при этом осталась на своем месте. И вообще не пойму, как в чертежах, присланных тётеньками, может оказаться подобное?
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Поэтому в качестве решения: flatten из ET или SuperFlatten из архивов форума
Flatten из ET с опцией No помог, с опцией Yes - полилиния улетела, SuperFlatten - отчасти. Преобразовал эту полилинию в отрезок и оставил его на месте. Правда, то же самое делает и простой _EXPLODE.
Может, добавить обработку таких полилиний с кодом 210: взрывать их и преобразовывать обратно в PLINE? Или отстать?
skkkk вне форума  
 
Автор темы   Непрочитано 19.10.2014, 14:33
#40
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


ставил неоднократно чуть ли ни все версии, результат 0... Проблема в файле, до абсурда доходит: убираешь строчку, нормальная кодировка, добавляешь - слетает.
Насчет кривых полилиний - это все таки другая задача. Да и лисп имеет ограничение по количеству объектов. Сейчас до 10000 объектов еще приемлимо лопатятся, больше уже серьезный зависон. Чем больше операций, тем меньше лимит на чертеж.
gomer вне форума  
 
Непрочитано 19.03.2015, 15:17
#41
pro9

Конструктор
 
Регистрация: 01.09.2012
Уфа
Сообщений: 80


Добрый вечер!
А то что он динамические блоки в безымянные статические переделывает, это так задумано?
pro9 вне форума  
 
Автор темы   Непрочитано 19.03.2015, 18:16
#42
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от pro9 Посмотреть сообщение
то что он динамические блоки в безымянные статические переделывает, это так задумано?
Нет, так не задумано. Возможно это автокад сам создает безымянные блоки внутри динамического, когда вы правите блок за ручки
gomer вне форума  
 
Непрочитано 20.03.2015, 12:18
#43
pro9

Конструктор
 
Регистрация: 01.09.2012
Уфа
Сообщений: 80


Цитата:
Сообщение от gomer Посмотреть сообщение
Нет, так не задумано. Возможно это автокад сам создает безымянные блоки внутри динамического, когда вы правите блок за ручки
Да, вроде сейчас все нормально. Не знаю почему раньше модифицировал блоки.
pro9 вне форума  
 
Автор темы   Непрочитано 31.03.2015, 17:21
1 | #44
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Обновил программу до версии 1.3 теперь в архиве модуль для автокада и для брикскада, добавлено удаление неавтокадовских словарей
gomer вне форума  
 
Непрочитано 31.03.2015, 19:34
#45
357

бывший...
 
Регистрация: 13.08.2009
Краснодар
Сообщений: 1,171
<phrase 1=


gomer, Извини - несколько отстал от жизни... Эта программа в дополнение к _purge или её заменяет?
357 вне форума  
 
Непрочитано 01.04.2015, 00:25
#46
skkkk


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


Я бы сказал, что это пурж - дополнение к этой программе
skkkk вне форума  
 
Непрочитано 01.04.2015, 05:24
#47
357

бывший...
 
Регистрация: 13.08.2009
Краснодар
Сообщений: 1,171
<phrase 1=


skkkk, понял, спасибо!
357 вне форума  
 
Непрочитано 01.04.2015, 10:24
#48
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 597
<phrase 1=


может только у меня такое происходит, но при нажатии кнопки "По умолчанию" программа останавливается с ошибкой: "bad argument type: stringp 0bad argument type: VLA-OBJECT nil".
Система Win7x64, Autocad 2013
__________________
Склероз нельзя вылечить, но о нем можно забыть.
(Ф. Раневская)
ie.spb вне форума  
 
Автор темы   Непрочитано 01.04.2015, 17:00
#49
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
Я бы сказал, что это пурж - дополнение к этой программе
Эта программа делает 3х-кратный тоталпурж, так что в стандартном пурже отпадает необходимость


Цитата:
Сообщение от ie.spb Посмотреть сообщение
может только у меня такое происходит, но при нажатии кнопки "По умолчанию" программа останавливается с ошибкой: "bad argument type: stringp 0bad argument type: VLA-OBJECT nil".
Вы случайно не исходники не редактировали?
gomer вне форума  
 
Непрочитано 01.04.2015, 17:31
#50
357

бывший...
 
Регистрация: 13.08.2009
Краснодар
Сообщений: 1,171
<phrase 1=


2 gomer,
я, возможно, проглядел что-то в сообщениях... А как её запускать?
357 вне форума  
 
Автор темы   Непрочитано 01.04.2015, 17:43
#51
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


команда CleanDWG после загрузки соответствующей версии приложения
gomer вне форума  
 
Непрочитано 01.04.2015, 17:57
#52
357

бывший...
 
Регистрация: 13.08.2009
Краснодар
Сообщений: 1,171
<phrase 1=


gomer, при нажатии кнопки "По умолчанию" окно программы закрывается, в командной строке автокада появляется запись: "неверный тип аргумента: stringp 0неверный тип аргумента: VLA-OBJECT nil".
Какие сведения нужны? Кино сделать?
Система Win7x64, Autocad 2012
357 вне форума  
 
Автор темы   Непрочитано 01.04.2015, 18:10
#53
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от 357 Посмотреть сообщение
Кино сделать?
Кино не надо, я понял, где ошибка, зайди в аську лучше

----- добавлено через ~48 мин. -----
Спасибо всем откликнувшимся, архив перезалил.
gomer вне форума  
 
Непрочитано 01.04.2015, 19:33
#54
357

бывший...
 
Регистрация: 13.08.2009
Краснодар
Сообщений: 1,171
<phrase 1=


удалил

Последний раз редактировалось 357, 01.04.2015 в 19:52.
357 вне форума  
 
Непрочитано 09.04.2015, 12:41
#55
skkkk


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


Получил файл съемки, решил почистить новой версией. Из изменений заметил, что выбранные чекбоксы сохраняются от сеанса к сеансу. Удобно.
Раньше (до появления CleanDWG) я пользовался составленным при помощи форума еще на рассвете моей карьеры инженера макросом на кнопку:
Код:
[Выделить все]
^C^C_audit;д;_-SCALELISTEDIT;_R;_Y;_E;^C^C_-purge;в;*;н;;з;*;н;
Решил сравнить. Мой макрос из файла 5,12Мб сделал почему-то 5,65 (!). Странно прям даже, казалось, почистил, а на деле еще и подзагадил. Раньше я за ним такого не замечал.
Затем запустил CleanDWG. Надооооолго так всё подзадумалось (минуты на полторы), в результате - 900кб. Вот это я понимаю: прибрался так прибрался.

Однако попробовал сделать наоборот: сначала CleanDWG, потом мой макрос - после макроса удалилось еще 26 приложений, хотя изначально (до CleanDWG) он удалял 246. То есть, почему-то не все приложения почистились. Почему бы?

И еще: увидел в конце отчета записи "Размер откреплен". А галочки такой в настройках не нашел. Не всегда хочется диссассоциировать размеры.

P.S.: И еще расскажите, пожалуйста, мне, темноголовому, что это за файл *.des?
Вложения
Тип файла: dwg
DWG 2010
(1062) План (1).dwg в работе М2.dwg (5.77 Мб, 2131 просмотров)
skkkk вне форума  
 
Автор темы   Непрочитано 09.04.2015, 18:23
#56
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
что это за файл *.des?
Это модуль CleanDWG для брикскада

Цитата:
Сообщение от skkkk Посмотреть сообщение
увидел в конце отчета записи "Размер откреплен". А галочки такой в настройках не нашел. Не всегда хочется диссассоциировать размеры.
Открепление размеров происходит автоматически при удалении объектов к которым они были прикреплены. Это мое предположение номер раз. Возможно проблема в замороженных слоях - это два. Да, пока программа достаточно брутальна и не учитывает статус слоев

Цитата:
Сообщение от skkkk Посмотреть сообщение
Однако попробовал сделать наоборот: сначала CleanDWG, потом мой макрос - после макроса удалилось еще 26 приложений, хотя изначально (до CleanDWG) он удалял 246. То есть, почему-то не все приложения почистились. Почему бы?
Предположу, что ошибка в программе, некоторые приложения акад не дает удалить, программа же считает, что приложение удалено, так как ошибка при его удалении не возникает. то же касается масштабов аннотаций. Думаю это не фатально, если появится возможность, исправлю.

Цитата:
Сообщение от skkkk Посмотреть сообщение
Надооооолго так всё подзадумалось (минуты на полторы), в результате - 900кб. Вот это я понимаю: прибрался так прибрался.
в брикскад 15 файл почистился секунды за три до 788кб. Скорость лиспа в автокаде действительно страдает. Смиритесь. У вас в файле > 10k объектов.
Как вариант: можно снять галки с удаления истории тел и параметрических зависимостей. Тогда программа не будет обрабатывать весь чертеж.
800 или 900 - не принципиально - это нюансы формата файла DWG
gomer вне форума  
 
Непрочитано 29.09.2015, 13:49
#57
Bob_833


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


Вопрос к Кулику Алексею: попытка почистить файл архивом "CleanDWG", 1._appload, подгружается, 2. команда "CleanDWG", 3 .в командной строке - "Отмена команды пользователем", итог - файл без изменений, что не так выполняю ?
Bob_833 вне форума  
 
Непрочитано 29.09.2015, 14:13
#58
Кулик Алексей aka kpblc
Moderator

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


Интересно, а я каким боком к этой разработке?
Скорее всего, загружен lsp, а dcl код найти не может. Все вопросы к автору
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.09.2015, 14:16
#59
Bob_833


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


Алексей, мои извинения, ошибся, вопрос к gomer

----- добавлено через ~28 мин. -----
Алексей, спасибо за подсказку, вопрос решен, файл был удален, заново распаковал архив -всё ок.
Bob_833 вне форума  
 
Автор темы   Непрочитано 29.09.2015, 17:27
#60
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Bob_833 Посмотреть сообщение
Вопрос к Кулику Алексею: попытка почистить файл архивом "CleanDWG", 1._appload, подгружается, 2. команда "CleanDWG", 3 .в командной строке - "Отмена команды пользователем", итог - файл без изменений, что не так выполняю ?
Какой кад вы использовали для запуска программы и какая версия
gomer вне форума  
 
Непрочитано 29.09.2015, 17:57
#61
Bob_833


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


AutoCAD 2013
Bob_833 вне форума  
 
Автор темы   Непрочитано 29.09.2015, 18:55
#62
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Встречал подобный глюк на bricscad10. Рекомендую загружать не исходник, а CleanDWG.vlx - скомпилированный модуль, исходник я вложил для kpblc, ну и для будущих вундеркиндов. Из-за низкой скорости лиспа в автокаде использовать исходник строго не рекомендуется на тяжелых чертежах.
хм... только сейчас заметил лажу в архиве... Readme нет, исходнике не в папке для исходников... Моя вина конечно. Будет исправлено в следующем апдейте, если он случится...
gomer вне форума  
 
Непрочитано 14.10.2015, 13:04
#63
diek


 
Регистрация: 26.02.2007
от туда
Сообщений: 370


спасибо, большое человеческое
diek вне форума  
 
Непрочитано 03.12.2015, 17:46
#64
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Замечено, что удаление словарей ликвидирует экранные представления AutoCAD MEP.
Profan вне форума  
 
Непрочитано 03.12.2015, 17:52
#65
Кулик Алексей aka kpblc
Moderator

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


Просто надо удалять не все словари подряд, а фильтровать те, которые надо оставить "в живых". Я сам на таком же в свое время погорел )
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.12.2015, 18:49
#66
skkkk


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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Просто надо удалять не все словари подряд, а фильтровать те, которые надо оставить "в живых".
А как их пометить, чтобы данная программа их не посносила? Видимо, удалять их следует не ею?
skkkk вне форума  
 
Непрочитано 03.12.2015, 21:40
#67
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Там в архиве есть lsp файл. Фрагмент удаления словарей ниже. Самое сложное определить имя или имена словарей Mep
В коде не удаляются словари "ACAD_*" и "AcDb*"
Код:
[Выделить все]
;;; удаление словарей ________________________________________

      (if (checked-p "dicts")
        (progn 
          (setq cnt 0)
          (foreach & (entget (namedobjdict))
            (or (/= 3 (car &))
                (wcmatch (strcase (cdr &)) "ACAD_*")
                (wcmatch (cdr &) "AcDb*")
                (dictremove (namedobjdict) (cdr &))
            )
          )
          (princ "\nСловари удалены")
        )
      ) ;_ конец if
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 03.12.2015, 22:29
#68
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
А как их пометить, чтобы данная программа их не посносила?
Эта возможность доступна в версии PRO. Шучу! Просто сейчас нет времени на доработку и к тому же каждая новая функция замедливает и без того не быстрый процесс очистки
gomer вне форума  
 
Непрочитано 03.12.2015, 23:02
#69
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Цитата:
Сообщение от VVA Посмотреть сообщение
Там в архиве есть lsp файл. Фрагмент удаления словарей ниже. Самое сложное определить имя или имена словарей Mep
В коде не удаляются словари "ACAD_*" и "AcDb*"
Видимо, надо добавить еще словари "AEC_", "AECB_", "AECS_"
Profan вне форума  
 
Непрочитано 04.12.2015, 00:53
#70
skkkk


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


Цитата:
Сообщение от VVA Посмотреть сообщение
Фрагмент удаления словарей ниже.
Вот и решение, похоже. От VVA обычно другого и не ждешь.
Цитата:
Сообщение от gomer Посмотреть сообщение
каждая новая функция замедливает и без того не быстрый процесс очистки
Думаю подобная проверка не займет сильно больше миллисекунды. А польза от нее ощутима.

Цитата:
Сообщение от Profan Посмотреть сообщение
Видимо, надо добавить еще словари "AEC_", "AECB_", "AECS_"
А по-хорошему вообще отрыть где-либо список всех возможных словарей из вертикалок (как минимум, префиксов) и тоже добавить.
Беглый поиск по Сети не увенчался у меня успехом, поэтому предлагается заинтересованным в топике обладателям вертикалок выудить их прям с поля боя. Этот пример из Полещука вернет список словарей:
Код:
[Выделить все]
 (mapcar 'cdr (vl-remove-if-not (function (lambda (x) (= (car x) 3))) (entget (namedobjdict))))
Однако, надо думать, что пока в чертеже не существуют, допустим
Цитата:
Сообщение от Profan Посмотреть сообщение
экранные представления AutoCAD MEP
- то и словаря этого нет. Но префиксы, думаю, можно для каждой вертикалки выловить таким образом.
А также надо не забыть добавить свои словари. И после этого спокойненько сносить все лишнее.
skkkk вне форума  
 
Автор темы   Непрочитано 04.12.2015, 01:22
#71
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
А по-хорошему вообще отрыть где-либо список всех возможных словарей из вертикалок (как минимум, префиксов) и тоже добавить.
не получится без геморроя
gomer вне форума  
 
Непрочитано 04.12.2015, 07:43
#72
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Может, убрать вообще удаление словарей из программы?
Profan вне форума  
 
Автор темы   Непрочитано 04.12.2015, 10:02
#73
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Profan Посмотреть сообщение
Может, убрать вообще удаление словарей из программы?
Можно просто снять соответствующую галку
gomer вне форума  
 
Непрочитано 04.12.2015, 16:20
#74
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Можно снять, если знаешь, что она зарубит проект. А если не знаешь? Тогда, дескать, закрывай чертежа без сохранения. Только безобразие это не сразу обнаруживается, можно случайно и сохранить по "вредной" привычке сохранять чертеж после каждого телодвижения.
Profan вне форума  
 
Автор темы   Непрочитано 05.12.2015, 15:01
#75
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Profan Посмотреть сообщение
А если не знаешь?
Что по-твоему нужно сделать?
gomer вне форума  
 
Непрочитано 05.12.2015, 17:27
#76
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


В предыдущей версии не было этого поля и как-то обходились. Да и в команде "_-PURGE" ("-ОЧИСТИТЬ") в опциях не упоминаются словари.
Profan вне форума  
 
Непрочитано 16.12.2015, 16:54
#77
НиРо


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


Андрей, большое спасибо, ты не представляешь, хотя наверно представляешь))), какое благое дело сделал для людей работающих в САПР! Ну прям кланяюсь до земли!!!!!!!
НиРо вне форума  
 
Непрочитано 06.02.2016, 11:06
#78
Maks63708


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


Спасибо!!!!!!!!!!!!!!!!!!!!
Maks63708 вне форума  
 
Непрочитано 06.02.2016, 14:25
#79
engngr

сети
 
Регистрация: 03.11.2008
Московия*
Сообщений: 5,781


А будет (есть?) вариант для _-, то есть без диалогового окна?
engngr вне форума  
 
Автор темы   Непрочитано 06.02.2016, 15:57
#80
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от engngr Посмотреть сообщение
А будет (есть?) вариант для _-, то есть без диалогового окна?
Такая возможность не планируется. Во первых потому, что параметров достаточно много, во-вторых, процесс очистки занимает много времени и давать возможность консольного управления - это обречь себя на непонимание пользователя... слишком много есть таких кто любит загружать всяких хлам при загрузке...
gomer вне форума  
 
Непрочитано 10.02.2016, 20:04
#81
Seeker

инженер-гидротехник
 
Регистрация: 13.04.2012
Москва
Сообщений: 126


Спасибо огромное gomer за программку.
Seeker вне форума  
 
Непрочитано 16.03.2016, 15:00
#82
vasilev666


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


Почему-то вместо слов в окне программы значки. Ни кто не сталкивался?
vasilev666 вне форума  
 
Непрочитано 16.03.2016, 15:21
#83
Кулик Алексей aka kpblc
Moderator

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


AutoCAD случайно не 2013, английский, и без SP?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.03.2016, 16:08
#84
vasilev666


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


Совершено верно.
vasilev666 вне форума  
 
Непрочитано 16.03.2016, 16:54
#85
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


AutoCad 2013 En, проблемы с кодировкой в программах.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 06.04.2016, 16:02 Очистка чертежа от мусора
#86
Bina2857


 
Регистрация: 06.04.2016
Электросталь
Сообщений: 2


А как загрузить CleanDWG.vlx в автокад 2016?
В 2013 все получилось, а в 2016 на (load"CleanDWG.vlx") пишет ошибка...Подскажите пожалуйста
Bina2857 вне форума  
 
Непрочитано 06.04.2016, 16:49
#87
trushev


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


Цитата:
Сообщение от Bina2857 Посмотреть сообщение
(load"CleanDWG.vlx") пишет ошибка
Может быть поможет один из вариантов:
1. В пакете загружающем lisp заменить (load "имя файла") на (load (strcat (getvar 'dwgprefix) "имя файла"))
Не понял почему, но после этого находятся и DCL и вспомогательные текстовые файлы.
2. В строку запуска программы с рабочего стола добавить ключ /s с путем к файлам поддержки Заменяет ранее установленные пути.
3. От Александр Ривилис, установить LEGACYCODESEARCH = 1.
trushev вне форума  
 
Автор темы   Непрочитано 07.04.2016, 17:34
#88
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Bina2857 Посмотреть сообщение
В 2013 все получилось, а в 2016 на (load"CleanDWG.vlx") пишет ошибка...
Что именно пишет после слова ошибка? Может денег просит?
gomer вне форума  
 
Непрочитано 21.04.2016, 14:36
#89
Ярко


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


Автокад 2016, при чистке чертежа программой, автокад виснет, в чем может быть проблема?
Ярко вне форума  
 
Автор темы   Непрочитано 21.04.2016, 16:35
#90
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Ярко Посмотреть сообщение
при чистке чертежа программой, автокад виснет, в чем может быть проблема?
Проблема в скорости выполнения программ на Visual LISP и количестве объектов в чертеже.
Решение - снять галку История твердых тел и Параметрические зависимости, они запускают механизм прополки всего чертежа
gomer вне форума  
 
Непрочитано 14.05.2016, 19:13
#91
doslidnik


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


AutoCAD 2008 - English SP1

После пользования утилитой CLEANDWG13 (даже при настройках по умолчанию) получаю чертеж с багом но не во всех файлах.
После печати из Layout и последующей попытки сохранения получаем ошибку
"FATAL ERROR: Unhandled e06d7363h Exception at 75a1c41fh"

Если ничего не печать то все сохраняется до первой печати.

Автокад 2011 либо ZWCAD 2014 c файлом и далее работают чудесно но 2008 автокад уже его не сохраняет.
Пересохранение в 2011 акаде на 2000, 2004 не помогает (2008 акад открьівает печатает но не может сохранить), аналогично ZWCAD и DWG TrueView.
Пробьівал даже сохранять в 2013 (через ZWCAD или DWG TrueView), а потом в 2007 или 2000 - результат открьітие 2008 акадом файл - открьіваеться но не сохраняеться.
Сохранение в dxf портит штриховки и не расматриваеться.

После удаления содержимого (без последующего _purge) чертеж с лейаутами ( Layout ) можно сохранить.
Содержимое Model также можно скопировать и вставить в новьій чертеж (все слои открьітьі и не замороженьі).
Потом копирование назад содержимого Model в чертеж с Layout восстанавливает сохранение чертежа 2008 акадом.

Если ничего не печатать все хорошо сохраняется.
Причину такой ошибки искал два дня.

---Updated
Ошибку получаем после первого сохранения и потом открьітия и попьітки сохранения
Какая галочка именно вызывает ошибку пока не понял
Нашел - Масштабы анотаций приводит к "FATAL ERROR: Unhandled Access Violation Reading 0x0000 Exaption ad 6237788dh" после сохранения, закрытия, открытия и сохранения

Последний раз редактировалось doslidnik, 15.05.2016 в 10:45.
doslidnik вне форума  
 
Автор темы   Непрочитано 17.05.2016, 21:57
#92
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от doslidnik Посмотреть сообщение
Нашел - Масштабы анотаций приводит к "FATAL ERROR: Unhandled Access Violation Reading 0x0000 Exaption ad 6237788dh" после сохранения, закрытия, открытия и сохранения
Если масштабы аннотаций удалить вручную, то ошибка сохраняется?
gomer вне форума  
 
Непрочитано 17.05.2016, 23:07
#93
Кулик Алексей aka kpblc
Moderator

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


Не должна. Это ограничение лиспа - пройтись лиспом по базе чертежа и проверить используемые масштабы за вменяемое время нереально.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.05.2016, 12:31
#94
doslidnik


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


Визуальные объекты -> Точки приводит к такой ошибке прораммы (Выбран только етот пункт)
Код:
[Выделить все]
Command: CLEANDWG

Очистка документа...
Command:
Automation Error. Invalid entity name"Automation Error. Invalid entity name"

Command:
Цитата:
Сообщение от gomer Посмотреть сообщение
Если масштабы аннотаций удалить вручную, то ошибка сохраняется?
Код:
[Выделить все]
Command: _AIOBJECTSCALEREMOVE

Select annotative objects: Specify opposite corner: 72041 found


Select annotative objects:

0 objects scale removed.
46 objects don't support annotation scale <1:1>.
46 objects cannot remove scale.
Если так
Код:
[Выделить все]
Select annotative objects:

Command: objectscale

Select annotative objects: Specify opposite corner: 72041 found

Select annotative objects:
то показывает в форме "Anotation Object Scale" в списке "Object Scale List" один маштаб "1:1"

Вот отработка cleandwg13
Код:
[Выделить все]
Command: cleandwg

Очистка документа...
Всего удалено визуальных объектов: 0
Удалено масштабов аннотаций: 33
Очистка завершена

Command:
После повторного открьітия и попьітки сохранить получим ошибку.

Нюанс - у меня 19 Лейаутов. Может из-за них?
Проверил в каждом лейауте(Layout) меню "Modify->Anotative Object Scale" не активно. Активно только в модели (Model).
Результат запуска cleandwg из Model и из Layout дает одинаковый результат (последующую ошибку при новом откытии чертежа).

Все слои открьітьі и область ZoomExtens.
Команда _AIOBJECTSCALEREMOVE всегда срабатьівала в проблемном чертеже но один раз нет.
Вот как-то получил такое после ~15-30го простоя чертежа. Закрьіл не сохраняя открьіл- Поменял автосохранениt на 1 минуту но такого не добилься.
[IMG]http://i.*******info/i9/f62dd30ef255e404ebe02fd65031b144/1463569979/10788/1035265/Bezymiannyi_240.jpg[/IMG][IMG]http://i.*******info/a3/2016-05-18-11-13/i9-9824752/240x172-r/i.gif[/IMG]

----- добавлено через 52 сек. -----
[IMG]http://i.*******info/i9/4e33d06423664d8e44c02898109ddf09/1463569979/16084/1035265/Bezymiannyi.png[/IMG]

Последний раз редактировалось doslidnik, 18.05.2016 в 14:16.
doslidnik вне форума  
 
Автор темы   Непрочитано 20.05.2016, 03:21
#95
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


насчет точек, у меня они корректно удаляются, насчет масштабов, все таки в 2008 они только появились и возможны баги.
gomer вне форума  
 
Непрочитано 22.05.2016, 12:48
#96
SlavaLu


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


gomer
Список словарей Мэпа здесь. Если ещё нужно.

Последний раз редактировалось SlavaLu, 22.05.2016 в 19:35.
SlavaLu вне форума  
 
Непрочитано 27.12.2016, 16:12
#97
linkrogers


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


А программка больше не развивается?

А то не понятно на сколько она с версией автокада 2017 сдружина.

Вот такая ошибка появляется при чистке файлов; Ошибка Automation. Недопустимое имя примитива
linkrogers вне форума  
 
Непрочитано 02.12.2017, 21:31
#98
superkot007


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


Хорошая штука.
А можно ее как-то допилить под пакетную обработку определенной папки?
superkot007 вне форума  
 
Непрочитано 02.12.2017, 22:33
#99
Кулик Алексей aka kpblc
Moderator

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


Можно. Допиливай, автор вряд ли будет против.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.12.2017, 23:33
#100
superkot007


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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Можно. Допиливай, автор вряд ли будет против.
Хороший ответ) Но суть вопроса в другом, как ты наверняка понял, - кто бы это мог сделать с соответствующей квалификацией и знаниями.
Тем более, что
Цитата:
Сообщение от gomer Посмотреть сообщение
... предложения приветствуются
Я попробовал свести это с http://dwg.ru/dnl/11817 - результат нулевой, из сотни файлов обрабатывается (?) только два, выдает ошибку, и новые файлы абсолютно чисты (глобально так почистилось )
superkot007 вне форума  
 
Непрочитано 03.12.2017, 00:34
#101
Сергей812


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


Кстати, разве вызовы vla-startundomark и vla-endundomark не должны идти парными группами? В лиспе метку завершения группы отмены вижу только в локальном обработчике *ERROR*.
Сергей812 вне форума  
 
Непрочитано 03.12.2017, 01:29
#102
skkkk


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


Сергей812, ну так *error* и вызывается принудительно в конце. Как меня в своё время учил gomer, если строчки друг друга повторяют, смысл приводить их два раза? Ладно тут только метка отмены. А если в коде нужно обеспечить возврат к первоначальным значениям нескольких десятков переменных? Повторять придется уже не одну строку. Подход gomer'a мне пришелся по душе и я его перенял.
skkkk вне форума  
 
Непрочитано 03.12.2017, 02:03
#103
Сергей812


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


не совсем логично вызывать в конце успешного завершения функции обработчик ошибок) Да и много он сэкономил строчек в данном случае? Из-за дополнительной проверки
Код:
[Выделить все]
 (if msg
      (princ (strcat "\n" msg))
    ) ;_ конец if
на две строчки больше.
Сергей812 вне форума  
 
Непрочитано 03.12.2017, 02:11
| 1 #104
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от superkot007 Посмотреть сообщение
кто бы это мог сделать с соответствующей квалификацией и знаниями.
Добро пожаловать в "Поиск исполнителей"
Да, кстати, пока сообразил: в Autodesk AppStore есть пакетные "чистилки" файлов.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.12.2017, 02:47
1 | 1 #105
skkkk


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


Offtop:
Цитата:
Сообщение от Сергей812 Посмотреть сообщение
не совсем логично вызывать в конце успешного завершения функции обработчик ошибок)
А с другой стороны не совсем, что ли, профессионально (или как правильней сказать) писать одни и те же куски кода более одного раза. Для меня тоже тогда такой подход показался странным.
Можно, конечно, добавить функцию, которая будет обеспечивать восстановление системы к первоначальному состоянию, ставить конечную метку отмены, удалять временные примитивы, делать регенерацию и т.д. и т.п., а затем вызывать ее в конце кода, или внутри обработчика ошибок. Логичнее? Пожалуй. Лаконичнее? Нет. Но более важный вопрос: это может чему-то помешать или быть в корне в чём-то неверным? Вряд ли. Поэтому принципиальной разницы в этих подходах не вижу. А экономия на дополнительных телодвижениях по созданию дополнительной функции возврата среды или повтору кусков кода в начале и в конце программы - налицо. Только и всего.


----- добавлено через ~11 мин. -----
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Добро пожаловать в "Поиск исполнителей"
Может, лучше для начала обратиться к gomer'у в личку? Кстати, сообщения в личке скорее всего, сопровождаются уведомлением на почту. Это к тому, что вдруг возникнут сомнения в частоте посещении им форума.
skkkk вне форума  
 
Непрочитано 03.12.2017, 08:22
2 | 1 #106
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Цитата:
Сообщение от superkot007 Посмотреть сообщение
кто бы это мог сделать с соответствующей квалификацией и знаниями.
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Да, кстати, пока сообразил: в Autodesk AppStore есть пакетные "чистилки" файлов.
Я использовал пару раз Drawing Purge там есть команда DWG-PURGE-BATCH
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 03.12.2017, 09:58
#107
superkot007


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


VVA, то, что доктор прописал, спасибо! Радует, что бесплатная, есть русский язык и куча настроек)
Минусов, правда, два - нужна установка (на работе все установки только админские) и поддержка с 2012 версии (многие сидят на 2008).
Хотя, установку, думаю, можно обойти, распаковав инсталлятор и прописав нужные пути в настройках AutoCAD...

Хотя не все так радужно - каждый файл при последующем открытии требует восстановления, если выбрать другую версию формата dwg

Последний раз редактировалось superkot007, 03.12.2017 в 12:50.
superkot007 вне форума  
 
Непрочитано 03.12.2017, 14:59
#108
Сергей812


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


Offtop:
Цитата:
Сообщение от skkkk Посмотреть сообщение
Поэтому принципиальной разницы в этих подходах не вижу. А экономия на дополнительных телодвижениях по созданию дополнительной функции возврата среды или повтору кусков кода в начале и в конце программы - налицо. Только и всего.
принципиальную разницу увидите, если придется копаться в чужом коде такого же "оптиматизатора") Для себя можно писать как удобно, конечно.
Сергей812 вне форума  
 
Непрочитано 23.04.2018, 21:04
1 | #109
Денис_Ск


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


Супер! Специально зарегился, чтобы спасибо Вам сказать. Все перепробовал - спасла только Ваша программа!
Денис_Ск вне форума  
 
Непрочитано 16.10.2018, 00:20
#110
Gregory_father


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


Подскажите, существует ли способ пакетной очистки группы файлов. Их более 100 шт., вручную долго...
Gregory_father вне форума  
 
Непрочитано 16.10.2018, 00:38
#111
Сергей812


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


Хм, что мешает прокрутить ветку назад до 106 поста?
Сергей812 вне форума  
 
Непрочитано 03.10.2019, 10:58
#112
allar8


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


Люди подскажите плиз, может есть киде готовое решение по очистке неактуального содержимого из диспетчера внешних ссылок? Т.е. задача удалять потерянные ссылки без вызова диспетчера вш. ссылок, т.е. как говорится в одно касание, т.е. одной командой.
allar8 вне форума  
 
Непрочитано 28.07.2020, 04:20
#113
КонстСергей

Проектировщик
 
Регистрация: 25.07.2020
Челябинск
Сообщений: 5


Впервые пытаюсь воспользоваться возможностями LISP. В данном случае - Вашим кодом.
Команда прошла (см. screen 1.png). Правда, слегка "ругнулась" в конце (см. screen 2.png).
После сохранения файла его объем - больше 8 Мб.
Что-то пошло "не так"?
Миниатюры
Нажмите на изображение для увеличения
Название: screen 1.png
Просмотров: 322
Размер:	40.5 Кб
ID:	228623  Нажмите на изображение для увеличения
Название: screen 2.png
Просмотров: 313
Размер:	6.1 Кб
ID:	228624  
КонстСергей вне форума  
 
Непрочитано 28.07.2020, 04:25
#114
КонстСергей

Проектировщик
 
Регистрация: 25.07.2020
Челябинск
Сообщений: 5


К предыдущему сообщению - сам файл

----- добавлено через ~2 ч. -----
Наконец получил ожидаемый результат.
Разработчикам кода - спасибо!
Вложения
Тип файла: dwg
DWG 2013
КР2.dwg (7.30 Мб, 39 просмотров)
КонстСергей вне форума  
 
Непрочитано 28.07.2020, 06:40
#115
futyn2


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


Почистил. Видовые экраны надо будет заново создать.
Вложения
Тип файла: dwg
DWG 2013
КР2_ч.dwg (316.3 Кб, 44 просмотров)
futyn2 вне форума  
 
Непрочитано 28.07.2020, 06:46
#116
КонстСергей

Проектировщик
 
Регистрация: 25.07.2020
Челябинск
Сообщений: 5


Цитата:
Сообщение от futyn2 Посмотреть сообщение
Почистил. Видовые экраны надо будет заново создать.
У меня удачно почистилось. Все, включая видовые экраны, сохранилось
КонстСергей вне форума  
 
Непрочитано 09.09.2020, 09:49
#117
danil19953


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


Спасибо, всё работает, у меня получилось сделать, результат есть. Теперь копирует быстро и размер файла уменьшился.
danil19953 вне форума  
 
Непрочитано 30.09.2020, 11:36
#118
pitbul


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


Дякую. Гарна штука
pitbul вне форума  
 
Непрочитано 20.01.2021, 12:32
#119
kiplilek

Проектировщик
 
Регистрация: 12.11.2015
Orenburg
Сообщений: 1


Спасибо! AutoCad 2014, файлы очищены от мусора. В работе с "грязными" файлами - просто глоток свежего воздуха.
Было: после копирования из другого файла dwg, файлы весили не меньше 4,5 Мб, даже если оставить одну линию и почистить пургеном, прокси и т.д. по списку из "dwg.ru - уменьшение размера dwg". Не понимаю, что удаляет программа, но после ее использования проблема с копированием исчезает!!!)
kiplilek вне форума  
 
Непрочитано 19.08.2021, 08:25 gomer Спасибо Дорогой!
#120
Роман Р.


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


Решил програмкой задачу которую месяца два пытался! Вот это СИЛА!!!
Роман Р. вне форума  
 
Непрочитано 19.11.2021, 07:25
#121
Gotch


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


Добрый день друзья.
Существует ли данная чистилка для акада 2021?
пробовал ее запустить на 2021 вылетает с ошибками
скрины ошибок приложил
Миниатюры
Нажмите на изображение для увеличения
Название: cleandwg ошибки акад 2021 1.jpg
Просмотров: 205
Размер:	16.1 Кб
ID:	242900  Нажмите на изображение для увеличения
Название: cleandwg ошибки акад 2021 2.jpg
Просмотров: 203
Размер:	16.5 Кб
ID:	242901  
Gotch вне форума  
 
Непрочитано 19.11.2021, 07:52
#122
Кулик Алексей aka kpblc
Moderator

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


Чему равна системная переменная LISPSYS? Попробуй поставить в 0
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2021, 07:55
#123
Gotch


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


она стояла 0 и сейчас так же 0
Gotch вне форума  
 
Непрочитано 19.11.2021, 09:47
#124
freese

ingénieur
 
Регистрация: 21.07.2008
Сообщений: 763


Цитата:
Сообщение от Gotch Посмотреть сообщение
Добрый день друзья.
Существует ли данная чистилка для акада 2021?
пробовал ее запустить на 2021 вылетает с ошибками
скрины ошибок приложил
загружать надо скомпилированный vlx, он отрабатывает нормально в 2021
freese вне форума  
 
Непрочитано 19.11.2021, 11:13
#125
Gotch


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


Запустил vlx
имею вот такие ошибки
Миниатюры
Нажмите на изображение для увеличения
Название: cleandwg ошибки акад 2021 3.jpg
Просмотров: 203
Размер:	20.5 Кб
ID:	242913  Нажмите на изображение для увеличения
Название: cleandwg ошибки акад 2021 4.jpg
Просмотров: 199
Размер:	19.5 Кб
ID:	242914  
Gotch вне форума  
 
Непрочитано 03.08.2022, 13:43
#126
nekt0Engineer


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


Доброго времени суток !
Подскажите, почему у меня данный LISP не работает? AutoCAD 2021. Ввожу команду CLEANDWG и ничего не происходит, возле командной строки сразу появляется три надписи: "отмена команды пользователем. Очистка завершена. Команда:"
Как исправить ? LISP загружал так же как и остальные до этого, все работают кроме этого
nekt0Engineer вне форума  
 
Непрочитано 03.08.2022, 15:04
#127
nekt0Engineer


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


Цитата:
Сообщение от freese Посмотреть сообщение
загружать надо скомпилированный vlx, он отрабатывает нормально в 2021
и как это сделать ?
nekt0Engineer вне форума  
 
Непрочитано 11.11.2022, 10:48 Работает!
#128
haza81


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


Спасибо! Помогло! Мучался с этой xepнeй последние лет 6 наверно.
Заработало у меня на 2008 автокаде!
haza81 вне форума  
 
Непрочитано 15.03.2023, 13:11
#129
jackUAROBEY

Проектировщик ВК
 
Регистрация: 18.09.2014
Анапа
Сообщений: 55


А под нанокад такая программка есть?
jackUAROBEY вне форума  
 
Непрочитано 15.03.2023, 13:13
#130
Кулик Алексей aka kpblc
Moderator

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


Попробуй эту запустить. Возможно, сработает.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 15.03.2023, 13:19
#131
jackUAROBEY

Проектировщик ВК
 
Регистрация: 18.09.2014
Анапа
Сообщений: 55


не не работает. VLX не видит а лисп не работает

----- добавлено через ~6 мин. -----
Команда: APPLOAD
APPLOAD,ЗАГПРИЛ - Загрузка приложения...
C:CLEANDWG
CleanDWG.lsp загружен. Команды: CLEANDWG

nil
Команда: CleanDWG

CLEANDWG - CLEANDWG
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
GETCFG функция не определена
Очистка документа...
Всего удалено визуальных объектов: 0
Очистка завершена
jackUAROBEY вне форума  
 
Непрочитано 15.03.2023, 13:57
#132
Кулик Алексей aka kpblc
Moderator

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


А, ну это не лечится. Только полная переделка всех обращений к getcfg / setcfg, раз уж они не реализованы в NC. ИМХО к автору.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 15.03.2023, 14:41
#133
kacugu

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


Цитата:
Сообщение от jackUAROBEY Посмотреть сообщение
А под нанокад такая программка есть?
Вот в этой теме на форуме нанокада выкладывали что-то похожее
https://forum.nanocad.ru/index.php?/...i-ne-pomogaet/
kacugu вне форума  
 
Непрочитано 13.05.2023, 22:48
#134
Project-gaz

Проектировщик газопроводов
 
Регистрация: 14.07.2017
Москва
Сообщений: 7
Отправить сообщение для Project-gaz с помощью Skype™


У меня Autocad 2017. Загружал файл CleanDWG.vlx. После нажатия кнопки ок в окне программы, в командной строке пишет:

Команда: _CLEANDWG
Очистка документа...
Всего удалено визуальных объектов: 0
no function definition: vlax-vla-object->ename"no function definition: vlax-vla-object->ename"

Если загружать CleanDWG.lsp, то пишет "Очистка документа...", но тоже ничего не чистит.
После сохранения размер файла (с одним отрезком) в 5МБ не изменился.
Может я что-то делаю не так?
Project-gaz вне форума  
 
Непрочитано 14.05.2023, 01:30
#135
skkkk


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


Цитата:
Сообщение от Project-gaz Посмотреть сообщение
no function definition: vlax-vla-object->ename
Похоже на то, что перед запуском _CLEANDWG нужно ввести в комстроке (vl-load-com).
Хотя, очень странно, что в компилированном лиспе от gomer'a не прописан этот вызов функции, которая загружает vla-расширение (в CleanDWG.lsp - есть), и дело может быть в другом.
skkkk вне форума  
 
Непрочитано 14.05.2023, 12:16
#136
Project-gaz

Проектировщик газопроводов
 
Регистрация: 14.07.2017
Москва
Сообщений: 7
Отправить сообщение для Project-gaz с помощью Skype™


skkkk, Когда ввожу к. строке "vl-load-com" пишет неизвестная команда. lsp и vlx загружены
Project-gaz вне форума  
 
Непрочитано 14.05.2023, 12:53
#137
Сергей812


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


Цитата:
Сообщение от Project-gaz Посмотреть сообщение
Когда ввожу к. строке "vl-load-com" пишет неизвестная команда.
чистильщиками реестра не пользовались перед этим?

----- добавлено через ~3 мин. -----
можно попробовать принудительно загружать vl.arx. Если и при этом не будет работать - переустановка акада скорее всего.
Сергей812 вне форума  
 
Непрочитано 14.05.2023, 14:06
#138
Project-gaz

Проектировщик газопроводов
 
Регистрация: 14.07.2017
Москва
Сообщений: 7
Отправить сообщение для Project-gaz с помощью Skype™


Сергей812, реестр вроде не чистил. А где взять этот vl.arx? и куда его установить?
Project-gaz вне форума  
 
Непрочитано 14.05.2023, 14:25
#139
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,408
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Project-gaz Посмотреть сообщение
skkkk, Когда ввожу к. строке "vl-load-com" пишет неизвестная команда. lsp и vlx загружены
В командной строке нужно вводить не vl-load-com, а (vl-load-com) (т.е. со скобками, так как это вызов lisp-функции, а не команда).
Александр Ривилис вне форума  
 
Непрочитано 14.05.2023, 14:29
#140
Project-gaz

Проектировщик газопроводов
 
Регистрация: 14.07.2017
Москва
Сообщений: 7
Отправить сообщение для Project-gaz с помощью Skype™


Александр Ривилис, Ввожу команду (vl-load-com), ничего не происходит:

Команда: *Прервано*
Команда: (vl-load-com)


Cleandwg пишет тоже самое:
Команда: _CLEANDWG
Очистка документа...
Всего удалено визуальных объектов: 0
no function definition: vlax-vla-object->ename"no function definition: vlax-vla-object->ename"

----- добавлено через ~2 мин. -----
Команда ARX - Файлы показывает, что vl.arx загружен
Project-gaz вне форума  
 
Непрочитано 14.05.2023, 14:36
#141
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,408
Отправить сообщение для Александр Ривилис с помощью Skype™


Project-gaz,
Увы, но похоже только переустановка AutoCAD (в режиме восстановления) может помочь.
Александр Ривилис вне форума  
 
Непрочитано 14.05.2023, 15:28
#142
Project-gaz

Проектировщик газопроводов
 
Регистрация: 14.07.2017
Москва
Сообщений: 7
Отправить сообщение для Project-gaz с помощью Skype™


Александр Ривилис, Эх жаль... У меня же там все настройки, макросы и т.п. слетят?
Project-gaz вне форума  
 
Непрочитано 14.05.2023, 16:00
#143
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,408
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Project-gaz Посмотреть сообщение
Александр Ривилис, Эх жаль... У меня же там все настройки, макросы и т.п. слетят?
Слетят конечно. Но у тебя похоже и так половина lisp-функций/команд не должна работать.
Александр Ривилис вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Очистка чертежа от мусора

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему очистка чертежа не выполняется при наличии Object Enabler? Xara AutoCAD 15 03.07.2014 11:50
Создание шаблона и очистка чертежа Сержик AutoCAD 9 14.02.2013 23:06
LISP. Как запустить LISP программу при создании чертежа по шаблону? (Автоматическое заполнение основной надписи) Do$ LISP 25 22.06.2011 15:39
очистка скана от мусора grozd62 Прочее. Программное обеспечение 4 04.04.2011 21:41
LISP для очистки чертежа от дублирующихся объектов Nikolays AutoCAD 5 13.12.2010 16:59