Category: Fusion
-
Lesson 4A: Convert script to an Add-in(C++/Python)
Python C++ After creating an add-in, we’ll have a project structure like below. Same as the script, they entry point is in the BasicAddin.py. Let’s take a look at it. # Assuming you have not changed the general structure of the template no modification is needed in this file. from . import commands from .lib…
-
Lesson 3: Create a shoebox
Python C++ Typescript @dataclass class BoxParameters: border_thickness : float bottom_thickness : float inner_width : float inner_length : float inner_height : float fillet_size : float def __init__(self, border_thickness: float, bottom_thickness:float, inner_width:float, inner_length:float, inner_height:float, fillet_size:float): self.border_thickness = border_thickness self.bottom_thickness = bottom_thickness self.inner_width = inner_width self.inner_length = inner_length self.inner_height = inner_height self.fillet_size = fillet_size typedef struct { double…
-
Lesson 2: Understand the document
#include <Fusion/Components/Component.h> // Get the value of the property. Ptr<Features> propertyValue = component_var->features(); std::string processProperty(const Ptr<Property>& property) { const char* propertyObjectType = property->objectType(); if (strcmp(IntegerProperty::classType(), propertyObjectType) == 0) return processIntegerProperty(property); if (strcmp(StringProperty::classType(), propertyObjectType) == 0) return processStringProperty(property); if (strcmp(BooleanProperty::classType(), propertyObjectType) == 0) return processBooleanProperty(property); if (strcmp(FloatProperty::classType(), propertyObjectType) == 0) return processFloatProperty(property); if (strcmp(ChoiceProperty::classType(), propertyObjectType) ==…
-
Lesson 1: The basic scripts and Add-in
Python/C++ Typescript 1. Launch Fusion, find utilities and click at the drop menu of ADD-INS button. You can find Scripts and Add-ins menu item. 2. Click at it, in the new window, we can create two types of add-ins: Scripts and Add-ins. There isn’t much different between them technically. The script will run at once…
-
Guardrails for Using AI in Autodesk Plugin Development
This post outlines curated guardrails for the effective use of Copilot and other agentic AI tools when developing plugins and extensions for Autodesk authoring applications such as AutoCAD, Revit, and Inventor. I used ChatGPT to help refine the wording. Consider it quiet LLM cannibalism. :) These guardrails can be enforced by placing them in your…
-
Fusion Python Upgrade and more
The information below was sent out to people who submitted a Python-based Fusion add-in on the App Store, but it’s worth letting all Fusion developers know about this. Python UpdateThe first is an upgrade of the Python version used in Fusion from 3.12 to 3.14. We don’t expect this change to break any apps, but…
-
Exploring Fusion Design Model Hierarchy Using the Manufacturing Data Model API (Not Fusion Software)
<?xml encoding=”UTF-8″>by Chandra shekar Gopal, Why Explore Model Hierarchies? When working with Fusion designs, understanding the complete structure of your assemblies, components, and subcomponents is crucial for effective manufacturing data analysis, automation, and downstream workflows. ⚡ Important: This workflow retrieves your Fusion design’s Model Hierarchy directly from the cloud using the Manufacturing Data Model API, not…

You must be logged in to post a comment.