如何用C++写出:判断矩形和圆的位置关系?

我知道有四种关系,相交,包含(两种),相离。
圆包含矩形的情况可以 检测圆的四个坐标轴方向点的坐标是否在矩形内或在矩形上
矩形包含圆的情况可以 检测矩形的四点是否在圆中
但是矩形和圆相交相离就不知道怎么判断了。。。。