A lot of problems with rectilinear (isothetic) polygons was studied by Preparata and Shamos (for example - in the book Computational Geometry: An Introduction).
I think, you have to look at the sweep line algorithm
Question
Is there an easy way of detecting the intersection of two concave polygons that have all of their sides either parallel or orthogonal to one another?
Solution
A lot of problems with rectilinear (isothetic) polygons was studied by Preparata and Shamos (for example - in the book Computational Geometry: An Introduction).
I think, you have to look at the sweep line algorithm