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

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

Изменение работы комманды SELECT FENCE

Ответ
Поиск в этой теме
Непрочитано 04.12.2003, 15:16
Изменение работы комманды SELECT FENCE
Torino
 
Штаб
Регистрация: 21.08.2003
Сообщений: 943

Как сделать так, чтобы при запуске комманды "select fence" отключалась объектная привязка ('_osmode;0;), а при завершении выделения с помощью fence (либо, при нажатии escape) привязки возращались?
Просмотров: 15441
 
Непрочитано 16.12.2003, 11:14
#41
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


>VK
Спасибо. Критика мне просто необходима. C моим стажем программирования, (неполные пол года) надо еще много работать.
{Smirnoff} вне форума  
 
Непрочитано 18.02.2008, 13:53 Макрос
#42
Shoorup


 
Регистрация: 16.09.2006
Минск
Сообщений: 1,587
<phrase 1= Отправить сообщение для Shoorup с помощью Skype™


Подниму старую тему.
Возможно проблема уже обсуждалась и в других темах, но я нашел только эту.

Задача такая: нужно отследить кнопку привязки, и всё это отобразить в макросе
Код:
[Выделить все]
^C^С_line;\@0,-5;;;@2.5,0;@-5,0;;;@1,-1;@3,0;;;@-1,-1;@-1,0;;
Такой макрос не подходит:
Код:
[Выделить все]
^C^C^F_line;\@0,-5;;;@2.5,0;@-5,0;;;@1,-1;@3,0;;;@-1,-1;@-1,0;;^F
т.к. неизвестно заранее включена ли привязка. + ещё надо "запомнить" что было включено в привязке и потом восстановить после выполнения макроса. По приведенным кодам не нашел то, что мне подходит (Lisp не знаю). Для чего такой моразм? Для того чтобы каждому из моего отдела не обьяснять почему у него получилась линия или буква "Т" перевернутая вместо знака "земля" (при очень высоком виде привязка накладывает все лини друг на друга).
Отвечу и на возможный вопрос: почему не блоком?
Вот хочу чтоб было так! да и блоки у нас не очень уважают... по сути выполняю каприз заказчика.
Есть ли возможность решить все макросом или дизелем. Или только Lisp?
__________________
Поезд который устал от ржавого здравомыслия рельсов...
Shoorup вне форума  
 
Непрочитано 18.02.2008, 13:57
#43
Кулик Алексей aka kpblc
Moderator

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


osmode играйся
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.02.2008, 14:30
#44
Shoorup


 
Регистрация: 16.09.2006
Минск
Сообщений: 1,587
<phrase 1= Отправить сообщение для Shoorup с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
osmode играйся
Ну и как отследить то?
Допустим отключил, выполнил отрисовку элемента, а потом пытаюсь включить - а какое было предыдущее до 0 состояние???
__________________
Поезд который устал от ржавого здравомыслия рельсов...
Shoorup вне форума  
 
Непрочитано 18.02.2008, 14:40
#45
VVA

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


Сравни значение OSMODE при включенной и отключенной привязке
Код:
[Выделить все]
;;;================================================================================
;;;Функция отключения режима объектной привязки
(defun disable_osmode ()
  ;;Alaspher
  ;;(setvar "osmode" (logior oldosm 16384))
  (if (and (< (getvar "OSMODE") 16000)
    (/= (getvar "OSMODE") 0)
    )
   (setvar "OSMODE" (+ (getvar "OSMODE") 16384))
 ))
;;;================================================================================
;;;Функция включения режима объектной привязки
(defun enable_osmode ()
  (if (> (getvar "OSMODE") 16000)
    (setvar "OSMODE" (- (getvar "OSMODE") 16384))
  ) ;_if
) ;_ End of defun
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 18.02.2008, 14:51
#46
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Shoorup Посмотреть сообщение
Есть ли возможность решить все макросом или дизелем. Или только Lisp?
В данном конкретном случае в макросе достаточно перед каждым вводом координат вставить _none; и не заморачиватся с включением/выключением привязки.
Александр Ривилис вне форума  
 
Непрочитано 18.02.2008, 15:10
#47
Shoorup


 
Регистрация: 16.09.2006
Минск
Сообщений: 1,587
<phrase 1= Отправить сообщение для Shoorup с помощью Skype™


Александр Ривилис, Спасибо! Отличное решение!
VVA, за код спасибо тоже пригодиться.
__________________
Поезд который устал от ржавого здравомыслия рельсов...
Shoorup вне форума  
 
Непрочитано 21.04.2014, 08:20
#48
Александр К.

Инженер-программист
 
Регистрация: 17.02.2009
Сообщений: 86


{Smirnoff}, спасибо за алгоритм построения обработчика выхода по ESC и правой кнопки мыши. Понадобился - здесь нашел.

----- добавлено через ~1 ч. -----
Цитата:
Сообщение от Александр Ривилис Посмотреть сообщение
В данном конкретном случае в макросе достаточно перед каждым вводом координат вставить _none; и не заморачиватся с включением/выключением привязки.
Александр Ривилис, тоже спасибо за решение! Попутно вопрос: где берете такие решения?? Где описаны? *Ни в описании команд, ни в книгах Полещука такого приема не встречал..

Последний раз редактировалось Александр К., 21.04.2014 в 09:50.
Александр К. вне форума  
 
Непрочитано 21.04.2014, 13:58
#49
skkkk


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


Offtop: {Smirnoff}, он же в прошлом Fantomas, к сожалению, уже почти восемь лет, как не заходил на форум...
skkkk вне форума  
 
Непрочитано 21.04.2014, 14:02
#50
Александр К.

Инженер-программист
 
Регистрация: 17.02.2009
Сообщений: 86


Цитата:
Сообщение от skkkk Посмотреть сообщение
Offtop: {Smirnoff}, он же в прошлом Fantomas, к сожалению, уже почти восемь лет, как не заходил на форум...
Offtop: Ну ему то только благодарность. Хоть и 8 лет его не слышно, а до сих пор пользу приносит. Может икнет там где-нибудь..

А вот от Александра Ривилиса хотел бы услышать ответ.
Александр К. вне форума  
 
Непрочитано 22.04.2014, 14:07
#51
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Александр К. Посмотреть сообщение
Попутно вопрос: где берете такие решения??
Из опыта работы с AutoCAD (а точнее программирования для него). В это году как раз 25 лет будет...
Александр Ривилис вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Изменение работы комманды SELECT FENCE