C = {
const BD = Math.sqrt(len.a**2 + len.d**2 - 2 * len.a * len.d * Math.cos(theta));
const phi = Math.asin(len.a * Math.sin(theta) / BD);
const psi = Math.acos((len.b**2 + BD**2 - len.c**2) / (2 * len.b * BD));
return {
x: B.x + len.b * Math.cos(psi - phi),
y: B.y + len.b * Math.sin(psi - phi)
}
}