Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Алексей Терно от 30-09-2016, 01:02:05

Название: Интерактивный Overrule
Отправлено: Алексей Терно от 30-09-2016, 01:02:05
Создал свой класс переопределений DrawableOverrule, в котором меняю внешний вид объекта. При редактировании исходного объекта, например, перетаскивании ручек, мой переопределенный вид обновляется только после завершения перемещения ручки. Во время движения курсора промежуточные варианты моего объекта не отображаются. Как это исправить?
Название: Re: Интерактивный Overrule
Отправлено: Дима_ от 30-09-2016, 01:19:17
Т.к. следующий вопрос будет как спозиционировать ручку от других, то смотри сразу сюда http://adn-cis.org/forum/index.php?topic=2783.msg9891#msg9891 (http://adn-cis.org/forum/index.php?topic=2783.msg9891#msg9891)
Название: Re: Интерактивный Overrule
Отправлено: Александр Ривилис от 30-09-2016, 01:24:48
Алексей Терно, Дима_
Вы слишком многого хотите от Overrule. Всё-таки это не Custom Entity.
Название: Re: Интерактивный Overrule
Отправлено: Дима_ от 30-09-2016, 01:31:25
Через "два щелчка" такое возможно у "оверрулек" есть таки и свои плюсы (точнее нет минусов "костюмов").
Название: Re: Интерактивный Overrule
Отправлено: Александр Ривилис от 30-09-2016, 01:36:14
точнее нет минусов "костюмов"
Если ты про прокси - то можно обойтись и без них. Мой DynDraw (http://maestrogroup.com.ua/support/dyndraw.zip) - это смесь Custom Entity и Jig, которая не "мусорит" - никаких следов Custom Entity в чертеже не остаётся.
Название: Re: Интерактивный Overrule
Отправлено: Дима_ от 30-09-2016, 02:08:24
А в чем тут Custom - или я проглядел что-то?
з.ы. Если еще актуально - я так и не выложил свой "интегратор" автолиспа с .Net API - сыроват он, а доделывать совсем забросил, но тем не менее из лиспа пересылать "во вне" функцию через ее имя это "грех". Да квотированные данные не передать ни .Net'у ни ARX'у - но ведь самим лиспом их можно вначале перевести в строку (причем я еще добавил фичу что если имя идет после префикса "*" то оно "замыкается" из текущего окружения - это использовалось для callBack'ов .Net событий - и там "храниться" - а при вызове - оно уже переводиться обратно и запускается).
Название: Re: Интерактивный Overrule
Отправлено: Александр Ривилис от 30-09-2016, 02:18:05
А в чем тут Custom - или я проглядел что-то?
Это мы совсем ушли в offtop. Для того, чтобы можно было что-то динамически рисовать из lisp'а недостаточно только создать jig. Там запускается Jig создается пустой Custom Entity и lisp вызывается из его метода WorldDraw, что обеспечивает отображение изменения информации в процессе таскания. Это чем-то сродни с DrawJig в .NET. Но так как Custom Entity не регистрируется в database (dwg-файле), то он и не мусорит.
Название: Re: Интерактивный Overrule
Отправлено: Алексей Терно от 30-09-2016, 09:43:49
Т.к. следующий вопрос будет как спозиционировать ручку от других, то смотри сразу сюда http://adn-cis.org/forum/index.php?topic=2783.msg9891#msg9891 (http://adn-cis.org/forum/index.php?topic=2783.msg9891#msg9891)

Не угадал.
Название: Re: Интерактивный Overrule
Отправлено: Алексей Терно от 30-09-2016, 09:51:09
Вы слишком многого хотите от Overrule. Всё-таки это не Custom Entity.

Понятно... значит опять через PointMonitor.
Название: Re: Интерактивный Overrule
Отправлено: Алексей Терно от 02-04-2018, 12:18:36
Создал свой класс переопределений DrawableOverrule, в котором меняю внешний вид объекта. При редактировании исходного объекта, например, перетаскивании ручек, мой переопределенный вид обновляется только после завершения перемещения ручки. Во время движения курсора промежуточные варианты моего объекта не отображаются. Как это исправить?
Используй XData, лапоть!
Название: Re: Интерактивный Overrule
Отправлено: Александр Пекшев aka Modis от 03-04-2018, 09:55:47
Это все возможно сделать используя только Overrule, но нужно работать не с одним, а с несколькими Overrule. В частности нужно создавать еще GripOverrule