Форум пользователей ПО АСКОН

Профессиональные вопросы => Программирование приложений => Тема начата: SerGoVec от 06.03.18, 15:13:07

Название: GetViewProjectionCollection в компас 17
Отправлено: SerGoVec от 06.03.18, 15:13:07
Всем привет!

В компас 16 можно было получить указатель на интерфейс массива проекций отображения модели (ksViewProjectionCollection), и соответсвенно, поменять проекцию отображения модели в окне.
Я делал это так:

        ...
        doc7 := K7.ActiveDocument as IKompasDocument3D;
        if doc7 = nil then
          Exit;

        doc5 := ksDocument3D(K5.ActiveDocument3D); //управление и уничтожение документом перешло сюда.
        doc5.hideAllAuxiliaryGeom := True;

        vpc := ksViewProjectionCollection(doc5.GetViewProjectionCollection());
        pc := ksViewProjection(vpc.GetByIndex(10));      //vp_Dio 10 Диметрия
        pc.SetCurrent;
        ...


В 17 версии компаса, строка: ...ksViewProjectionCollection(doc5.GetViewProjectionCollection())... получает указатель = nil.
Как теперь, в 17 версии компаса, получить коллекцию проекций отображения модели??
Название: Re: GetViewProjectionCollection в компас 17
Отправлено: Sabahs от 06.03.18, 16:14:22
Нормально в v17 получаю коллекцию.
Название: Re: GetViewProjectionCollection в компас 17
Отправлено: SerGoVec от 06.03.18, 16:48:47
я немного неправильно выразился: не указатель самой строки ...vpc := ksViewProjectionCollection(doc5.GetViewProjectionCollection());..., а ...doc5.GetViewProjectionCollection()... будет nil.
Мне кажется, что указатель vpc := ksViewProjectionCollection(doc5.GetViewProjectionCollection()); типа фиктивный.
Как считаете?
Название: Re: GetViewProjectionCollection в компас 17
Отправлено: Sabahs от 06.03.18, 17:06:06
По индексу, получать не факт, что там именно то.
Название: Re: GetViewProjectionCollection в компас 17
Отправлено: 333 от 26.03.18, 18:53:48
В V17 изменился список проекций
Новое перечисление ksViewProjectionType
Изометрия теперь одна ksVPIsometric = 7
ksVPDimetric   = 8
Название: Re: GetViewProjectionCollection в компас 17
Отправлено: Sabahs от 26.03.18, 18:55:52


Цитата: 333 от 26.03.18, 18:53:48
В V17 изменился список проекций
Новое перечисление ksViewProjectionType
Изометрия теперь одна ksVPIsometric = 7
ksVPDimetric   = 8
Русская рулетка.