MS J и MS 8

  Вход на форум   логин       пароль   Забыли пароль? Регистрация
On-line:  

Раздел: 
MicroStation форум / Программирование / MS J и MS 8

Страницы: 1  новая тема

Автор Сообщение

Группа: Участники
Сообщений: 24
Добавлено: 12-01-2006 14:50
Я пока сижу на J. Но вскором времени будем переходить на восьмерку. Всвязи с этим вопрос - какие принципиальные произошли изменения в MDL

Группа: Администраторы
Сообщений: 88
Добавлено: 12-01-2006 16:30
Если в общем, то принципиальных изменений немного, практически можно сказать что и нет. То есть код, написаный для J будет компилиться и для восьмерки, только там малость надо будет подправить вещи, которые касаются общих изменений для 8-й версии - таких как несколько моделей в файле, неограниченное кол-во слоев и референсов и т.д.
Для примера функция обновления видов:
mdlView_updateMulti (
viewList,
incremental,
drawMode,
#if MSVERSION >= 0x800
modelRefList,
#else
fileMask,
#endif
FALSE
);

Несколько изменились хедеры, но для того чтобы это обойти обычно достаточно несколько строчек типа
#if MSVERSION < 0x800
#include <mdlio.h>
#include <msfile.fdf>
#else
#include <mstxtfil.h>
#include <msdgnobj.fdf>
#include <msmodel.fdf>
#endif
и что-то типа этого в Make-файлах

Несколько ограничен доступ к tcb. Теперь некоторые значения можно получить только с помощью функций, например
#if MSVERSION < 0x800
pGlobalOrigin.x = tcb->globorg.x;
pGlobalOrigin.y = tcb->globorg.y;
pGlobalOrigin.z = tcb->globorg.z;
#else
mdlModelRef_getGlobalOrigin (mdlModelRef_getActive(), &pGlobalOrigin);
#endif

Есть несколько вкусных добавлений. Например, можно из RotMatrix получить все три угла поворота для осей. Добавлены несколько диалоговых объектов, например ToggleIcon, IconPopup, Tree...

Новые функции:
mdlAccuSnap...
mdlXML...
mdlVBA...
mdlViewInfo...
mdlModelRef...
и т.д. Но если их пользовать, то о совместимости со старыми версиями можно забыть.

Страницы: 1  новая тема
Раздел: 
MicroStation форум / Программирование / MS J и MS 8

Rambler's Top100
US Map

KXK.RU