dwg.ru forum rss xml
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Можно прорисовать объект по движению мыши в реальн. времени

Можно прорисовать объект по движению мыши в реальн. времени

Версия для печати
 
Ответ
Опции темы Поиск в этой теме
Непрочитано 15.08.2006, 13:30 #1
Можно прорисовать объект по движению мыши в реальн. времени
Варгин
 
belarus
Регистрация: 15.08.2006
Сообщений: 3

Варгин вне форума Вставить имя

Подскажите плз, можно ли средствами лиспа прорисовывать объект по движению мыши, как например черчение окружности, элипса и т.д., но своей собственной геометрии. Если нельзя, то может кто-нибудь подскажет на чём нить другом можно. А если всё-таки можно, то с помощью каких функций, и если можно, ссылочку, где об этом написано.

Задача в создании тулбара, и хотелось бы, чтобы юзер видел конечный результат до окончательного ответа.

Извините за ламерство, ибо не программист!
Просмотров: 2444
 
Непрочитано 15.08.2006, 13:51
#2
AY

webcad.pro
 
Регистрация: 06.01.2005
Московская обл.
Сообщений: 497


Задача не из простых. Особенно елси Вы мало знакомы с лиспом.

Тем не менее если говорить о задаче "прорисовать объект по движению мыши" то предложу осмотреть тему в следующей ссылке:
http://www.autocad.ru/cgi-bin/f1/board.cgi?t=20084JC
AY вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 16.08.2006, 11:18
#3
Варгин


 
Регистрация: 15.08.2006
belarus
Сообщений: 3


Задача была решена успешно не без неоценимой помощи AY.

Спасибо большое.
Варгин вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 16.08.2006, 11:51
#4
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 9,696


Вот пример противоположной задачи - стирать все, что попадет под курсор, без лишних нажатий кнопок. Можно рассматривать как простой пример использования grread. При желании можно использовать как скелет для создания еще более полезных (или более бесполезных действий).

Код:
[Выделить все]
(defun C:RUB (/ key mode point selection *error*)

  (defun *error* (msg)
    (vla-EndUndoMark (vla-get-activedocument (vlax-get-acad-object)))
    (vl-cmdf  "_.U")
    (princ "\nСтирание отменено\n")
    (princ)
  ) 

(vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
  (setq key 3
        mode t
  )
  (while (or (= key 3) (= key 5))
    (cond ((= key 3)
           (princ
             (if (setq mode (not mode))
               "\nРежим ЛАСТИК (клик = приостановить стирание) <Выход>"
               "\nУкажи точку для запуска режима ЛАСТИК <Выход>"
             )
           )
          )
          ((not mode))
          (t
           (if (setq selection (ssget (cadr point)))
             (entdel (ssname selection 0))
           ) 
          )
    ) 
    (setq key (car (setq point (grread t 4 2))))
  ) 
  (princ "\nРабота команды завершена.")
  (vla-EndUndoMark (vla-get-activedocument (vlax-get-acad-object)))
  (princ)
)
ShaggyDoc вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 16.08.2006, 12:29
#5
AY

webcad.pro
 
Регистрация: 06.01.2005
Московская обл.
Сообщений: 497


>Варгин В чем уж такая неоценимость помощи в толк не возмьу :) расказали б лучше как собственно все решилось.

>ShaggyDoc Интересный эфект: у меня при повторном вызове команды rub правым кликом работа заканчивается не начавшись. Может это grread успевает перехватить правый клик?
AY вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 17.08.2006, 08:23
#6
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 9,696


Цитата:
Сообщение от AY
>ShaggyDoc Интересный эфект: у меня при повторном вызове команды rub правым кликом работа заканчивается не начавшись. Может это grread успевает перехватить правый клик?
Возможно. Механизм реализации grread неизвестен, да и что Автокад делает с буфером устройств ввода неизвестно.

Я такого эффекта ранее не замечал, SHORTCUTMENU всегда не 0, поэтому по правому клику появляется контекстное меню, а не выполняется сама команда. При SHORTCUTMENU=0 действительно правый клик проскакивает.

Как бороться (и стоит ли) пока не соображу.
ShaggyDoc вне форума вставить имя Обратить внимание модератора на это сообщение  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Можно прорисовать объект по движению мыши в реальн. времени

Инженерные консультации
Опции темы Поиск в этой теме
Поиск в этой теме:

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

Быстрый переход

|| Главная || Каталог САПР || Тендеры || Публикации || Объявления || Биржа труда || Download || Галерея ||
|| Библиотека || Кунсткамера || Каталог предприятий || Контакты || Файлообменник || Блоги ||


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