PHP / GD, ¿cómo copiar un círculo de una imagen a otra?

¿Existe una forma razonablemente sencilla de copiar un área circular de un recurso de imagen a otro? Algo comoimagecopymerge ¿Excepto con círculos u óvalos, etc.?
Si es posible, quiero evitar tener que usar archivos de imagen pre-creados (cualquier forma oval debería ser posible), y si hay colores de transparencia involucrados, naturalmente, deberían dejar solo el resto de la imagen.

Por lo que pregunto, tengo algunas clases que permiten aplicar operaciones de imagen dentro de un "área seleccionada" de una imagen, que funciona al eliminar primero esa área de una copia de la imagen, y luego superponer la copia en el original. Pero, ¿qué sucede si desea seleccionar un rectángulo y luego dentro de esa opción deselecciona un círculo y las operaciones solo afectan el área que queda?

Respuestas a la pregunta(1)

Su respuesta a la pregunta