# tk_rgba_color_wheel.py

import tkinter as tk
from PIL import Image, ImageTk
import math, colorsys

size = 250
radius = 100
center = (size // 2, size // 2)
image = Image.new("RGBA", (size, size), (0, 0, 0, 0))
pixels = image.load()

for y in range(size):
    for x in range(size):
        dx = x - center[0]
        dy = y - center[1]
        distance = math.hypot(dx, dy)
        if distance <= radius:
            angle = math.atan2(dy, dx)
            hue = (angle + math.pi) / (2 * math.pi)
            r, g, b = [int(c * 255) for c in colorsys.hsv_to_rgb(hue, 1, 1)]
            alpha = int((1 - distance / radius) * 255)
            pixels[x, y] = (r, g, b, alpha)

root = tk.Tk()
root.title("tk RGBA Color Wheel")

tk_image = ImageTk.PhotoImage(image)
label = tk.Label(root, image=tk_image)
label.pack()

root.mainloop()