Inspired from this matlab implementation, wrote this python implementation of how to detect intersection of two curves.
fromintersectimportintersectiona, b=1, 2phi=np.linspace(3, 10, 100)
x1=a*phi-b*np.sin(phi)
y1=a-b*np.cos(phi)
x2=phiy2=np.sin(phi)+2x, y, i, j=intersection(x1, y1, x2, y2)
print(f"curves intersect at elements {i, j}, corresponding to coordinates {x,y}")
plt.plot(x1, y1, c="r")
plt.plot(x2, y2, c="g")
plt.plot(x, y, "*k")
plt.show()
To install
pip install intersect
