To find out wich face overlaps with a given line


In this situation, how can i determine which face overlaps with the virtual blue line with given alpha angle started from vtx2?

in other words, for example:
If i give: vtx2, 45(deg) as inputs, I want to get get face1 as result.
If i give: vtx2, 135(deg) as inputs, I want to get get face0 as result.

Detecting if the line is out of geometry in case of border vtcs would be nice.
The geometry show in the picture has been simplyficated for easier presentation. It should work in various situations like faces with more than four sides or concave faces Etc. But vtx2 connects only two edges. (above two edges it gets easier)

I planned to get the point half way from vtx1 to vtx3 and compare it’s position with the set of one of the two faces but i don’t know how to do. Other better, more effective ways are welcome.