球面摆线的投影:参数曲线与立体构造
几何画板及绘图内容加载中,请稍等……
该范例演示球面摆线在不同平面上的投影形状如何随参数变化而形成曲线轨迹。核心数学概念包括:球面曲线(spherical trochoid)、参数方程下的曲线投影(projection)、以及由圆锥/球面组合产生的几何关系。作图要点是先用Sphere建立球面,再用Circle与Cone给出绕行与展开所需的几何载体,通过Line、Plane确定投影方向与承载平面;随后借助CurveCartesian生成对应的笛卡尔坐标曲线,并用Angle、AngularBisector等关系约束关键角度,配合Point与Sequence/Point序列生成参数点位置,最后用Surface与Segment辅助显示立体结构与截取线。具体用到的 GeoGebra 命令/对象包括:CurveCartesian、Sphere、Circle、Cone、Plane、Surface、Line、Segment、Angle、AngularBisector、Sequence、Point 等,以及参数/状态对象如 t、speed、R、O、A/α 等用于驱动动态变化;适合高中到大学的立体几何与参数曲线可视化教学,也适合对几何作图、轨迹与投影关系感兴趣的学习者自学与实验。
GeoGebra 命令及参数
CurveCartesian(((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b + d) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b + d) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b + d) * cos((a / b * t))))), t, 0, ((2 * π) * b)) → eSphere((0, 0, h), R) → cCircle((0, 0, 0), a, zAxis) → fCone(C, O, b) → g, k, iCone((0, 0, 0), O, a) → j, p, lSegment(O, E_t) → mAngle(O + (0, 0, -1), O, (a, 0, 0)) → αSegment(O, (a, 0, 0)) → rSurface(((r * cos(u)) * cos(v)), ((r * sin(u)) * cos(v)), h + (r * sin(v)), u, 0, 6.28319, v, -1.5708, ((-π)) / 2 + α) → hsSegment(C, E_t) → qSequence(Rotate[r, i, zAxis], i, 0, 6.28319, ((2 * π / n) * b / a)) → liste1CurveCartesian(((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b + d) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b + d) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b + d) * cos((a / b * t))))), t, 0, tt) → oSequence(Segment[Rotate[C, i, Line[C, O]], Rotate[E_0, i, Line[C, O]]], i, 0, 6.28319, (2 * π / n)) → liste3Sequence(Segment[Rotate[O, i, Line[O, C]], Rotate[E_0, i, Line[O, C]]], i, 0, 6.28319, (2 * π / n)) → liste2Circle(C, b, Line[C, O]) → cmCurveCartesian(((a - (b * cos(w)) + (((b - 0.25) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b - 0.25) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b - 0.25) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b - 0.25) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b - 0.25) * cos((a / b * t))))), t, 0, tt) → tCurveCartesian(((a - (b * cos(w)) + (((b - 0.5) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b - 0.5) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b - 0.5) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b - 0.5) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b - 0.5) * cos((a / b * t))))), t, 0, tt) → uCurveCartesian(((a - (b * cos(w)) + (((b - 0.75) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b - 0.75) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b - 0.75) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b - 0.75) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b - 0.75) * cos((a / b * t))))), t, 0, tt) → vCurveCartesian(((a - (b * cos(w)) + (((b - 1) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b - 1) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b - 1) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b - 1) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b - 1) * cos((a / b * t))))), t, 0, tt) → a_1CurveCartesian(((a - (b * cos(w)) + (((b - 1.25) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b - 1.25) * sin(t)) * sin((a / b * t))), ((a - (b * cos(w)) + (((b - 1.25) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b - 1.25) * cos(t)) * sin((a / b * t))), (sin(w) * (b - ((b - 1.25) * cos((a / b * t))))), t, 0, tt) → b_1Point(zAxis) → DPoint(xAxis) → BAngularBisector(yAxis, xAxis) → g_1, h_1Line(B, h_1) → i_1Line(B, zAxis) → f_1Point(i_1) → EPoint(f_1) → FPlane(B, E, F) → q_1CurveCartesian(x(B), y(B) + (a * cos(i)^(2)), z(B) + ((a^(2) * cos(i)^(3)) * sin(i) / b), i, 0, tt) → d_1CurveCartesian(x(D) + ((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b + d) * sin(t)) * sin((a / b * t))), y(D) + ((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b + d) * cos(t)) * sin((a / b * t))), z(D) + ((0 * sin(w)) * (b - ((b + d) * cos((a / b * t))))), t, 0, tt) → c_1CurveCartesian(x(B) + ((0 * (a - (b * cos(w)) + (((0 * (b + d)) * cos(w)) * cos((a / b * t))))) * cos(t)) + (((0 * (b + d)) * sin(t)) * sin((a / b * t))), y(B) + ((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * sin(t)) - (((b + d) * cos(t)) * sin((a / b * t))), z(B) + (sin(w) * (b - ((b + d) * cos((a / b * t))))), t, 0, tt) → e_1Line(B, yAxis) → j_1Line(B, zAxis) → k_1Point(j_1) → GPoint(k_1) → HPlane(G, B, H) → r_1Point(yAxis) → ICurveCartesian(x(I) + ((a - (b * cos(w)) + (((b + d) * cos(w)) * cos((a / b * t)))) * cos(t)) + (((b + d) * sin(t)) * sin((a / b * t))), y(I), z(I) + (sin(w) * (b - ((b + d) * cos((a / b * t))))), t, 0, tt) → l_1Line(I, xAxis) → m_1Line(I, zAxis) → n_1Point(m_1) → JPoint(n_1) → KPlane(J, I, K) → p_2
AI 绘图提示语参考
画一个球面轨道的投影,展示其形状如何在不同平面上变化。首先创建一个球体作为基础表面,然后构建一个圆和一个圆锥来定义旋转的几何结构。使用平面和投影线确定投影位置,通过参数化方程生成投影曲线。用点序列沿运动路径采样参数,用线段和表面可视化空间配置。展示不同参数下的投影曲线,强调参数驱动下的轨迹生成。
以上提示语为根据原始绘图命令整理而来,仅供参考。