The repository for AnyMacro: a Fusion360 Add-In

Related tags

MiscellaneousAnyMacro
Overview

AnyMacro

AnyMacro is an Autodesk® Fusion 360™ add-in for chaining multiple commands in a row to form Macros. Macros are created from a set of commands run while the add-in is recording and will fire each of them consecutively. Additionally, the macros created are able to be mapped to keyboard shortcuts for ease of access.

* This is not able to nor is it designed to replace the AnyShortcut add-in and thus, the functionality it has is not planned to be included in AnyMacro. This add-in is only based on the work by the creator of that add-in and is completly independant. With that said, using both is highly reccomended as they provide a large range of control over your Fusion 360™ application.

Features

Current:

  • Ability to record a series of commands.
  • Ability to remove commands from the Test Macro before saving.
  • Ability to stop recording, then start again while keeping history.
  • Ability to clear the current recorded commands to start again.
  • Ability to save the recorded series of commands as a persistant macro.
  • Ability to delete any recorded macro.
  • Option to block a command from being recorded if it is fired twice in a row.
  • Two Built-in Camera orienting commands.
  • One Built-in Macro to demonstrate chaining.
  • Custom Event which allows API scripts/add-ins to register macros.

Planned:

  • Create icons for built-in commands
  • A built-in command to halt any currently running macro.
  • Ability to add custom icons to each macro.
  • Possible collaboration with AnyShortcut
  • Adding Built-in macros
  • A favourites dropdown
  • Ability to edit pre-made/saved macros

Usage

When enabled, the add-in records the resulting commands of actions that the user performs and collects them in the AnyMacro menu. If not stopped, the recording stops automatically after a number of commands, to avoid any performance degradation when the user is not setting up macros.

* Not all actions in Fusion 360™ result in "Commands" and some commands are not usable on their own. For example, Pick Circle/Arc Tangent does not generate a "Command" and Roll History Marker Here is triggered when clicking rewind in the history, but rewind actually first selects an item and then rolls.

Screenshot

Creating Macros

  • Click Start recording and then launch a series of commands in the order you desire for your macro.
  • If the commands you chose are able to be recorded, they will be added underneath the record command in the Command Recorder dropdown at the top of the AnyMacro panel.
  • Should you desire to remove a command, you need just click its name within the dropdown.
  • Once you stop recording, two new options: Save Macro and Reset Recording; should appear just under the record command along with a test macro at the bottom of the list. The test macro allows you to make sure everything works before you save it and see the changes you make to the command list.
  • Finally, once you are satisfied with the macro, hit the Save Macro button. This will display a prompt that will ask you to name your macro. There are few restrictions on the name, however, make sure there are some numbers or letters as its ID will be created using the str.isidentifier() method for each character.
  • You should now find your command under the Custom Macros dropdown. You can run, assign a key-combination, and delete it right from the menu. Additionaly, the macro is persistant, meaning it will remain between sessions of fusion360 and only needs to be created once.

Removing Macros

  • Navigate to its location under the Custom Macros dropdown
  • Select the remove option under the macro.
  • A prompt will appear asking if you are sure you wish to remove it.
  • Hit OK and the macro is now gone.

Creating Macros From API (EXPEREMENTAL)

  • Create a dictionary representing your macro object.
  • Set its key: name to the desired name for the macro.
  • Set its key: id to the desired id. (Must be "A-z|0-9|_", no spaces!)
  • Set its key: executeList to a list of command-id's to execute in the same order.
  • Use json.dumps from the Json module to convert it into a string.
  • Use Application.fireCustomEvent() with the id "AnyMacro_Add_Macro"
  • Pass in your macro string for the additionalInfo argument.
  • Check to make sure your macro is visible under the Custom Macros dropdown

Built-in Objects

The AnyMacro add-in includes two built-in commands that are used in the built-in macro 'Align Camera'. These commands can be found under the menu item TOOLS -> INSPECT. The macro demonstrates how these two commands can be chained.

Built-in commands include:

  • Change Cameras Up
  • Change Cameras Forwards

Built-in macros include:

  • Align Camera

Images:

Screenshot

Screenshot

Supported Platforms

  • Windows
  • Mac OS

Installation

  1. Download the add-in from the Releases page.

  2. Unpack it into API\AddIns (see How to install an add-in or script in Fusion 360).

  3. Make sure the directory is named AnyMacro, with no suffix.

