|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
03.09.2008, 15:56 | #1 | |
ExpressTools Bugs ( Ошибки ExpressTools )
Инженер LISP
Минск
Регистрация: 11.05.2005
Сообщений: 6,990
|
||
Просмотров: 120277
|
|
||||
BURST (исправлена 13.04.2011).
Вводная: В блоке есть примитивы с типом линии "byblock". Блок расположен не на 0 слое и явно или через слой ему задан тип линии, отличный от "continuous" Проблема: Если делать Burst таким блокам, то тип линии теряется, хотя в программе (burst.lsp) эта ситуация обрабатывается Ошибка: В коде идет сравнение типа линии (группа 6) с "BYBLOCK", хотя в описании блока эта строка хранится как "ByBlock". Естественно условие никогда на выполнится. Исправленная версия находится в файле bursfix.lsp. Можно переименовать в burst.lsp и заменить стандартный в папке Express Tools. В файле burstfix.dwg находится пример. Сделайте burst блокам ниже надписи BURST it and look at result сначала стандартным BURST из Express Tools, затем BURST из burstfix.lsp и сравните результат. Изменения в файле помечены как ;_Rem by VVA ;_Change by VVA *** Добавлено 09.02.2009 Внес изменения. Выложено 2 файла Файл burstfix.lsp - исправлена ошибка наследования примитивом с типом линии BYBLOCK типа линии блока, вес линий, проверка на vla-get-explodable (см #12) Файл burstfix.dwg примеры. Дана таблица сравнения работы команд Burst из Express Tools и BurstFix. В файле burstfix.dwg одну строчку блоков взорвать Burst из Express Tools, вторую Burst из BurstFix и сравнить с примером. *** Добавлено 20.03.2009 Исправлено Атрибуты и Видимости ( Visibility ) динамического блока. См. пример *** Добавлено 09.10.2009 Исправлена ошибка в соответствии с #22 *** Добавлено 09.06.2010 Изменения в соответствии с #33 *** Добавлено 13.04.2011 Обработка многострочных атрибутов. Пример см здесь Подробнее читать пост №7 Применение: Переименовать burstfix.lsp в burst.lsp и заменить в папке Express Tools Дальнейшее развитие - сборник LISP. Подготовка подосновы
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 18.09.2014 в 22:40. Причина: Обработка многострочных атрибутов |
||||
|
||||
В общем то основное про CLIPIT было сказано здесь:
Wipeout, дуги и окружности Возможно будут просто некие исправления редакционного характера.
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 03.09.2008 в 16:16. |
||||
|
||||
При маскировка текста иногда текст исчезал. Причины:
1. Связано было с тем, что по какой-то причине не удалялись расширенные (РД) данные о маскировке текста Добавил строчку принудительного удаления РД ACET-TEXTMASK2. Непонятно откуда взявшаяся группа 284 см. тему dxf код 284 Добавил функцию удаления "вредных" групп vva-prepare-text-list3. Аннотативность текста - читать Неадекватность работы TEXtMASK
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 02.07.2014 в 14:00. Причина: Новая версия textmaskmip.lsp |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772
|
Тему перевести, может, в "Важные"? Уж больно интересно...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
В конечном итоге хотелось бы чтобы в 2010 Автокаде все это было исправлено. По textmask постараюсь побыстее отписаться. Вся проблема в примере. По рукой сейчас нет. А получится или нет быстро не знаю.
Суть проблемы в том, что применяя TEXTMASK текст просто исчезает. Если у кого есть такой чертеж, то просьба выложить сюда. Ссылки на проблему Textmask Deletes Text Textmasking erases text http://discussion.autodesk.com/threa...sageID=5247366
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Уточню сказанное VVA чтобы стала понятной важность исправленной им ошибки для рядовых автокадчиков, всех теток и дядек.
Допустим, есть блок. Пусть его три элемента сделаны так: первый-прерывистой линией Hidden. Второй-типом линии byLayer, третий-ByBlock. Все это лежит в слое 0 и из них сделан блок. Вставляем блок в слой "A", тип линии которого Zigzag. Получим: первый элемент Hidden. Второй и третий-Zigzag. Поменяем блоку свойство Тип линии, на Dashdot. Первый элемент останется Hidden. Второй останется Zigzag. Третий станет Dashdot. Но это все прописные истины. А мы-тетка, и нам приспичило блок взорвать. На дух не переносим, не знаем что с ним делать и так далее. Короче, Explode (Расчленить). Что получим? Первый останется Hidden. Второй и третий.... превратятся в сплошные. Причем неважно, меняли-ли до этого свойства блоку или нет. То есть начерченное ранее поменяло информацию, возможно, очень важную с точки зрения автора чертежа. Кроме того, если в блоке есть атрибуты, то их слова поменяли содержание. При расчленении блока командой Explode может получиться не только куча разрозненных объектов, но и потеряться важная информация. Так и скажите своим теткам. Есть малоизвестная команда из Express. называется Burst. Она предназначена для взрыва блока и при этом атрибуты преврaщаются в текст. То есть не теряется текстовое содержание. Правда, при этом вылезают и невидимые атрибуты, то есть может проявится ненужная инфа. Об этом HELP умалчивает. И ничего не сказано о том, что команда была задумана так, чтобы подрывать блок и оставлять при этом типы линий такие, которые имел блок до подрыва. Потому и не сказано, что авторы не довели до конца задумку. Ошибка обнаружилась при нашей совместной с VVA работе над одной прогой, которая должна облегчить жизнь при..... Но пока молчу. А пока сделайте подарок своим теткам. Исправьте у них в Экспрессах лисп Burst.lsp и слезно попросите вместо Explode для блоков применять Burst Если заинтересовала информация о расчлененке то напоминаю o существовании команды _Xplode (взорвать). Кто и что про нее может сказать? |
|||
|
||||
Регистрация: 13.06.2008
Сообщений: 14
|
с 2007 акада из expressa исчезли работа со слоями и команда pljoin работает неверно, вот исправления -
в команды работы со слоями внесены изменения: layoff -при выборе активного слоя по умолчанию предлагается ответ <YES> layulk -разблокирует все слои а не только те что указаны +добавлены иконки для вынесения на toolbar |
|||
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Есть ещё баг с OVERKILL, на который я когда-то натолкнулся. Описано здесь:
http://dwg.ru/f/showpost.php?p=235685&postcount=185 VVA, у тебя нет желания с этим поразбираться? Добавлено: Вот комментарии Kpblc'a по этой трабле: http://dwg.ru/f/showpost.php?p=235726&postcount=187 |
|||
|
||||
Внес изменения в #2. Выложил 2 варианта burst. С исправлением только наследования типа линии (burstfix.lsp) и исправлением наследования типа линии и удалением невидимых атрибутов (burstfix+Attr.lsp).
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 09.06.2010 в 17:04. Причина: Неактуально |
||||
|
||||
Цитата:
__________________
Блог |
||||
|
||||
Выдает ошибку, не находит функцию (vla-get-explodable).
AutoCAD 2005 En. У меня что, что-то не установлено?
__________________
Reshaping the STEM field |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772
|
Свойство "разбиваемости" блоков появилось только в 2006-м, кажется.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Сто двадцать девятый луч смерти в Автодеск - пошел.
__________________
Reshaping the STEM field |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772
|
Да вбей элементарную проверку на версию:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Проверил, в burst 2005 нет функции explodable, в 2006 есть. Надо добавлять проверку
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Обновил #2
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Внес исправления #2. Обработка атрибутов и Visibility динамических блоков.
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 06.08.2008
Сообщений: 30
|
Замечена некорректная работа команды "TCASE": при изменении регистра букв, буквы"Ё,Я,Ч" не меняют своего регистра(Остаются заглавными)см.видео.
AutoCad 2008RUS,2009RUS ps. исправьте пожалуйста ,если это возможно... Последний раз редактировалось kshatriy, 02.10.2009 в 09:41. |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
К сожалению это не ошибка express'ов в Autolisp есть встроенная функция (strcase) которая переводит строку в нижний\верхний регистр, с ней-то именно эти быквы и не работают, ее можно переназначить НО в автолиспе ПОЧЕМУ-ТО не предусмотренно создания пользовательских функций с произвольным числом аргументов а внутреннея strcase - именно такая - то есть по умолчанию второй аргумент принимаеться как nil. Но экспресы запускают ее всегда в 2 агрументами, то есть 3 пути решения втавить свою лисп функцию с 2 аргументами - экпрессы заработают, но возможно в других лиспах вызывающих strcase с одним аргументов будет ошибка, переписать функцию на чем-либо более продвинутом (типа net - но я его не знаю) с поддержкой разного числа аргументов, либо-же создать доп. фнкцию (например strcaseru), попросить VVA (он в этом мастер), найти где идет вызов (strcase) и переправить на strcaseru.
Код:
__________________
Когда в руках молоток все вокруг кажется гвоздями. Последний раз редактировалось Дима_, 02.10.2009 в 12:35. |
|||
|
||||
Регистрация: 06.08.2008
Сообщений: 30
|
Цитата:
Код:
|
|||
|
||||
обновил #2
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Из этой темы: Помогите исправить программу под 2010 версию
Цитата:
Код:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 18.02.2010 в 12:59. |
||||
|
||||
Регистрация: 01.02.2008
Сообщений: 170
|
а у меня возникает ошибка в команде copym.
при копировании с равным шагом (measure) этот самый шаг часто не соблюдается. Т.е. получается один шаг где-то отличный от заданного , а остальные соответствуют. Последовательности не заметил - иногда нормально, иногда где-то один пролет изменяет расстояние. приходится постоянно менять точки начала отсчета и конца раскладки - помогает. acad 2009 , но замечал и на 2007 такую же пакость. |
|||
|
||||
human, Может быть это поможет Alternative copy
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772
|
В качестве первого приближения:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
инженер-проектировщик КИПиА Регистрация: 30.08.2008
Минск
Сообщений: 159
|
burst
еще надо бы заменить (if (zerop (logand (cdr (assoc 70 AENT)) 1)) ...) на (if (or (zerop (logand (cdr (assoc 70 AENT)) 1)) ;_Change by VVA Attr fix 03.09.2008 Not hidden attribute (zerop (logand (cdr (assoc 70 AENT)) 9)) ;_Add kakt00z 1.06.2010 ) ... если аттрибут скрытый+установленный может есть и еще продолжения с вариантами аттрибутов, но я не сталкивался PS: интересно, а что за нужда заставляет всех разбивать свои любимые, долго вымученные, годами продуманные блоки? неужели архив? |
|||
|
||||
Исправил #2
При подготовке подосновы приходится разбивать чужие, через одно место сделанные блоки.
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Попробовал запустить OVERKILL в редакторе блоков в автокаде 2010 (в других версиях не пробовал). Работа программы прервалась ошибкой:
Код:
|
||||
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Do$, я уже писал об этомв посте №9 в этой теме. Но напомнить не лишним будет конечно, т.к. проблема не решена. (хотя тупое решение можно сразу дать - обернуть код OVERKILL условием, проверяющим значение переменной BLOCKEDITOR. Если она равна 1, то ничего не выполнять, а выводить на экран только alert "в редакторе блоков OVERKILL не работает")
|
|||
|
||||
Makswell, Наверное это правильное решение, т.к. в редакторе блоков может быть только одна система координат - самого блока.
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 17.06.2010
Сообщений: 438
|
Autocad 2008 + sp1, русский, Express Tools не установлен.
Скачал burstfix из 2-го сообщения, загрузил, вбил burst, получил Код:
ЗЫ ACET - AutoCad Express Tools? Если так, извините за глупый вопрос И так понятно, что нужно сделать. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772
|
Eu, ты это к чему?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Конструктор Регистрация: 06.04.2005
Из тех ворот-откуда весь народ.
Сообщений: 356
|
Так что же надо было сделать в посте #38?Kак заставить работать burst без Expresstools ?
__________________
"Мнение не бывает ни истинным, ни ложным, а лишь полезным в жизни или бесполезным. ",- Ауробиндо И не надо делать удивленных движений руками. |
|||
|
||||
Ничего не сделаешь, надо устанавливать Express Tools.
Ну как вариант - п о и с к и подгрузка только необходимых для burst файлов lsp,arx и пр. Но зачем так извращаться, если можно просто установить Express Tools? |
||||
|
||||
Цитата:
Происходит это только с текстами со стилем на основе асконовского шрифта GOST_B.TTF. Если у замаскированного текста сменить вручную стиль, то текст появляется - пока так выкручиваюсь. В чем может быть проблема? |
||||
|
||||
Архитектор Регистрация: 11.03.2009
Новороссийск
Сообщений: 99
|
Пред история:
Однажды читая форум, набрел на эту тему, скачал архивчик: Цитата:
Помогите разобраться где нужно подправить, методом тыка выяснил что все из-за файла acetauto.lsp |
|||
|
||||
Архитектор Регистрация: 11.03.2009
Новороссийск
Сообщений: 99
|
1. LAYLOCKFADECTL=84, дело в lsp-файлах. Попробуйте скопировать с заменой эти файлы в папку с Express и изолировать обьект
2. OVERKILL IN AUTOCAD NOW = разобрался, acetauto.lsp поправил |
|||
|
||||
Спасибо за исправленный Burst! Очень кстати оказался.
Обнаружился только один неприятный момент - если у блока масштабные коэффициенты равны по абсолютному значению, но не равны по знаку (такое бывает, если блок "зеркалить"), то у полилиний терялось свойство "глобальный вес". На скорую руку подправил функцию BURST-ONE. UPDATE: В BGTolls подглядел, как правильно "взрывать" блоки. Снова спасибо VVA! UPDATE1: Полностью перелопатил всю программу, т.к. нужно было зараз тысячи блоков расчленять. Теперь на несколько тысяч блоков вместо десятков минут тратится пара. Код выкладываю на обсуждение (или осуждение ) UPDATE2: Обнаружился "косяк": если у какого-либо из свойств атрибута значение "ByLayer" (по слою), и текущее значение в чертеже этого свойства не "ByLayer", то после BURST у этого свойства полученного текста будет значение такое же, как текущее в четреже а не наследованное от слоя атрибута или слоя блока. Нашел причину - в функции att-text при использовании функции entmake если у атрибута нет группы 62, 6 или 370, то они берутся из текущих свойств чертежа. UPDATE3: "Косяк" исправил. Файл перезалил. Последний раз редактировалось Do$, 03.02.2012 в 13:09. |
||||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Express Tools | Perezz!! | AutoCAD | 483 | 13.02.2015 10:57 |
Исчезновение части Express Tools | SlayERR | AutoCAD | 4 | 09.10.2006 15:55 |
Express tools под Acad2005 | AutoCAD | 16 | 18.07.2004 01:58 | |
express tools для autocad 2005 | Савва | AutoCAD | 5 | 01.04.2004 09:52 |
Не загружается меню Express Tools. | Mikhail | AutoCAD | 3 | 17.10.2003 14:16 |