我正在尝试绘制所提供图像中的黄色部分。我有圆锥的角度,我想要在该圆锥和地球表面的交点处创建的抛物线。这是我下面的尝试,它生成了一条抛物线,但它生成的效果不是很好,并且当角度改变时抛物线的形状也不会改变。例如,在 45 度时,我希望得到一条非常标准形状的抛物线,但在 90 度时,我希望看到一条直线。我发现关于如何做到这一点的信息很少,我的尝试只是使用平面和圆锥相交方程。但我显然错过了一些东西
import numpy as np
import matplotlib.pyplot as plt
# Constants
k = 1 / np.sin(np.radians(20))**2
h = 6381009
p = 1
# Calculate values of x and y
x_values = np.linspace(-1000, 1000, 1000)
y_values = np.sqrt(k * x_values * h**2 / (1 + p**2))
# Plot the parabolic curve
plt.plot(x_values, y_values)
plt.plot(x_values, -y_values)
plt.title('Parabolic Intersection of Cone and Plane')
plt.xlabel('x (m)')
plt.ylabel('y (m)')
plt.show()