The new menu TOOLS -> ANYMACRO is now available.

The add-in can be temporarily disabled using the Scripts and Add-ins dialog. Press Shift+S in Fusion 360™ and go to the Add-Ins tab.

Reporting Issues

If you get any problems, please check out the section on Fusion 360 quirks.

If that does not apply to you, please report any issues that you find in the add-in on the Issues page.

For better support, please include the steps you performed and the result. Also include copies of any error messages.

Fusion 360 Quirks

Be aware of the following quirks in Fusion 360™.

  • Fusion 360™ cannot handle all key combinations. Forget Alt+Left to rollback history, because fusion cannot save this combination and it will be broken next time you start the application.

  • Menu items in sub-menus are not always clickable (bug).

Author

This add-in is created by ZXYNINE and is based off of Thomas Axelsson's AnyShortcut.

License

This project is licensed under the terms of the MIT license. See LICENSE.

More Fusion 360™ Add-ins

My Fusion 360™ app store page

All my add-ins on Github

Changelog

  • v 0.1.0
    • Original Implementation
You might also like...
A simple calculator that can add, subtract, multiply or divide depending upon the input from the user

Calculator A simple calculator that can add, subtract, multiply or divide depending upon the input from the user. In this example, we should have the

A script to add issues to a project in Github based on label or status.

Add Github Issues to Project (Beta) A python script to move Github issues to a next-gen (beta) Github Project Getting Started These instructions will

TB Set color display - Add-on for Blender to set multiple objects and material Display Color at once.
TB Set color display - Add-on for Blender to set multiple objects and material Display Color at once.

TB_Set_color_display Add-on for Blender with operations to transfer name between object, data, materials and action names Set groups of object's or ma

This repo contains scripts that add functionality to xbar.
This repo contains scripts that add functionality to xbar.

xbar-custom-plugins This repo contains scripts that add functionality to xbar. Usage You have to add scripts to xbar plugin folder. If you don't find

A clipboard where a user can add and retrieve multiple items to and from (resp) from the clipboard cache.

A clipboard where a user can add and retrieve multiple items to and from (resp) from the clipboard cache.

💻 Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your DSA journey.📰🔥 This repository contains the REST APIs of the application.✨
💻 Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your DSA journey.📰🔥 This repository contains the REST APIs of the application.✨

Algo-Phantom-Backend 💻 Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your D

This repository is an archive of emails that are sent by the awesome Quincy Larson every week.

Awesome Quincy Larson Email Archive This repository is an archive of emails that are sent by the awesome Quincy Larson every week. If you fi

Find the remote website version based on a git repository
Find the remote website version based on a git repository

versionshaker Versionshaker is a tool to find a remote website version based on a git repository This tool will help you to find the website version o

Comments
  • Issue report on MAC through autodesk.

    Issue report on MAC through autodesk.

    "The app seems to be working fine, but the below error shown in Mac once but unable to reproduce this. Please check it once." ErrorMac "The app seems to be working fine, but the below error shown in Mac once but unable to reproduce this. Please check it once."

    Potentially Solved 
    opened by Zxynine 0
Releases(v1.0.3)
The Zig programming language, packaged for PyPI

Zig PyPI distribution This repository contains the script used to repackage the releases of the Zig programming language as Python binary wheels. This

Zig Programming Language 100 Nov 04, 2022
A python script that automatically joins a zoom meeting based on your timetable.

Zoom Automation A python script that automatically joins a zoom meeting based on your timetable. What does it do? It performs the following processes:

Shourya Gupta 3 Jan 01, 2022
script buat mengcrack

setan script buat mengcrack cara install $ pkg install upgrade && pkg update $ pkg install python $ pkg install git $ pip install requests $ pip insta

1 Nov 03, 2021
This is the DBMS Project done in 5th sem of B.E CS.

Student-Result-Management-System This is the DBMS Project done in 5th sem of B.E CS. You need to install SQlite DB Browser in your pc or laptop to ope

Vivek kulkarni 1 Jan 14, 2022
Clock in automatically in SCU.

auto_clock_in Clock in automatically in SCU. Features send logs to Telegram bot How to use? pip install -r requirements.txt () edit user_list, token_A

2 Dec 13, 2021
take home quiz

