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

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

Аналог кнопки "Копирование свойств"

Ответ
Поиск в этой теме
Непрочитано 28.12.2010, 13:28 #1
Аналог кнопки "Копирование свойств"
kirikov8080
 
Регистрация: 21.12.2010
Сообщений: 9

Добрый день. Обращаюсь к тем кто силен в Лиспе.
Нужна кнопка (т.е. программа) - некий аналог функции «Копирование свойств».
Например, выделил линию (или любой другой объект: окружность, размер, текст), нажал эту кнопку и все свойства объекта: слой, цвет, вес, тип линии, масштаб и т.п. остались активными в панелях: Слои и Свойства.
Это нужно для того, чтобы следующую линию (окружность, размер, текст) ты мог чертить уже на нужном слое с нужным весом линии, типом, цветом.
Я так понимаю, что нужно правильно «обыграть» функцию: «Копирование свойств» ('_matchprop) в Лиспе.
Стандартная кнопка "Копирование свойств" не очень устраивает, т.к. копируешь свойства объекта «в догонку» и можешь что-то упустить, а хотелось бы сразу чертить с нужными свойствами, что сбережет время на черчение.
Извините, если поместил не в тот раздел. Буду признателен модераторам, если перенесут в нужный раздел.
Просмотров: 4184
 
Непрочитано 28.12.2010, 15:48
#2
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


LISP. Быстрое рисование. QUICKDRAW
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 28.12.2010, 17:16
#3
kirikov8080


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


Спасибо огромное, отличная программа!
kirikov8080 вне форума  
 
Непрочитано 02.04.2012, 17:48
#4
Eudemos


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


Здравствуйте...
Меня интересует как изменить очередность запросов на выбор объектов функцией «Копирование свойств»...Или лисп с уже измененной...
Т.е. чтобы выбор целевого объекта был первым по очереди, а за тем уже выбор исходного объекта (носителя свойств)...
Таким образом можно было бы с помощью "Быстрого выбора" выделять сразу огромное число объектов, а затем к ним применять свойства исходного...
Сейчас приходится либо применять свойства по одному, выискивая в чертеже (что может занять много времени, и очень утомляет), либо "быстрый поиск" и вручную изменять свойства на нужные...
Eudemos вне форума  
 
Непрочитано 02.04.2012, 17:52
1 | #5
Nike

Шаражпроектхалтурмонтаж
 
Регистрация: 29.10.2004
Талды-Париж
Сообщений: 5,989


(defun c:mp ( / ss )
(if (setq ss (ssget "_:L"))
(command "_.matchprop" pause ss "")
)
(princ)
)

точнее так:

(defun c:mp ( / ss )
(if (setq ss (ssget))
(command "_.matchprop" pause ss "")
)
(princ)
)

Последний раз редактировалось Nike, 02.04.2012 в 18:15.
Nike вне форума  
 
Непрочитано 02.04.2012, 18:11
#6
Eudemos


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


Огромное спасибо...)

А в чем разница? У меня и первый ваш код заработал...

Последний раз редактировалось Eudemos, 02.04.2012 в 18:19.
Eudemos вне форума  
 
Непрочитано 02.04.2012, 19:31
#7
Кулик Алексей aka kpblc
Moderator

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


Второй код может сойти с ума при выборе объектов на заблокированных слоях
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.05.2023, 07:51
#8
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 451


Всем привет!

Кстати, а где "живёт" настройка свойств команды "_matchprop" ?

Та самая, где указывается, какие свойства переносить на другой
объект, а какие не трогать.

Мне тут внезапно понадобилось сделать LISP-ом ПОЛНЫЙ перенос
свойств из одного объекта в другой. Свою функцию писать/отлаживать
несколько лениво, вполне устроит и "_matchprop", но есть ненулевая
вероятность того, что до вызова моей программы пользователь уже
успел вызвать "_matchprop" и поснимать некоторые "галочки" в её
настройках.

А нужно - именно ВСЕ свойства перенести (пусть их и немного).

Системная переменная там какая или ещё чего?
__________________
Счастливо, Алексей!
===AAA=== вне форума  
 
Непрочитано 04.05.2023, 09:42
#9
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,091


Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
Системная переменная там какая или ещё чего
На другом форуме в свое время искали и не нашли:
https://www.theswamp.org/index.php?topic=37406.0

"Костыльная" программная настройка matchprop в той же ветке в другом посте.

Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
Мне тут внезапно понадобилось сделать LISP-ом ПОЛНЫЙ перенос
свойств из одного объекта в другой. Свою функцию писать/отлаживать
несколько лениво, вполне устроит и "_matchprop"...
...нужно - именно ВСЕ свойства перенести (пусть их и немного)
Занудно напоминаю, что matchprop не работает со многими специфическими свойствами Мтекстов, МВыносок, таблиц, динблоков и других мало-мальски сложных объектов. Так что если задача поставлена всерьез - от написания своей функции не отвертеться.
kp+ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Аналог кнопки "Копирование свойств"

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В меню правой кнопки мыши неактивны строки вставки из буфера обмена Vova Баги и пожелания в Autodesk 1 15.11.2009 17:13
Как можно из LISP запросить у юзера выделить произвольные элементы и затем вызвать аналог WMFOUT для сохранения их в изображении? lexluther LISP 4 12.08.2009 11:44
Алиасы на "рукодельные" кнопки. Juss_00 AutoCAD 11 31.07.2009 15:55
кнопки не реагируют и не меняют автомотически слой Nady Программирование 6 28.09.2005 11:15