# 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 ```python import animation_tools.atools animation_tools.atools.show() ``` ### From Maya Shelf Click the **aTools** button on the Nexus Animation shelf. ### From MEL ```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:** ```python 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`: ```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`: ```python 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: ```python 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.