public static bool RoundAndRound(Round r1, Round r2) { if ((r1.X - r2.X) * (r1.X - r2.X) + (r1.Y - r2.Y) * (r1.Y - r2.Y) < (r1.R + r2.R) * (r1.R + r2.R)) return true; else return false; }
public static bool isRoundInRound(Round ri, Round ro) { if ((ro.X - ri.X) * (ro.X - ri.X) + (ro.Y - ri.Y) * (ro.Y - ri.Y) <= (ro.R - ri.R) * (ro.R - ri.R)) return true; else return false; }
public static bool isPointInRound(Point p, Round r) { if (Math.Sqrt((p.X - r.X) * (p.X - r.X) + (p.Y - r.Y) * (p.Y - r.Y)) < r.R) return true; else return false; }
public static bool RectAndRound(Rectangle re, Round ro) { return isPointInRect(new Point(ro.X, ro.Y), new Rectangle(re.X - ro.R, re.Y - ro.R, re.Width + ro.R, re.Height + ro.R)); }