¿Cómo calcular los valores de x e y de la traducción al cambiar el tamaño después de rotar …?

Estoy trabajando con HTML div element corner based resize en javascript .

Debajo de la imagen se muestra la operación de cambio de tamaño:

enter image description here

Uso de redimensionamiento basado en la esquina perfecto cuando el cuadro de selección div no está girado (es decir, rotate(0 deg) ).

Después de rotar, estoy usando la esquina inferior derecha para manejar el tamaño del cuadro de selección div, cuando la esquina superior izquierda necesita permanecer en la misma posición.

Al igual que tener cuatro asas , con la esquina opuesta debe permanecer en la misma posición al cambiar el tamaño.

Pero el problema es que la esquina superior izquierda del cuadro de selección no permanece en la misma posición .

Necesito calcular el valor de traducir xey para el cambio de tamaño basado en la esquina después de rotar.

Valores conocidos:

scale , center_x , center_y , previous_x , previous_y , width , height , previous_width , previous_height , diff_width , diff_height , radian_angle , rotated_degree .

Código HTML ( selection box div ):

 

Código de muestra utilizado para cambiar el tamaño después de rotar:

 switch (handle) { case 'bottom-right': x = previous_x - ? ; //logic behind after rotated some angles..? y = previous_y + ? ; break; case 'bottom-left': x = ? ; y = ? ; break; case 'top-left': x = ? ; y = ? ; break; case 'top-right': x = ? ; y = ? ; break; default: } 

El código de cambio de tamaño de la esquina inferior funciona perfectamente cuando se cambia el tamaño con div no girado ( rotate(0 deg) ):

 case 'bottom-right': x = previous_x; y = previous_y; break; case 'bottom-left': x = previous_x - diff_width; y = previous_y; break; 

Cómo calcular el valor de x & y de la traducción después de rotar para obtener la esquina fija al cambiar el tamaño.