Тема: Как получить активную систему координат?
Set ucs = ThisDrawing.ActiveUCS
Эта строка иногда работает, но чаще вылетает ошибка:
"Error adding object to symbol table"
Кто знает? Мобыть сначала проверку какую-нить делать?
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → VBA → Как получить активную систему координат?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Set ucs = ThisDrawing.ActiveUCS
Эта строка иногда работает, но чаще вылетает ошибка:
"Error adding object to symbol table"
Кто знает? Мобыть сначала проверку какую-нить делать?
Сам себе отвечаю, т.к. нашёл автодесковскую фичу :
Каждый раз, когда проходит эта строка, в базу чертежа добавляется ДВЕ новые UserCoordinateSystem !!!!!!!!!!!
Я просто в отладчике смотрю ThisDrawing.UserCoordinateSystems.Count и каждый раз он увеличивается на 2 !
Вывод - либо программисты в автодеске, чайники, некорректно объекты за собой убивают, либо это делается намерено с какой-то целью, в таком случае имеет место явная ошибка в объектной моделе, т.к. я всего лишь хочу получить объект, чтобы прочитать его свойства, а в этот момент создаются ДВЕ новые UserCoordinateSystem, непонятно для чего...
ага, а вот из хелпа:
There is no limit to the number of UCSs you can create in your drawing. However, there can be only one instance of the UCSs collection. The UCSs Collection is predefined for each drawing. You can make multiple references to the UCSs Collection by using the UserCoordinateSystems <idh_usercoordinatesystems.htm> property. Once done with an object, the reference is automatically released.
ну просто нет слов! в афтадеске полные идиоты работают!
> Alexander:
хм... там всё правильно написано...
только непонятно, собственно, почему возникает ошибка?
Сделал я бесконечный цикл,
...
Do
Set ucs = ThisDrawing.ActiveUCS
Loop
...
наплодилось почти 250 000 этих несчастных UCS'ов (потом тормознул Ctrl+Pause), ничего не вываливается, "adding object to symbol table" протекает нормально, а вот завтра, когда надо будет, наверняка вывалится... глюк какойто...
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → VBA → Как получить активную систему координат?
Форум работает на PunBB, при поддержке Informer Technologies, Inc