<?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 Re: Fusion 360 &amp;quot;Python&amp;quot; Script - Flat Pattern &amp;amp; Export To Dxf in Fusion API and Scripts Forum</title>
    <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12178441#M3055</link>
    <description>&lt;P&gt;Here's a simple script that checks the active document has a flat pattern and exports it as DXF.&lt;/P&gt;&lt;LI-CODE lang="python"&gt;def run(context):
    app = adsk.core.Application.get()
    ui = app.userInterface
    try:
        flatProduct: adsk.fusion.FlatPatternProduct = app.activeDocument.products.itemByProductType('FlatPatternProductType')
        if flatProduct is None:
            ui.messageBox('No flat pattern exists in the active document.')
            return

        flat = flatProduct.flatPattern
        if flat is None:
            ui.messageBox('No flat pattern exists in the active document.')
            return

        filename = 'C:/Temp/Test.dxf'
        flatExportOptions = flatProduct.exportManager.createDXFFlatPatternExportOptions(filename, flat)
        if flatProduct.exportManager.execute(flatExportOptions):
            ui.messageBox(f'Successfully exported flat pattern to: "{filename}"')
        else:
            ui.messageBox('Flat pattern export failed.')
    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))&lt;/LI-CODE&gt;</description>
    <pubDate>Thu, 17 Aug 2023 17:59:53 GMT</pubDate>
    <dc:creator>BrianEkins</dc:creator>
    <dc:date>2023-08-17T17:59:53Z</dc:date>
    <item>
      <title>Fusion 360 "Python" Script - Flat Pattern &amp; Export To Dxf</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12169763#M3052</link>
      <description>&lt;P&gt;Can anybody help?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is it possible, using a Fusion 360 "Python" Script to automatically "Flat Pattern" &amp;amp; Export a "dxf" file from a "sheet metal" model?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If it is, can somebody post the script file required to do this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Many thanks in advance!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Darren&lt;/P&gt;</description>
      <pubDate>Mon, 14 Aug 2023 14:07:16 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12169763#M3052</guid>
      <dc:creator>isocam</dc:creator>
      <dc:date>2023-08-14T14:07:16Z</dc:date>
    </item>
    <item>
      <title>Re: Fusion 360 "Python" Script - Flat Pattern &amp; Export To Dxf</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12171108#M3053</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/84538"&gt;@isocam&lt;/a&gt;&amp;nbsp;-San.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;I have exported a DXF of a flat pattern in a previously published add-in.&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://github.com/kantoku-code/Fusion360_BLACKSMITH/blob/main/BLACKSMITH/commands/SheetMetalExport/SheetMetalExportFactry.py#L163" target="_blank" rel="noopener"&gt;https://github.com/kantoku-code/Fusion360_BLACKSMITH/blob/main/BLACKSMITH/commands/SheetMetalExport/SheetMetalExportFactry.py#L163&lt;/A&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 15 Aug 2023 02:37:37 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12171108#M3053</guid>
      <dc:creator>kandennti</dc:creator>
      <dc:date>2023-08-15T02:37:37Z</dc:date>
    </item>
    <item>
      <title>Re: Fusion 360 "Python" Script - Flat Pattern &amp; Export To Dxf</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12176942#M3054</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/84538"&gt;@isocam&lt;/a&gt;&amp;nbsp;-San.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The execution condition is that the root component must have a sheet metal body.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# Fusion360API Python script

import traceback
import adsk.core as core
import adsk.fusion as fusion
import pathlib

def run(context):
    ui: core.UserInterface = None
    try:
        app: core.Application = core.Application.get()
        ui = app.userInterface
        des: fusion.Design = app.activeProduct
        root: fusion.Component = des.rootComponent

        # get sheetmetal bodies
        sheetBodies = [b for b in root.bRepBodies if b.isSheetMetal]

        # get sheetmetal large face
        flatFaces = [f for f in sheetBodies[0].faces
            if f.geometry.objectType == core.Plane.classType()]
        targetFace: fusion.BRepFace = max(flatFaces, key=lambda f: f.area)

        # remove flatpattern
        flat: fusion.FlatPattern = root.flatPattern
        if flat:
            flatProd: fusion.FlatPatternProduct = flat.parentComponent.parentDesign
            flatProd.deleteMe()

        # create flatpattern
        flat: fusion.FlatPattern = root.createFlatPattern(targetFace)

        # export path
        exportPath = str(pathlib.Path("C:/temp") / f"{flat.name}.dxf")

        # export dxf
        export_dxf(exportPath, flat)
    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))


def export_dxf(path: str, flat: fusion.FlatPattern) -&amp;gt; None:
    app: core.Application = core.Application.get()
    des: fusion.Design = app.activeProduct
    expMgr: fusion.ExportManager = des.exportManager
    dxfOpt: fusion.DXFFlatPatternExportOptions = expMgr.createDXFFlatPatternExportOptions(
        path,
        flat,
    )
    expMgr.execute(dxfOpt)&lt;/LI-CODE&gt;</description>
      <pubDate>Thu, 17 Aug 2023 08:44:49 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12176942#M3054</guid>
      <dc:creator>kandennti</dc:creator>
      <dc:date>2023-08-17T08:44:49Z</dc:date>
    </item>
    <item>
      <title>Re: Fusion 360 "Python" Script - Flat Pattern &amp; Export To Dxf</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12178441#M3055</link>
      <description>&lt;P&gt;Here's a simple script that checks the active document has a flat pattern and exports it as DXF.&lt;/P&gt;&lt;LI-CODE lang="python"&gt;def run(context):
    app = adsk.core.Application.get()
    ui = app.userInterface
    try:
        flatProduct: adsk.fusion.FlatPatternProduct = app.activeDocument.products.itemByProductType('FlatPatternProductType')
        if flatProduct is None:
            ui.messageBox('No flat pattern exists in the active document.')
            return

        flat = flatProduct.flatPattern
        if flat is None:
            ui.messageBox('No flat pattern exists in the active document.')
            return

        filename = 'C:/Temp/Test.dxf'
        flatExportOptions = flatProduct.exportManager.createDXFFlatPatternExportOptions(filename, flat)
        if flatProduct.exportManager.execute(flatExportOptions):
            ui.messageBox(f'Successfully exported flat pattern to: "{filename}"')
        else:
            ui.messageBox('Flat pattern export failed.')
    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))&lt;/LI-CODE&gt;</description>
      <pubDate>Thu, 17 Aug 2023 17:59:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/fusion-360-quot-python-quot-script-flat-pattern-amp-export-to/m-p/12178441#M3055</guid>
      <dc:creator>BrianEkins</dc:creator>
      <dc:date>2023-08-17T17:59:53Z</dc:date>
    </item>
  </channel>
</rss>

