Files
Nexus/2023/scripts/animation_tools/atools/README.md
2025-11-25 02:04:55 +08:00

3.6 KiB

aTools Wrapper Module

Overview

This is a simplified wrapper module for aTools that allows direct launching without installation.

Features

  • No Installation Required: Launch aTools directly without modifying userSetup.py
  • Multi-Version Support: Works with Maya 2017-2026+
  • Simple API: Easy to use show() function
  • Shelf Integration: Included in Nexus Animation shelf

Usage

From Python

import animation_tools.atools
animation_tools.atools.show()

From Maya Shelf

Click the aTools button on the Nexus Animation shelf.

From MEL

python("import animation_tools.atools; animation_tools.atools.show()");

Requirements

  1. Python Path: The animation_tools folder must be in sys.path
    • Automatically configured if using the standard plugin structure

File Structure

animation_tools/
└── atools/                    # aTools integrated module (flattened structure)
    ├── __init__.py           # Main entry module
    ├── setup.py              # Setup module
    ├── README.md             # This file
    ├── TEST_ATOOLS.py        # Test script
    ├── CHECKLIST.md          # Feature checklist
    ├── FINAL_STRUCTURE.md    # Structure documentation
    ├── MIGRATION_COMPLETE.md # Migration notes
    ├── animTools/            # Animation tools (22 files)
    │   ├── animBar/
    │   │   ├── animBarUI.py  # Main UI
    │   │   └── subUIs/       # Sub UI modules
    │   └── ...
    ├── commonMods/           # Common modules (6 files)
    │   ├── animMod.py
    │   ├── utilMod.py
    │   └── ...
    ├── generalTools/         # General tools (7 files)
    │   ├── aToolsGlobals.py
    │   └── ...
    └── img/                  # UI icons (159 files)

API Reference

Functions

show(*args, **kwargs)

Launch aTools Animation Bar

Returns: Animation Bar window instance

Example:

import animation_tools.atools
animation_tools.atools.show()

launch(*args, **kwargs)

Alias for show(). Launch aTools Animation Bar

Returns: Animation Bar window instance

version()

Get aTools wrapper version

Returns: Version string (e.g., "2.0.0")

isMaya()

Check if running in Maya environment

Returns: True if in Maya, False otherwise

Shelf Button Configuration

The aTools button is configured in shelf_Nexus_Animation.mel:

shelfButton
    -annotation "aTools - Animation tools collection" 
    -label "aTools" 
    -image "aTools.png" 
    -command "import animation_tools.atools\nanimation_tools.atools.show()" 
    -sourceType "python"
;

Troubleshooting

Import Error: "No module named 'animTools'"

Solution: Ensure animTools, commonMods, and generalTools folders exist in the atools directory.

Import Error: "No module named 'animation_tools'"

Solution: Add the scripts folder to sys.path in userSetup.py:

import sys
import os
scripts_path = r'h:\Workspace\Raw\Tools\Plugins\Maya\2023\scripts'
if scripts_path not in sys.path:
    sys.path.insert(0, scripts_path)

aTools doesn't launch

Solution: Run the test script to diagnose:

execfile(r'h:\Workspace\Raw\Tools\Plugins\Maya\2023\scripts\animation_tools\atools\TEST_ATOOLS.py')

Credits

  • Original aTools: Alan Camilo (www.alancamilo.com)
  • Wrapper Module: Created for Nexus Animation Tools
  • Modified by: Michael Klimenko

License

This wrapper follows the same license as the original aTools package.