Reenviar evento a todos los componentes JAVA

No sé cómo resolver este problema. Estoy desarrollando un editor gráfico, donde es posible el dibujo de arco (línea). Establecí manualmente el tamaño del componente de arco en 1000x1000, por lo que no tengo que cambiarlo cuando este arco se arrastrará y soltará. Luego pinto en este componente el arco de las dimensiones deseadas. Todos los componentes de arco tienen instalado un detector de mouse. El problema es que solo el componente de arco más alto recibe el mensaje del mouse. También tengo un detector de clics de mouse instalado en el propio JPane, pero el detector de clics de mouse en el componente más superior simplemente obtiene todos los eventos ... Es un poco difícil describir este problema, por lo que le proporcionaré la imagen simple

Así que la primera solución es reenviar de alguna manera el mensaje recibido al componente que se encuentra debajo; sin embargo, no sé cómo hacerlo, ¿tienes alguna idea?

La segunda solución es, no establecer una dimensión constante al objeto de arco, sino rotar de alguna manera el rectángulo en el que estará ese arco, es decir, así. @

sin embargo, todavía puede haber un problema superpuesto.

Entonces, ¿tienes alguna idea de cómo resolver este problema? o si tiene alguna otra idea, cómo resolver esto, sería feliz, simplemente necesito que el arco correcto reaccione al clic del mouse.

No creo que mi código de alguna manera ayude, pero aquí está

arcObject.setSize(1000, 1000); // !

y luego, en este componente, dibujo un arco

toX = o2.x - 24 * Math.cos(theta);
toY = o2.y - 24 * Math.sin(theta);
g2.draw(new Line2D.Double(toX, toY, o1.x, o1.y));

Respuestas a la pregunta(8)

Su respuesta a la pregunta