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

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

макрос на кнопку для Point Filter .z

Ответ
Поиск в этой теме
Непрочитано 13.05.2009, 12:42 #1
макрос на кнопку для Point Filter .z
sasha_lif
 
Дизайнер-конструктор
 
Kiev
Регистрация: 29.05.2004
Сообщений: 1,179

Подскажите, как навесить на кнопочку последовательность действий для возможности перемещения или копирования объектов только в плоскости xy , без их смещения по z при использовании привязок к другим объектам.
Т.е . как применить фильтр .z чтобы объект при перемещении не сдвигался по z
что-то типа:
Код:
как продправить чтобы работало, и как учесть, если на обычном move вмсит макрос
Код:
[Выделить все]
$M=$(if,$(eq,$(substr,$(getvar,cmdnames),1,4),grip),_move,^C^C_move)
__________________
Kiev, Ukraine
Просмотров: 4815
 
Непрочитано 13.05.2009, 12:51
#2
Profan


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


А если использовать переменную OSNAPZ?
Profan вне форума  
 
Автор темы   Непрочитано 13.05.2009, 12:56
#3
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


1000 извинений:
1= Автокад 2004, там этой команды нет
2= пожалуй место этому сообщению, в разделе программирование, сразу не увидел, что лучше там писать...
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 13.05.2009, 13:15
#4
Кулик Алексей aka kpblc
Moderator

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


Тема перемещена.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 13.05.2009, 15:05
#5
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


и попутно вопрос, для макроса имеет значение, как я выбираю объекты: Секущим окном или указанием прямо на объект (т.е. влияет ли это на кол-во косых черточек \ или \\), как это учесть?
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 14.05.2009, 13:09
#6
AlphaGeo


 
Сообщений: n/a


Цитата:
Сообщение от sasha_lif Посмотреть сообщение
и попутно вопрос, для макроса имеет значение, как я выбираю объекты: Секущим окном или указанием прямо на объект (т.е. влияет ли это на кол-во косых черточек \ или \\), как это учесть?
Проще будет перед запуском команды в макросе сформировать набор объектов командой _SELECT, воспользовавшись широким набором опций этой команды
Код:
[Выделить все]
Команда: _select

Выберите объекты: /


*Неверный выбор*
Требуется точка или 
Рамка/Последний/Секрамка/БОКС/Все/Линия/РМн-угол/СМн-угол/Группа/Добавить/Исключ
ить/Несколько/Текущий/Отменить/Авто/Единственный/ПОДобъект/Объект
А при выполнении основной команды при выборе объектов указать _Last вместо \, что активирует последний набор.
 
 
Автор темы   Непрочитано 14.05.2009, 16:32
#7
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


AlphaGeo, что то не так: беру select выбираю объекты, enter, беру команду move, пишу last, а акад выбирает НЕ МОИ ранее выбранные объекты, а ПОСЛЕДНИЙ НАРИСОВАННЫЙ объект
а подскажи как подправить
Цитата:
_move;\;.z;;
, в принципе , это что то элементарное, но я запутался , пока читаю книгу Света
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 14.05.2009, 17:21
#8
VVA

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


sasha_lif, Надо не _Last, а _P (Previuos или Текущий)

*** Добавлено
1. Командой _Select формируешь набор
2. Используешь макрос

Код:
[Выделить все]
^^C^C_move;_P;;\.Z;@;
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 14.05.2009 в 17:32.
VVA вне форума  
 
Автор темы   Непрочитано 14.05.2009, 17:45
#9
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


VVA, Да работает!!! (правда первый раз что-то и по z двинуло, но сейчас только в плосоксти xy, будем считать моим глюком)
А можно ли сделать, что бы без предварительного выбора _select а прямо в ходе выполнения команды я мог выбирать объекты, причем или указанием на объект, или секущей рамкой?? Ну или я вначале выделяю объекты, а акад с помощью
Цитата:
^^C^C_move;_P;;\.Z;@;
переносит... Но так не срабатывает ...
Т.е еще раз формулируя задачу:Я хотел, что бы я мог ИСПОЛЬЗУЯ привязки одного объекта, переместить его хитрой командой _move используя привязки к другому объекту, но координата z осталась его первоначальная. (см. рис.) обычно в таком случае объект привязывается и по z. (Акад 2004+sp1)

