How to change Spring Arm rotation?

Hello people!
Who knows, how to automaticaly change Spring Arm rotation from 60 degree to 90? Like on image 3 ?
Let’s me explain.
I have (top down) style project with spring arm camera fixed on 60 degrees.
If i try to go closer to any hight object, like on (image 1) so, the camera starts moves closer to player, because there is a obstruction between the player and the camera. Like on (image 2).
But i need keep the height of the camera and also see the player all time. That’s why i decided to change Spring Arm rotation like on (Image 3) from 60 to 90, when player close to wall and back from 90 to 60, when far away from it, with gradually changing values.
How to make it?
Please, help me.

so it looks like you are trying to get the spring arm to rotate around objects instead of forcing the camera closer or farther from the player pawn?

Yes, all right, rotate around player pawn, when this pawn close to any object.

Video 1, is what i have:

Video 2, this is what i want to do:

My scene looks like this:

In video 2, i just manually press G key for make rotation 90 and press T key for back to 60.

On video you can see numbers. This is length value from camera to target spring arm. Spring arm world rotation i was made with key G and T.

Unfortunately, that’s all I could make of with my low level of skills in BP.
Standart length is 600 and rotation -60.

I need make gradually world rotation values, ofcourse, without pressing any buttons on keyboard. start from, for example, 500 > 300(60>90) and back 300>500(90>60).
Almost like in the video 2
When the length is 499, rotation is -61°
When the length is 498, rotation is -62°
When the length is 497, rotation is -63°
When the length is 496, rotation is -64° and etc. go to 300,-90°
And backwards.
So i don’t know how make it in bp, to set vector length values for rotation changes.
I hope, you understand my english…

I know this is an old post, but I’m figuring out the same thing. Did you ever find a solution?

Being confronted to a situation of the same type i’ve been able to find a solution, so to anyone out there, here’s for you.
So basically what i did is add a collision zone (a cylinder) that would react to the environment.
All in all, i set enable overlapping events in every meshes in the level, and i’d set the rotation of my spring arm whenever my cylinder was overlapping these meshes.