guess the correlation data inspection a pretty normal distribution train/val/test split splitting amount .dataset: 150000 instances ├─8

HR Wu 1 Nov 04, 2021
Alternative StdLib for Nim for Python targets

Alternative StdLib for Nim for Python targets, hijacks Python StdLib for Nim

Juan Carlos 100 Jan 01, 2023
A (hopefully) considerably copious collection of classical cipher crackers

ClassicalCipherCracker A (hopefully) considerably copious collection of classical cipher crackers Written in Python3 (and run with PyPy) TODOs Write a

Stanley Zhong 2 Feb 22, 2022
Курс "Искусственный интеллект и машинное обучение"

Искусственный интеллект и машинное обучение О курсе Данный репозиторий содержит в себе сопроводительный учебный материал для курса "Искусственный инте

Dmitry Aladin 19 Dec 04, 2022
About A python based Apple Quicktime protocol,you can record audio and video from real iOS devices

介绍 本应用程序使用 python 实现,可以通过 USB 连接 iOS 设备进行屏幕共享 高帧率(30〜60fps) 高画质 低延迟(200ms) 非侵入性 支持多设备并行 Mac OSX 安装 python =3.7 brew install libusb pkg-config 如需使用 g

YueC 124 Nov 30, 2022
京东热爱狂欢趴&京东扫码获取cookie

京东热爱狂欢趴 一键完成任务脚本来袭 活动地址: https://wbbny.m.jd.com/babelDiy/Zeus/2s7hhSTbhMgxpGoa9JDnbDzJTaBB/index.html#/home 2021-06-02更新: 1、删除京东星推官 2、更新脚本,修复火爆问题 2021

xoyi 48 Dec 28, 2022
Med to csv - A simple way to parse MedAssociate output file in tidy data

MedAssociates to CSV file A simple way to parse MedAssociate output file in tidy

Jean-Emmanuel Longueville 5 Sep 09, 2022
Craxk is a SINGLE AND NON-REPLICABLE Hash that uses data from the hardware where it is executed to form a hash that can only be reproduced by a single machine.

What is Craxk ? Craxk is a UNIQUE AND NON-REPLICABLE Hash that uses data from the hardware where it is executed to form a hash that can only be reprod

5 Jun 19, 2021
北大选课网2021年春季验证码识别

北大选课网验证码识别 2021 年春季学期 Powered by Elector Quartet (@Rabbit, @xmcp, @SpiritedAwayCN, @gzz) 数据集描述 最初的数据集为 5130 张人工标记的验证码,之后利用早期训练好的模型在选课网上进行自动验证 (自举),又收集

Rabbit 27 Sep 17, 2022
Simple card retirement plugin for Anki

Anki Retirement Addon Allow users to suspend, tag, delete, or move cards that reach a specific retirement interval Supports Anki version 2.1.45 Licens

3 Dec 23, 2022
JD扫码获取Cookie 本地版

JD扫码获取Cookie 本地版 请无视手机上的提示升级京东版本的提示! 下载链接 https://github.com/Zy143L/jd_cookie/releases 使用Python实现 代码很烂 没有做任何异常捕捉 但是能用 请不要将获取到的Cookie发送给任何陌生人 如果打开闪退 请使

Zy143L 420 Dec 11, 2022
The repository for my video "Playing MINECRAFT with a WEBCAM"

This is the official repo for my video "Playing MINECRAFT with a WEBCAM" on YouTube Original video can be found here: https://youtu.be/701TPxL0Skg Red

Rishabh 27 Jun 07, 2022
Application launcher and environment management

Application launcher and environment management for 21st century games and digital post-production, built with bleeding-rez and Qt.py News Date Releas

10 Nov 03, 2022
One-stop-shop for docs and test coverage of dbt projects.

dbt-coverage One-stop-shop for docs and test coverage of dbt projects. Why do I need something like this? dbt-coverage is to dbt what coverage.py and

Slido 106 Dec 27, 2022
Learn the basics of Python. These tutorials are for Python beginners. so even if you have no prior knowledge of Python, you won’t face any difficulty understanding these tutorials.

01_Python_Introduction Introduction 👋 Python is a modern, robust, high level programming language. It is very easy to pick up even if you are complet

Milaan Parmar / Милан пармар / _米兰 帕尔马 245 Dec 30, 2022