А если переходить на акад 2008 и применять переменную OSNAPZ, можно ли как то применить клавишу SHIFT (т.е если ее зажать+_move- то перемещение только по xy; если ее не нажимать , а только _move, то работает и по плоскости z )??
Т.е возможно ли сделать так , что бы при нажатом Shift временно установилось OSNAPZ=1??
Миниатюры
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 85
Размер:	51.5 Кб
ID:	20378  
__________________
Kiev, Ukraine

Последний раз редактировалось sasha_lif, 14.05.2009 в 18:29.
sasha_lif вне форума  
 
Непрочитано 14.05.2009, 18:43
#10
VVA

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


Код:
[Выделить все]
^C^C(if(setq ss nil ss (ssget))(command "_.Move" ss "" pause ".Z" "@"))
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 14.05.2009, 18:48
#11
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


VVA, БОЛЬШОЕ СПАСИБО!!! ОЧень нужная для меня вещь!!
А возможно ли применение SHIFT для различного выполнения команд (как вариант две разные команды)??
Спасибо еще раз
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 14.05.2009, 20:37
#12
VVA

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


Про Shif не знаю, но можно попробовать temporary override key (можно это сочетание вбить в поиск)
Кое-что было
Здесь
Здесь(Прочитать пост #21, далее с #41)
Ну и поиск + научный метод (метод тыка)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 14.05.2009, 23:11
#13
AlphaGeo


 
Сообщений: n/a


Цитата:
Сообщение от sasha_lif Посмотреть сообщение
AlphaGeo, что то не так: беру select выбираю объекты, enter, беру команду move, пишу last, а акад выбирает НЕ МОИ ранее выбранные объекты, а ПОСЛЕДНИЙ НАРИСОВАННЫЙ объект
Цитата:
Сообщение от VVA Посмотреть сообщение
sasha_lif, Надо не _Last, а _P (Previuos или Текущий)
Да, правда, мой косяк... Прошу прощения.
 
 
Непрочитано 17.07.2009, 12:14
#14
Juss_00

Инженер
 
Регистрация: 11.12.2007
Москва
Сообщений: 295


Подскажите что \ и @ в макросе делают?

VVA, СПАСИБО мне тож этот макро-лисп оч нужен. ) В который раз ваши команды учат-выручают. )
__________________
Live as though tomorrow you will die,
Study as though you will live eternally.

Последний раз редактировалось Juss_00, 17.07.2009 в 12:41.
Juss_00 вне форума  
 
Непрочитано 17.07.2009, 12:19
#15
AlphaGeo


 
Сообщений: n/a


Цитата:
Сообщение от Juss_00 Посмотреть сообщение
Подскажите что \ и @ в макросе делают?
\ - пауза в выполнении макроса для пользовательского ввода данных
@ - кажется, последняя указанная на чертеже точка
 
 
Непрочитано 17.07.2009, 14:46
#16
Juss_00

Инженер
 
Регистрация: 11.12.2007
Москва
Сообщений: 295


Премного! Буду использовать )
__________________
Live as though tomorrow you will die,
Study as though you will live eternally.
Juss_00 вне форума  
 
Автор темы   Непрочитано 19.07.2009, 12:52
#17
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


Цитата:
@ - кажется, последняя указанная на чертеже точка
Указывает, что ввод координат дается не в мировой системе координат, а относительно предыдущей указанной точки, т.е. приращение координат новой точки относительно старой
__________________
Kiev, Ukraine
sasha_lif вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > макрос на кнопку для Point Filter .z



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать макрос для кнопки "зеркало" vasyavip Программирование 2 10.04.2013 23:43
Мониторы LCD CRT Разное 94 17.06.2008 10:51
Есть макрос на кнопку на выпадающие меню? dextron3 Программирование 3 29.08.2007 13:26
координаты Excel->_line x,y x,y для Acad. нужен макрос на VictorSM Программирование 9 22.01.2006 18:41
Пишу макрос для кнопки. Нужно задать ожидание ввода. boban Программирование 2 08.04.2005 21:26