| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Она уже работает. Это не макрокоманда, а нормальное описание Lisp-функции.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 28.01.2013
Минск
Сообщений: 379
|
|
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Цитата:
|
|||
|
||||
Регистрация: 11.12.2013
Сообщений: 9
|
Приветствую.
Стоит конкретная задача преобразовать содержимое dxf в другой вид. Прилагаю исходный и конечный файлы. Моя последовательность действий приведена ниже. Что из этого можно выполнить макросами, а что нет? Можно ли одним или несколькими макросами с перерывами на манипуляции вручную? Еще не всю тему прочел, и вообще только учусь. Прошу ткнуть носом, где читать про каждый конкретный случай (если есть такой). Автокад 2010 рус, но файлы формата акад2004 если это важно. формат - стиль текста STANDART был txt.shx - стал win_eskd.shx- применить - закрыть формат - отображение точек - круг с точкой размер 0.25 в абсолютных единицах формат - единицы чертежа - десятичные, 0.000, метры, Град/Мин/Сек, 0d00'00", общие создать слой - PI_OT0 создать слой - PI_ST0 создать текстовый стиль SHRFT - win_eskd.shx, высота 0.95, коэф. сжатия 0.85, угол наклона 15d быстрый выбор - все полилинии - удалить быстрый выбор - весь текст с цветом 0,0,255 - переместить в слой PI_OT0 и поменять стиль на SHRFT, высота 1, цвет по слою, положение Z=0 быстрый выбор - все точки - положение Z=0 - переместить в слой PI_ST0 быстрый выбор - слой подписи точек - стиль STANDART сдвинуть слой PI_OT0 влево на 0.5 вверх на 0.3 сдвинуть слой подписи точек влево на 1.2 очистить - удалить все - все Еще дополнение можно ли на одну кнопку повесить замораживание и размораживание одного слоя? А то у меня две кнопки ^C^C_-layer;_freeze;NAD_M0;; Заранее спасибо |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Цитата:
Системные переменные pdmode, pdsize Команда _.-units, системные переменные lunits, aunits, luprec, auprec, insunits, insunitsdefsource, insunitdeftarget Команда _.-layer Команды, по-моему, нет (кроме _.qselect, у которой есть только диалоговый режим работы). Решается лиспом / vba / .NET / arx Сдвинуть слой невозможно. Только объекты слоя. Попробуй заблокировать все слои, кроме нужного, потом _.select _all и команда _.move Тут что запрашивается? _.-purge, что ли?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 11.12.2013
Сообщений: 9
|
Почему-то файлы не приложились к предыдущему сообщению, ну, впрочем, они и не нужны.
Спасибо за помощь. Получилось это: первая часть ^C^C'_.zoom _e;_.-style STANDARD win_eskd.shx;0;0.85;;;;_.-style SHRFT win_eskd.shx;0;0.85;15;;;lunits 2;aunits 1;luprec 3;auprec 3;insunits 6;insunitsdefsource 6;pdmode 32;pdsize 0.25;_.-layer;Н;PI_OT0;;_.-layer;Н;PI_ST0;;flatten;_all;;n; вторая часть вручную быстрым выбором раскидываю по слоям и меняю стили текстов, _change _chprop этими командами можно как то? и и третья часть _-layer;_freeze;*;;_-layer;Р;Подписи точек;;_move;_all;П;-1.2,0;;_-layer;_freeze;*;;_-layer;Р;PI_OT0;;_move;_all;П;-0.8,0.2;_-layer;Р;*;; про то, что сдвинуть слой это действительно я коряво написал ну и _.-purge;итд Где посмотреть перевод всех команд рус и англ акада? Чтобы не использовать русские буквы _.-layer;Н [Новый] или _-layer;Р [Разморозить], _move;_all;П, итд. Чем отличается пробел от ввода и от ; в макросе? Минус как я понял, чтобы не выводить диалоговое окно если оно есть. До книги язык макрокоманд еще не дошел, но скоро дойду. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Советую поставить английскую локализацию и на ней ставить эксперименты
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Насчет перевода в виде списка "англ-рус" в одном месте не знаю, но можно смотреть в английской справке, а если трудности с переводом возникнут, то подглядывать в русскую.
|
|||
|
||||
сп. САПР, архитектор Регистрация: 25.05.2008
Санкт-Петербург
Сообщений: 116
|
__________________
"лучше" или "хуже" - понятия относительные |
|||
|
||||
Проектирование мостов Регистрация: 29.01.2014
Новосибирск
Сообщений: 433
|
Не могу понять в чём дело.
^C^Cusers1;$m=$(Getvar,Clayer);_Clayer;Выноски;_Line;\\;_Clayer;$m=$(Getvar,users1); По идее в конце должен возвращаться слой, активный до начала выполнения макроса. На практике же, слой принимает ПРЕДЫДУЩЕЕ значение переменной Users1. В чем соль? ----- добавлено через ~4 мин. ----- Ах да, Автокад 2015 рус Последний раз редактировалось RNB, 25.02.2015 в 09:47. |
|||
|
||||
Проектирование мостов Регистрация: 29.01.2014
Новосибирск
Сообщений: 433
|
Спасибо! Можно даже чуть короче
Код:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Макросом - по-моему, никак.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,826
|
Можно, но не нужно. В моем случае слой создается. Поэтому код будет работать даже в чертежах где нет этого слоя.
Это лисп нужен. А вообще есть ведь tool palettes, там на кнопках можно слой задать.
__________________
Делай хорошо, плохо само получится. |
|||
|
||||
Проектирование мостов Регистрация: 29.01.2014
Новосибирск
Сообщений: 433
|
Жаль. Ну что ж, давно хотел взяться за лисп. "Валера, настало твоё время"
----- добавлено через ~11 мин. ----- Цитата:
Цитата:
----- добавлено через ~4 ч. ----- Цитата:
|
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,826
|
Цитата:
Код:
__________________
Делай хорошо, плохо само получится. |
|||
|
||||
Проектирование мостов Регистрация: 29.01.2014
Новосибирск
Сообщений: 433
|
Отлично! Спасибо! Я уже сделал, но по сравнению с этим - через .... Добавлю обработчик ошибок и буду радоваться
Последний раз редактировалось Кулик Алексей aka kpblc, 26.02.2015 в 15:45. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Так ведь в статусной строке выводится соответствующий переключатель, нет?
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Мои динамические блоки | Shoorup | Динамические блоки | 2713 | 21.04.2011 23:34 |
Повторение выполнения макрокоманды по циклу. КАК? | Kostinok | AutoCAD | 12 | 05.12.2007 15:40 |
Мои проекты | Vova | Разное | 10 | 08.10.2007 23:18 |
Мои палитры инструментов на соседний компьютер | Pave1 | AutoCAD | 4 | 27.06.2006 09:45 |