Rotate and proportionally scale a vector

Hello, how to rotate a vector and scale its magnitude proportional to the angle to get a for example constant value on the y-axis?
188146-1.png

A pani od matematyki nie uczyła jak liczyć miejsce zerowe funkcji, hm?
_
miejsce zerowe funkcji unity

using UnityEngine;
public class MiejsceZeroweFunkcjiLiniowej : MonoBehaviour
{
    [SerializeField] Vector2 _In = Vector2.one;
    [SerializeField] float _InRotation = 0;// degrees
    [SerializeField] Vector2 _Out;
    [SerializeField] float _yCutoff = 1.5f;
    void OnValidate ()
    {
        float inVecAngle = Mathf.Atan2( _In.y , _In.x );// radians
        float inVecAngleRotated = inVecAngle + Mathf.Deg2Rad*_InRotation;// radians
        Vector2 inVecRotated = new Vector2{ x=Mathf.Cos(inVecAngleRotated) , y=Mathf.Sin(inVecAngleRotated) };// unit vector, for simplicity
        float fx = inVecRotated.y / inVecRotated.x;// f(x) = (vec.y/vec.x)*x + 0
        float fy = inVecRotated.x / inVecRotated.y;// f(y) = (vec.x/vec.y)*y + 0
        _Out = new Vector2{ x=fy*_yCutoff , y=_yCutoff };
    }
    void OnDrawGizmos ()
    {
        Gizmos.color = Color.yellow; Gizmos.DrawLine( new Vector3{x=-10,y=_yCutoff} , new Vector3{x=+10,y=_yCutoff} );
        Gizmos.color = Color.white; Gizmos.DrawRay( Vector3.zero , _In );
        Gizmos.color = Color.red; Gizmos.DrawRay( Vector3.zero , _Out );
    }
}