求弓箭发射到指定坐标所需要的角度,如果没有解,则按弓的角度发射。 已知初速度大小V,重力g,起始坐标(a1,a2),目标坐标(b1,b2)。 解: 1、列出关系式 Δx = b1 - a1; Δy = b2 - a2; Vx = V * cos(angle) Vy = V * sin(angle) Vy * t + 1/2 * g * t^2 = Δy Vx * t = Δx t = Δx / Vx 2、推导过程 (V * sin(angle)) * Δx / (V * cos(angle)) + 1/2 * g * Δx^2 / (V^2*cos(angle)^2) = Δy tan(angle) * Δx + 1/2 * g * Δx^2 / (V^2*cos(angle)^2) = Δy tan(angle) * Δx + 1/2 * g * (Δx^2 / V^2) * (1 + tan(angle)^2) = Δy 3、根据求根公式得出结论 a = 1/2 * g * Δx^2 / V^2 b = Δx c = a - Δy d = tan(angle) = (-b ± (b^2 - 4*a*c)^0.5) / (2*a) angle = atan(d)