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

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

про макросы

Ответ
Поиск в этой теме
Непрочитано 01.03.2007, 13:30 #1
про макросы
qwertyu
 
Волгоград
Регистрация: 13.12.2006
Сообщений: 7

Подскажите пожалуйста, я уверен, что это минутное дело. Возьмем любой даже самый простой макрос, присвоим ему кнопку и далее нажимая эту кнопку
_-purge;_r;;_n; - к примеру
макрос работает, но нажимая по привычке кнопку enter срабатывает лишь команда purge, как это можно обойти?
Задаю такой вопрос в связи с тем, что иногда не удобно и наверное не нужно записывать в файл acad лисп программу например для обрезки:

(defun C:trimka (/ old2 old1)
(setq old1 (getvar "CMDECHO")
old2 (getvar "BLIPMODE")
)
(setvar "CMDECHO" 0)
(setvar "BLIPMODE" 0)
(command "_trim" "")
(setvar "CMDECHO" old1)
(setvar "BLIPMODE" old2)
(prin1)
)

Да и это наверное требует определенных ресурсов и все такое, хотя кому наверное как удобнее
Просмотров: 4712
 
Непрочитано 01.03.2007, 13:36
#2
Pilot

Проектировщик свиноводство
 
Регистрация: 21.08.2003
Сообщений: 2,291


Правильно. Enter после макроса повторяет его первую команду.

Повтор макроса - из контекстного меню по правой кнопке крысы:
[ATTACH]1172745386.jpg[/ATTACH]
Pilot вне форума  
 
Непрочитано 01.03.2007, 13:40
#3
Геннадий aka PG

Машиностроение, Проектирование
 
Регистрация: 15.09.2003
Москва
Сообщений: 1,113
<phrase 1=


а в Скобочки взять если?
__________________
С уважением,
Геннадий aka PG
Геннадий aka PG вне форума  
 
Непрочитано 01.03.2007, 13:45
#4
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Через Toolpalletes повтор всего макроса по правой кнопке
Vova вне форума  
 
Непрочитано 01.03.2007, 14:17
#5
Pilot

Проектировщик свиноводство
 
Регистрация: 21.08.2003
Сообщений: 2,291


Цитата:
Сообщение от Геннадий aka PG
а в Скобочки взять если?
Кого в скобочки?
Pilot вне форума  
 
Автор темы   Непрочитано 02.03.2007, 11:14
#6
qwertyu


 
Регистрация: 13.12.2006
Волгоград
Сообщений: 7


:roll: а правда какие скобочки? Поясните пожалуйста
qwertyu вне форума  
 
Непрочитано 02.03.2007, 16:48
#7
Krieger

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


qwertyu
Сделай такой макрос:
Код:
[Выделить все]
(defun c:pur (command "_-purge" "_r" "" "_n"));pur
Krieger вне форума  
 
Непрочитано 02.03.2007, 17:25
#8
Геннадий aka PG

Машиностроение, Проектирование
 
Регистрация: 15.09.2003
Москва
Сообщений: 1,113
<phrase 1=


Сорри!
PURGE не работает в дизель-выражениях
Прокатит вариант Krieger
__________________
С уважением,
Геннадий aka PG
Геннадий aka PG вне форума  
 
Непрочитано 02.03.2007, 18:38
#9
Profan


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


Забыл Krieger кое-что:
Код:
[Выделить все]
(defun c:pur () (command "_-purge" "_r" "" "_n"));pur
Profan вне форума  
 
Непрочитано 02.03.2007, 20:35
#10
Krieger

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


Цитата:
Сообщение от Profan
Забыл Krieger кое-что:
Krieger вне форума  
 
Непрочитано 27.10.2007, 01:02
#11
ktif


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


Mожет кто подскажет, как сделать, что бы команда "_layer", в скобочках, работала так же, как и без скобочек?
ktif вне форума  
 
Непрочитано 27.10.2007, 09:01
#12
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от ktif Посмотреть сообщение
Mожет кто подскажет, как сделать, что бы команда "_layer", в скобочках, работала так же, как и без скобочек?
А перевод?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.10.2007, 11:32
#13
Krieger

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


Цитата:
Сообщение от ktif Посмотреть сообщение
Mожет кто подскажет, как сделать, что бы команда "_layer", в скобочках, работала так же, как и без скобочек?
5 баллов!
Я конечно ничего не понял, но может с тире попробывать:
"_-layer"
Krieger вне форума  
 
Непрочитано 27.10.2007, 22:24
#14
ktif


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


Без скобочек, после ввода команды "_layer", появляется окошко. А со скобочками - в командной строке появляется надпись:Enter an option
[?/Make/Set/New/ON/OFF/Color/Ltype/LWeight/Plot/Freeze/Thaw/LOck/Unlock/stAte]:
ktif вне форума  
 
Непрочитано 27.10.2007, 22:32
#15
Кулик Алексей aka kpblc
Moderator

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


В каких "скобочках"? Переведи!
То, что ты нарисовал, появляется после ввода в ком.строку
Код:
[Выделить все]
Command : _.-layer
И "скобочки" нафиг не требуются.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.10.2007, 23:00
#16
ktif


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


Есть необходимость, что бы перед командой _extrude, всегда появлялась окошко layer propoties manager. Если написать макрос: ^C^C_layer;_extrude, то окошко появляется после нажатия на кнопку _extrude. А вот нажимая правую кнопку мыши (для повторения команды) повторяется только команда «выдавить».
Если сделать, как предлагает Геннадий aka PG, то вместо окошка со свойствами слоев появляется надпись в командной строке.
ktif вне форума  
 
Непрочитано 27.10.2007, 23:43
#17
Кулик Алексей aka kpblc
Moderator

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


Ну наконец-то...
Код:
[Выделить все]
(defun c:modextrude (/ adoc)
  (vla-sendcommand
    (vla-get-activedocument (vlax-get-acad-object))
    "_.layer "
    ) ;_ end of vla-sendcommand
  (while (/= (logand (getvar "cmdactive") 31) 0)
    (command pause)
    ) ;_ end of while
  (vla-sendcommand (vla-get-activedocument (vlax-get-acad-object)) "_.extrude ")
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.10.2007, 23:51
#18
ktif


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


Повторение последней команды (правая кнопка мыши) вызывает команду "выдавить", без layer propoties manager???
ktif вне форума  
 
Непрочитано 28.10.2007, 00:19
#19
Кулик Алексей aka kpblc
Moderator

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


Тогда я пас.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > про макросы