ObjectARX, AutoCAD. Среда программирования библиотеки C++

       

Реализация DWG Файловые Функции


Если Вы осуществляете dwgOutFields () и dwgInFields () для нового класса, Вы должны сначала вызвать assertReadEnabled () или assertWriteEnabled () чтобы гарантировать, что объект открыт в правильном состоянии.

Следующая вещь, которую ваш полученный класс должен делать, состоит в том, чтобы вызвать ту же самую функцию (например, dwgOutFields ()) на родительском классе. Этот процесс упомянут как передача сообщений высшего качества. Следующее - пример:

AcDbDerivedClass:: dwgOutFields (...);

{

AssertReadEnabled ()

MyParent:: dwgOutFields ();

// Исполнить класс - определенные операции после супер-передачи сообщений.

}

Если Вы забываете вызывать соответствующее сообщение родительского класса, вы получите ошибку во время выполнения программы.

После супер-передачи сообщений, Вы записываете или читаете поля. Вы можете улучшать выполнение,  проверяя тип регистратора. Например, если тип регистратора - kIdXlateFiler, и ваш класс не определяет любые связи ссылки, Вы можете просто возвращаться.

С DWG файлами, Вы должны записывать и читать, вызывает тот же самый заказ{*порядок*}. Если запросы не соответствуют, получены, классы будут перепутаны. Если Вы имеете любые данные переменная-размера, помещаете индекс сначала.



Содержание раздела