Хранение 64-битного целого в ResultBuffer
Вопрос:
Я не смог найти DXF код для хранения 64-битного целого в Расширенных данных (Extended Data). Есть ли такой?
Ответ:
Нет. Такого кода для хранения 64-битного значения в Расширенных данных (XData) нет. Это сделано специально, так как в противном случае предыдущие версии AutoCAD не смогли бы прочитать такой файл.
Одним из методов обхода является разделение 64-разрядного целого на две части по 32 бита (старшие 32 бита и младшие 32 бита) и предшествующий код для того, чтобы вы знали что их следует объединить для получения 64-разрядного целого.
Второй обходной путь заключается в использовании XRecords вместо of XData, так как они поддерживают kDxfInt64. При этом при сохранении XRecords в формате 2007 и предыдущих 64-битный код в XRecord преобразуется в XData, которая прицепляется к объектам XRecord.
Источник: http://adndevblog.typepad.com/autocad/2012/10/storing-64-bit-integer-in-result-buffer.html
Обсуждение: http://adn-cis.org/forum/index.php?topic=90.0
Отредактировано 08.06.2013 в 02:44:15