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

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

Макрос на кнопки копировать-вставить

Ответ
Поиск в этой теме
Непрочитано 04.09.2007, 21:22 #1
Макрос на кнопки копировать-вставить
dextron3
 
проектировшик
 
СССР
Регистрация: 01.01.2007
Сообщений: 5,143

Ситуация:

Существуют две обычные кнопки автокада копировать-вставить
одна копирует другая встваляет после указания точки

см. скриншот.
[ATTACH]1188926406.JPG[/ATTACH]

Хотелосб бы на них повесить макрос

чтобы копировать, и вставлять в туже точку коррдинат откуда скопировал автоматически без указания точки вставки

Допустим из одного лайаута в другой
(для примера)
__________________
инженер проектировшик с опттом программа авто гад образование высшие
Просмотров: 6609
 
Непрочитано 04.09.2007, 21:37
#2
Кулик Алексей aka kpblc
Moderator

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


_.copybase вот и весь макрос.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.09.2007, 22:26
#3
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Не то!

Представь что чистый лайаут, ты привязался
к видвому окну базовой точкой, в другом лайауте
тебе нужно эту точку тоже привязать , но к чему ты
будешь привязывать если ничего нет


Я имел ввиду что с того места которого копируется,
на другом лайауте в тоже место с темиже координатами
вставляется базовая точка тут вообще не нужна
[ATTACH]1188930379.JPG[/ATTACH]
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 05.09.2007, 09:17
#4
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Можно так...
Копирование:
Код:
[Выделить все]
^C^C(defun c:M-Command () (ssget) (vl-cmdf "_.copybase" "0,0" "_p" "") (princ));M-Command
Соответственно вставка:
Код:
[Выделить все]
^C^C_.pasteclip;0,0;
Makswell вне форума  
 
Непрочитано 05.09.2007, 09:33
#5
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,826
<phrase 1=


Цитата:
Сообщение от Makswell
Можно так...
Копирование:
Код:
[Выделить все]
^C^C(defun c:M-Command () (ssget) (vl-cmdf "_.copybase" "0,0" "_p" "") (princ));M-Command
Соответственно вставка:
Код:
[Выделить все]
^C^C_.pasteclip;0,0;
А если забыл ПСК поменять???
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 05.09.2007, 10:15
#6
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Цитата:
А если забыл ПСК поменять???
Дык тогда и стандартное копировать-вставить не поможет
Makswell вне форума  
 
Непрочитано 05.09.2007, 10:17
#7
Кулик Алексей aka kpblc
Moderator

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


Если забыл? А если специально поставил другую? ИМХО: юзер сделал - нехай юзер и отвечает.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 05.09.2007, 13:51
#8
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Цитата:
Сообщение от Makswell
Можно так...
Копирование:
Код:
[Выделить все]
^C^C(defun c:M-Command () (ssget) (vl-cmdf "_.copybase" "0,0" "_p" "") (princ));M-Command
Соответственно вставка:
Код:
[Выделить все]
^C^C_.pasteclip;0,0;
СПАСИБО !

можно вставку доработать чтобы допустим при вставки видового окна (вьюпорта), автоматически включался вид MISC: On---Yes, т.е. не пустые вьюпорты а сразу с областью с которой были скопированы?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 05.09.2007, 13:58
#9
VVA

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


Как то так
Код:
[Выделить все]
^C^C_.pasteclip;0,0;_-vports;_on;_all;;
VVA вне форума  
 
Непрочитано 05.09.2007, 14:06
#10
VVA

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


Из helpa
Цитата:
Для ввода координат относительно МСК

Указать перед значениями координат символ звездочки (*).
Например, ввод координат @*2,0,0 задает точку, смещенную на 2 единицы от предыдущей точки вдоль оси X МСК. Координаты @2,0,0 задают точку с таким же смещением от предыдущей точки, но вдоль оси X ПСК.

Как правило, в большинстве случаев координаты задаются относительно ПСК.
Соответственно для забывчивых
Код:
[Выделить все]
^C^C(defun c:M-Command () (ssget) (vl-cmdf "_.copybase" "*0,0" "_p" "") (princ));M-Command
И
Код:
[Выделить все]
^C^C_.pasteclip;*0,0;
VVA вне форума  
 
