DrawableOverrule + Jigs = FatalError?

Автор Тема: DrawableOverrule + Jigs = FatalError?  (Прочитано 8967 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
DrawableOverrule + Jigs = FatalError?
« : 15-04-2014, 15:15:13 »
Здравствуйте.
Так получилось, что в своей программе я использую DrawableOverrule для отрисовки объекта и Jigs для его вставки. По отдельности они работают хорошо, но при включенном DrawableOverrule в месте использования Jigs вылетает автокад с фатальной ошибкой. Пример кода нужно "выдирать" из сборки, потому пока не привожу. Будет время - наваяю.
Пока хочу спросить, есть ли какие-то известные ограничения по применению этих возможностей?

Отмечено как Решение Дмитрий Загорулькин 08-10-2014, 14:45:03

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #1 : 15-04-2014, 15:58:56 »
Пока хочу спросить, есть ли какие-то известные ограничения по применению этих возможностей?
Известных нет. Так что скорее всего (как обычно) один из следующих вариантов:
1) Баг в AutoCAD/AutoCAD .NET API
2) Ошибка в твоем коде.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #2 : 15-04-2014, 17:00:41 »
Проверил на простом примере связку DrawableOverrule и Jigs - работает. В чем-то другом проблема :(

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #3 : 15-04-2014, 17:02:12 »
Значит смотри п. 2:
2) Ошибка в твоем коде.
:)
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #4 : 15-04-2014, 17:08:32 »
Если бы в моем коде, то в режиме отладки мне показывало место, где ошибка происходит - а этого не происходит. По отдельности же и то и другое работает. Отключаю DrawableOverrule - Jig-вставка работает, не использую Jig-вставку - DrawableOverrule тоже вполне прилично себя ведет. Но стоит со включенной DrawableOverrule запустить Jig-вставку - крах. Причем, студия пишет:
Шаг с заходом: обход кода, не являющегося кодом пользователя "Autodesk.AutoCAD.EditorInput.Editor.Drag"
Первый этап обработки исключения типа "System.NullReferenceException" в приложении Неизвестный модуль.
Буду копать.

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #5 : 15-04-2014, 17:28:01 »
Нашел, мой косяк :)
Ошибка была в методе, вызываемом из метода DrawableOverrule.WorldDraw.
Пытался прочитать расширенные данные из объекта, у которого их нет.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #6 : 15-04-2014, 17:29:06 »
Так всё-таки п. 2? :)
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #7 : 15-04-2014, 17:36:38 »
Да, он самый :)
Непонятно, почему студия не показала место возникновения ошибки. Но это уже тонкости.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #8 : 15-04-2014, 17:38:15 »
Да, он самый :)
Непонятно, почему студия не показала место возникновения ошибки. Но это уже тонкости.
FIBERWORLD равен 1?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #9 : 15-04-2014, 18:30:15 »
Пытался прочитать расширенные данные из объекта, у которого их нет.
И тут на сцену так, бочком, бочком вытанцовывает... модульное тестирование... :) Аля волшебная таблетка от подобных "неожиданностей" :)

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 737
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #10 : 15-04-2014, 18:40:31 »
Александр Наумович, да, FIBERWORLD = 1.
Андрей, осталось разобраться, что это такое :)

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #11 : 15-04-2014, 20:12:33 »
Андрей, осталось разобраться, что это такое :)
Если желание появится, то можно почитать например это. Вообще, информации по обозначенной теме в Интернете предостаточно.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: DrawableOverrule + Jigs = FatalError?
« Ответ #12 : 16-04-2014, 10:04:37 »
Александр Наумович, да, FIBERWORLD = 1.
Скорее всего поэтому студия и не показала место ошибки.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение