2010-10-12 2 views
1

В AutoCAD через пользовательский интерфейс Layer Properties Manager пользователь может обновить информацию об использовании слоев в чертеже. Информация иногда становится устаревшей, когда у вас есть слои из xrefs. В вашем коде при доступе к чертежу LayerTable его записи не будут включать в себя те слои, которые он считает неиспользованными (в пользовательском интерфейсе Layer Properties Manager серый статус = неиспользуемый, синий статус = используется). Для того, чтобы я мог перейти к этим слоям, моя программа сначала должна обновить информацию об использовании. Есть ли способ сделать это через .NET API, COM API или в командной строке?Программно обновить информацию об использовании слоя

Я также поджав ответ параллельно в AutoCAD форумах

http://forums.autodesk.com/t5/NET/Programmatically-refresh-layer-usage-information-NET/m-p/2794756

+0

После дальнейших испытаний. Я обнаружил, что он пропускает слои, если вы работаете через базу данных, но если вы пройдете через документ, они будут там. Тем не менее, я бы предпочел пройти через базу данных, потому что это намного быстрее, чем открытие чертежа. – skeletank

ответ

0

Похоже, что проблема заключалась в том, что один из объектов, в частности, чертеж был поврежден. Когда один из пользователей воссоздал чертеж (включая повторное добавление некоторых внешних ссылок) и запускал программу, он работал нормально. Я также дважды проверил код, и на этот раз он определенно попал в правильные слои. Однако я открыт для предложений или решений о том, как выявлять проблемы с коррупцией в чертежах AutoCAD.