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

144 lines
3.6 KiB
Markdown

# 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.