<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Changing the CameraType in Fusion API and Scripts Forum</title>
    <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10622866#M7963</link>
    <description>&lt;P&gt;Hey there everyone. &lt;BR /&gt;I am thinking of changing the Camera.cameraType Property in an add-in.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2.png" style="width: 473px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/965259i7058B0FC60282D86/image-size/large?v=v2&amp;amp;px=999" role="button" title="2.png" alt="2.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have created the following script for my next test.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# Fusion360API Python script

import traceback
import adsk.fusion
import adsk.core

_CAMERA_TYPES = [
    'OrthographicCameraType',
    'PerspectiveCameraType',
    'PerspectiveWithOrthoFacesCameraType'
]

_CAMERA_TYPES_LIST = [
    adsk.core.CameraTypes.OrthographicCameraType,
    adsk.core.CameraTypes.PerspectiveCameraType,
    adsk.core.CameraTypes.PerspectiveWithOrthoFacesCameraType,
]

def run(context):
    ui: adsk.core.UserInterface = None
    try:
        app: adsk.core.Application = adsk.core.Application.get()
        ui = app.userInterface
        des: adsk.fusion.Design = app.activeProduct
        root: adsk.fusion.Component = des.rootComponent

        vp: adsk.core.Viewport = app.activeViewport
        cam: adsk.core.Camera = vp.camera
        backupCameraType = cam.cameraType

        backupOriginFolderLight = root.isOriginFolderLightBulbOn
        root.isOriginFolderLightBulbOn = True

        for ct in _CAMERA_TYPES_LIST:
            cam.cameraType = ct
            cameraUpdate(vp, cam)

            cam = vp.camera
            ui.messageBox(_CAMERA_TYPES[cam.cameraType])

        cam.cameraType = backupCameraType
        cameraUpdate(vp, cam)

        root.isOriginFolderLightBulbOn = backupOriginFolderLight

    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))


def cameraUpdate(
        vp: adsk.core.Viewport,
        cam: adsk.core.Camera):

    vp.camera = cam
    vp.refresh()
    vp.fit()&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is the result.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/965260i14445A12B63A2F8A/image-size/large?v=v2&amp;amp;px=999" role="button" title="1.png" alt="1.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"adsk.core.CameraTypes.PerspectiveWithOrthoFacesCameraType" is very different from the one I set in the GUI.&lt;BR /&gt;Is this the correct display?&lt;BR /&gt;I am using Fusion360 Ver2.0.10940.&lt;/P&gt;</description>
    <pubDate>Wed, 15 Sep 2021 00:04:19 GMT</pubDate>
    <dc:creator>kandennti</dc:creator>
    <dc:date>2021-09-15T00:04:19Z</dc:date>
    <item>
      <title>Changing the CameraType</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10622866#M7963</link>
      <description>&lt;P&gt;Hey there everyone. &lt;BR /&gt;I am thinking of changing the Camera.cameraType Property in an add-in.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2.png" style="width: 473px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/965259i7058B0FC60282D86/image-size/large?v=v2&amp;amp;px=999" role="button" title="2.png" alt="2.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have created the following script for my next test.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# Fusion360API Python script

import traceback
import adsk.fusion
import adsk.core

_CAMERA_TYPES = [
    'OrthographicCameraType',
    'PerspectiveCameraType',
    'PerspectiveWithOrthoFacesCameraType'
]

_CAMERA_TYPES_LIST = [
    adsk.core.CameraTypes.OrthographicCameraType,
    adsk.core.CameraTypes.PerspectiveCameraType,
    adsk.core.CameraTypes.PerspectiveWithOrthoFacesCameraType,
]

def run(context):
    ui: adsk.core.UserInterface = None
    try:
        app: adsk.core.Application = adsk.core.Application.get()
        ui = app.userInterface
        des: adsk.fusion.Design = app.activeProduct
        root: adsk.fusion.Component = des.rootComponent

        vp: adsk.core.Viewport = app.activeViewport
        cam: adsk.core.Camera = vp.camera
        backupCameraType = cam.cameraType

        backupOriginFolderLight = root.isOriginFolderLightBulbOn
        root.isOriginFolderLightBulbOn = True

        for ct in _CAMERA_TYPES_LIST:
            cam.cameraType = ct
            cameraUpdate(vp, cam)

            cam = vp.camera
            ui.messageBox(_CAMERA_TYPES[cam.cameraType])

        cam.cameraType = backupCameraType
        cameraUpdate(vp, cam)

        root.isOriginFolderLightBulbOn = backupOriginFolderLight

    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))


def cameraUpdate(
        vp: adsk.core.Viewport,
        cam: adsk.core.Camera):

    vp.camera = cam
    vp.refresh()
    vp.fit()&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is the result.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/965260i14445A12B63A2F8A/image-size/large?v=v2&amp;amp;px=999" role="button" title="1.png" alt="1.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"adsk.core.CameraTypes.PerspectiveWithOrthoFacesCameraType" is very different from the one I set in the GUI.&lt;BR /&gt;Is this the correct display?&lt;BR /&gt;I am using Fusion360 Ver2.0.10940.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 00:04:19 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10622866#M7963</guid>
      <dc:creator>kandennti</dc:creator>
      <dc:date>2021-09-15T00:04:19Z</dc:date>
    </item>
    <item>
      <title>Re: Changing the CameraType</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10623069#M7964</link>
      <description>&lt;P&gt;I can reproduce the problem and it does appear to be a bug and has been logged.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 03:16:25 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10623069#M7964</guid>
      <dc:creator>BrianEkins</dc:creator>
      <dc:date>2021-09-15T03:16:25Z</dc:date>
    </item>
    <item>
      <title>Re: Changing the CameraType</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10623075#M7965</link>
      <description>&lt;P&gt;Thanks &lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/5741855"&gt;@BrianEkins&lt;/a&gt;&amp;nbsp;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I will not use "adsk.core.CameraTypes.PerspectiveWithOrthoFacesCameraType" in the add-in.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 03:21:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/changing-the-cameratype/m-p/10623075#M7965</guid>
      <dc:creator>kandennti</dc:creator>
      <dc:date>2021-09-15T03:21:43Z</dc:date>
    </item>
  </channel>
</rss>

