Сообщество программистов Autodesk в СНГ
ADN Club => AutoCAD .NET API => Тема начата: Дмитрий Загорулькин от 15-04-2014, 15:15:13
-
Здравствуйте.
Так получилось, что в своей программе я использую DrawableOverrule для отрисовки объекта и Jigs для его вставки. По отдельности они работают хорошо, но при включенном DrawableOverrule в месте использования Jigs вылетает автокад с фатальной ошибкой. Пример кода нужно "выдирать" из сборки, потому пока не привожу. Будет время - наваяю.
Пока хочу спросить, есть ли какие-то известные ограничения по применению этих возможностей?
-
Пока хочу спросить, есть ли какие-то известные ограничения по применению этих возможностей?
Известных нет. Так что скорее всего (как обычно) один из следующих вариантов:
1) Баг в AutoCAD/AutoCAD .NET API
2) Ошибка в твоем коде.
-
Проверил на простом примере связку DrawableOverrule и Jigs - работает. В чем-то другом проблема :(
-
Значит смотри п. 2:
2) Ошибка в твоем коде.
:)
-
Если бы в моем коде, то в режиме отладки мне показывало место, где ошибка происходит - а этого не происходит. По отдельности же и то и другое работает. Отключаю DrawableOverrule - Jig-вставка работает, не использую Jig-вставку - DrawableOverrule тоже вполне прилично себя ведет. Но стоит со включенной DrawableOverrule запустить Jig-вставку - крах. Причем, студия пишет:
Шаг с заходом: обход кода, не являющегося кодом пользователя "Autodesk.AutoCAD.EditorInput.Editor.Drag"
Первый этап обработки исключения типа "System.NullReferenceException" в приложении Неизвестный модуль.
Буду копать.
-
Нашел, мой косяк :)
Ошибка была в методе, вызываемом из метода DrawableOverrule.WorldDraw.
Пытался прочитать расширенные данные из объекта, у которого их нет.
-
Так всё-таки п. 2? :)
-
Да, он самый :)
Непонятно, почему студия не показала место возникновения ошибки. Но это уже тонкости.
-
Да, он самый :)
Непонятно, почему студия не показала место возникновения ошибки. Но это уже тонкости.
FIBERWORLD равен 1?
-
Пытался прочитать расширенные данные из объекта, у которого их нет.
И тут на сцену так, бочком, бочком вытанцовывает... модульное тестирование... :) Аля волшебная таблетка от подобных "неожиданностей" :)
-
Александр Наумович, да, FIBERWORLD = 1.
Андрей, осталось разобраться, что это такое :)
-
Андрей, осталось разобраться, что это такое :)
Если желание появится, то можно почитать например это (http://www.nunit.org/index.php?p=docHome&r=2.6.3). Вообще, информации по обозначенной теме в Интернете предостаточно.
-
Александр Наумович, да, FIBERWORLD = 1.
Скорее всего поэтому студия и не показала место ошибки.