| 2087 | // project a circle, onto a point, via a ray (i.e. how far along the ray can the circle travel until it contacts the point?) |
| 2088 | template<typename T1, typename T2, typename T3> |
| 2089 | inline std::optional<olc::v_2d<T1>> project(const circle<T1>& c, const olc::v_2d<T2>& p, const ray<T3>& q) |
| 2090 | { |
| 2091 | return project(c, circle<T2>(p, 0), q); |
| 2092 | } |
| 2093 | |
| 2094 | |
| 2095 | // project(c,c) |