Автор темы   Непрочитано 05.09.2007, 17:06
#11
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Цитата:
Сообщение от VVA
Как то так
Код:
[Выделить все]
^C^C_.pasteclip;0,0;_-vports;_on;_all;;
создал несколько вьюпортов с разным масштабом, скопировал на другой лайаут масштабы все стали как один, а на второй раз почемуто получается, не понятно из зачего?

где ошибка вкралась
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 05.09.2007, 18:05
#12
VVA

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


Сформулируй вопрос по русски. У меня эта кнопка работает
VVA вне форума  
 
Автор темы   Непрочитано 05.09.2007, 18:56
#13
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Цитата:
Сообщение от VVA
Сформулируй вопрос по русски. У меня эта кнопка работает
1. Создаем 1 вьюпорт
2. Копируем вьюпорт (к примеру) 3 раза подряд (мультикопи)
3. Активируем каждый вьюпорт поочереди, в каждом ставим разный масштаб, соответсвтенно не точный (к примеру в одном 1раз крутни колесико, в другом 2 раза, а в третьем 3раза но в другую сторону)
4. Должно получиться. см скриншот
[ATTACH]1189004167.JPG[/ATTACH]
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 05.09.2007, 18:58
#14
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


5. Выделяем Нажимаем команду предложенную команду копи
6. Выьираем другой лайаут
7. Нажимаем предложенную всатвку вьюпорт онал
8. В скриншоте сбились все масщтабы
[ATTACH]1189004299.JPG[/ATTACH]

9. Они стали одинаковые

Вот в чем проблема их восстановить уже не возможно
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 05.09.2007, 19:03
#15
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Так самое главное что один раз срабатывает команда, как положено
допустим первый раз, а второй почемуто масштабы становятся одинаковые,
не могу понять причину!
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 06.09.2007, 09:43
#16
VVA

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


Тоже такое наблюдал. Помогла ( :?: ) блокировка vport'a.
Попробуй так
Код:
[Выделить все]
^C^C_.pasteclip;0,0;_-vports;_L;_on;_all;;_-vports;_on;_all;;_-vports;_L;_off;_all;;
VVA вне форума  
 
Автор темы   Непрочитано 06.09.2007, 15:42
#17
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Цитата:
Сообщение от VVA
Тоже такое наблюдал. Помогла ( :?: ) блокировка vport'a.
Попробуй так
Код:
[Выделить все]
^C^C_.pasteclip;0,0;_-vports;_L;_on;_all;;_-vports;_on;_all;;_-vports;_L;_off;_all;;
А к этому макросу цикл прекрутить нельзя?

т.е. Перебирает лайауты и вставляет в каждый начиная от заданного, кончая заданным,
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 06.09.2007, 15:50
#18
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Цитата:
Сообщение от VVA
Тоже такое наблюдал. Помогла ( :?: ) блокировка vport'a.
Попробуй так
Код:
[Выделить все]
^C^C_.pasteclip;0,0;_-vports;_L;_on;_all;;_-vports;_on;_all;;_-vports;_L;_off;_all;;
Не помогло

Проверь:

Нарисуй 2 вьюпорта с разным масштабом, копирни
затем их удали и вставь сюдаже в лайаут, масштабы сбиваются :cry:

Да кстати посмотри может *- звездочка в командах все портит,
?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 07.09.2007, 12:09
#19
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


У меня то же самое происходит.
Пробовал выбирать только ВЭ.
Код:
[Выделить все]
^C^C_.pasteclip;0,0;_-vports;_on;(ssget "_X" '((0 . "VIEWPORT")));
... тот же эффект

Видно всё таки глюк автокада...
Makswell вне форума  
 
Непрочитано 07.09.2007, 12:39
#20
VVA

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


У меня не сбивается. Пробовал из файла в файл, из лэйаута в лэйаут
Автокад 2006
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Макрос на кнопки копировать-вставить

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