This commit is contained in:
2026-03-09 09:22:21 -07:00
parent 8cfae8dea2
commit dd4899b8f9
29 changed files with 1014 additions and 1 deletions

View File

@@ -0,0 +1,79 @@
---
name: polygon-drawer
description: Takes an image and adds a polygon to it at the user's request. Typically the user will ask to add a polygon around a particular object
---
# Polygon Drawer Skill
This skill uses @tools/draw_polygon.py to help you draw polygons on any image. It's useful for highlighting areas, drawing boxes, marking regions, or annotating images with colored shapes.
## Usage Examples
### Draw a red box around an object
```
Draw a red box around the door in <image>
```
### Highlight a specific area in green
```
Highlight the pool area in <image> with a green polygon
```
### Draw a blue rectangle with percentage coordinates
```
Draw a blue polygon on <image> using coordinates: 0.5,0.3 0.7,0.3 0.7,0.6 0.5,0.6
```
### Mark a triangular region with fill
```
Draw a semi-transparent yellow triangle on <image>: 0.5,0.1 0.9,0.9 0.1,0.9 --fill
```
### Draw a custom-colored polygon with thick lines
```
Draw a cyan polygon on <image>: 0.2,0.2 0.8,0.2 0.8,0.8 0.2,0.8 --color cyan --thickness 5
```
### Use pixel coordinates (absolute mode)
```
Draw a red box using pixel coordinates: 100,50 400,50 400,300 100,300 --absolute
```
Make sure to quote the coordinates when calling the script: "100,50 400,50 400,300 100,300"
## How It Works
1. **Analyze** the image to identify what needs highlighting
2. **Calculate** polygon coordinates (default: percentage mode 0.0-1.0)
3. **Execute** `@tools/draw_polygon.py` with the calculated points
4. **Output** the resulting image to `./tmp/` directory
5. **Display** the save path so you can open it
## Coordinate Systems
- **Percentage mode** (default): 0.0-1.0 coordinates where (0,0) is top-left and (1,1) is bottom-right
- **Absolute mode**: Use `--absolute` flag for actual pixel coordinates
## Output Location
By default, the image is just shown to the user without writing anything.
If the user asks to save it, use the --save flag.
All generated images are saved to:
```
./tmp/
```
The skill will output the full path to the saved image, e.g., `./tmp/output_1234567890.png`
## Color Options
- Named colors: red, green, blue, yellow, cyan, magenta, white, black, orange, purple, brown, pink, gray, grey, lime, navy, teal, maroon
- Hex codes: #FF0000, #00FF00FF, etc.
## Flags
- `--fill`: Fill polygon with semi-transparent color
- `--absolute`: Use pixel coordinates instead of percentages
- `--color <name>`: Specify polygon color (default: red)
- `--thickness <pixels>`: Line thickness (default: 4)
- `--save <path>`: Override default save location (still goes to ./tmp/)