Сообщество программистов Autodesk в СНГ

ADN Club => Inventor API => Тема начата: Itachi46 от 15-10-2013, 12:16:58

Название: Поворот вида/камеры 2D чертежа
Отправлено: Itachi46 от 15-10-2013, 12:16:58
Доброго времени суток. Был на тренинге по API Invertor в рамках AU Russia 2013 и там проскакивал такой момент, что вид 2D чертежа можно повернуть как в 3D (средствами API), подробно его не разбирали но хотелось бы научиться этому.

Вопрос: к каким объектам и методам нужно обращаться чтобы повернуть вид?

З.Ы. Тем кому интересно зачем это мне нужно: т.к. я работаю преподавателем в ВУЗе, этот пример поможет наглядно объяснить почему в 2D 2 типа размеров.
Название: Re: Поворот вида/камеры 2D чертежа
Отправлено: Владимир Ананьев от 15-10-2013, 13:16:34
Петр, всё, в общем-то, просто.
Документ чертежа отображается в активном виде приложения. Ссылку на него возвращает свойство ThisApplication.ActiveView.
Активный вид – это объект Inventor.View, ориентация которого контролируется его персональным объектом Camera.  Если будем менять настройки камеры, повернется и вид. Это работает независимо от того, что отображается в виде.  Управление камерой в контексте чертежа для конечного пользователя заглушено искусственно, но программно возможно.
Вот наипростейший пример на VBA
Откройте чертеж и запустите этот макрос на выполнение:
Public Sub RotateDrawing()
    Dim oCamera As Camera
    Set oCamera = ThisApplication.ActiveView.Camera
    oCamera.ViewOrientationType = kIsoBottomLeftViewOrientation
    oCamera.Apply
End Sub
На прилагаемых копиях экрана хорошо видно, что чертеж реально трехмерный! Это хорошая иллюстрация для студентов, что бы понять, почему бывают два типа размеров.  Забыть невозможно - отличный "опорный сигнал".  Кроме того, очевидно, что графика в чертежных видах вычищена от лишних линий на заднем фоне.

(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs17.postimg.org%2Fj8mvwoz23%2Fimage.jpg&hash=a50e59708eaaa46a88e89515c45bef0c) (http://postimg.org/image/j8mvwoz23/) (https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fs17.postimg.org%2Fy5vcxpcaj%2Fimage.jpg&hash=c75434e00954cf9ac82079db1fce065b) (http://postimg.org/image/y5vcxpcaj/)

Хорошим упражнением является задание сделать программу для непрерывного вращение чертежа вокруг заданной оси.  Или еще круче -  сделать аналог орбиты из UI.


Название: Re: Поворот вида/камеры 2D чертежа
Отправлено: Itachi46 от 15-10-2013, 13:42:07
Благодарю за ответ.