移动平面与曲面 z=f(x,y) 的交线演示
几何画板及绘图内容加载中,请稍等……
所属专题
intersection: surface-surface, curve-curve
intersection: surface-surface, curve-curve
intersection: surface-surface, curve-curve
intersection: surface-surface, curve-curve
本范例动态展示三维曲面 z=f(x,y) 被一个可移动平面截取时,交线随平面高度或位置变化而改变的过程。核心概念包括二元函数图像、空间曲面、平面与曲面相交、截面曲线、等高线/截线、参数化与数值采样。作图要点:用 Function 定义曲面 f,用 ImplicitCurve、IntersectPath 和 PointIn 生成或筛选交线/点,借助 If、Point、Segment、PolyLine、Polygon、Zip、Sequence、Sum、Length、RemoveUndefined、Append 等命令组织条件、采样点、路径与多边形,并通过 z0、z_min、z_max、z_Step、N_P、N_C、x_min、x_max、y_min、y_max、Pxy、P1xxy、P2yyx、B01、B02、a、b、c、d、e、y0 等对象控制范围、步长、点数和平面位置;Textfield、inputBox2、inputBox3、button1、button2、button5、v_1、text1、text2 提供输入与按钮交互。适合高中数学拓展、大学多元微积分、空间解析几何与 GeoGebra 三维作图教学。
GeoGebra 命令及参数
If(Length[RemoveUndefined[Join[Zip[Mirror[{Roots[f0(a, x), y_{min}, y_{max}]}, y = x] + (a, 0), a, Sequence[x_{min} + ((x_{max} - x_{min}) / N_P * i), i, 0, N_P]]]]] ≟ 0, false, true) → lb1If(lb1, RemoveUndefined[Join[Zip[Mirror[{Roots[f0(a, x), y_{min}, y_{max}]}, y = x] + (a, 0), a, Sequence[x_{min} + ((x_{max} - x_{min}) / N_P * i), i, 0, N_P]]]], Sequence[(10000, 10000), k, 1, 50]) → P1xxyIf(lb1, RemoveUndefined[Join[Zip[Reverse[{Roots[f0(x, a), x_{min}, x_{max}]}] + (0, a), a, Sequence[y_{min} + ((y_{max} - y_{min}) / N_P * i), i, 0, N_P]]]], Sequence[(10000, 10000), k, 1, 50]) → P2yyxPolygon((x_{min}, y_{min}), (x_{max}, y_{min}), (x_{max}, y_{max}), (x_{min}, y_{max})) → poly1, b, c, d, ePointIn(poly1) → PTestZip((x(a), y(a), z0), a, Join[{P1xxy, P2yyx}]) → list1Segment(B02, B01) → aTextfield(v_1) → inputBox2Textfield(f) → inputBox3Textfield(x_{min}) → inputBox4Textfield(x_{max}) → inputBox5Textfield(y_{max}) → inputBox6Textfield(z_{max}) → inputBox7Textfield(y_{min}) → inputBox8Textfield(z_{min}) → inputBox9Point(a, 1 - zzii_B) → ATextfield(N_P) → inputBox10Sum(Sequence[If[f(x(PTest), y(PTest)) - f(x(Element[lr01, i]), y(Element[lr01, i])) > 0, 1, 0], i, 1, n]) → ext1Length(list1) → LäTextfield(step) → inputBox12Textfield(zoom_{3D}) → InputBox1Sequence((x(Element[lr01, i]), y(Element[lr01, i]), f(x(Element[lr01, i]), y(Element[lr01, i]))), i, 1, n) → lr013Sequence((x(Element[lr02, i]), y(Element[lr02, i]), f(x(Element[lr02, i]), y(Element[lr02, i]))), i, 1, n) → lr023RemoveUndefined(Sequence[If[f(x(PTest), y(PTest)) - f(x(Element[lr01, i]), y(Element[lr01, i])) > 0, i, NaN], i, 1, n]) → lr04Zip(Vector[b, a], a, Sequence[Element[lr01, Element[lr04, i]], i, 1, Length[lr04]], b, Sequence[Element[lr02, Element[lr04, i]], i, 1, Length[lr04]]) → lr06Zip(Vector[b, a], a, Sequence[Element[lr013, Element[lr04, i]], i, 1, Length[lr04]], b, Sequence[Element[lr023, Element[lr04, i]], i, 1, Length[lr04]]) → lr063Zip(Vector[a, b], a, Sequence[Element[lr01, Element[lr05, i]], i, 1, Length[lr05]], b, Sequence[Element[lr02, Element[lr05, i]], i, 1, Length[lr05]]) → lr07Zip(Vector[a, b], a, Sequence[Element[lr013, Element[lr05, i]], i, 1, Length[lr05]], b, Sequence[Element[lr023, Element[lr05, i]], i, 1, Length[lr05]]) → lr073RemoveUndefined(Sequence[If[f(x(PTest), y(PTest)) - f(x(Element[lr01, i]), y(Element[lr01, i])) > 0, i, (-i)], i, 1, n]) → lr04cAppend(lr04c, Element[lr04c, 1]) → lr04ccSum(Sequence[If[(Element[lr04cc, i] * Element[lr04cc, i + 1]) < 0, 1, 0], i, 1, n + 1]) → lr04cccIf(ext1 ≟ n, "Max", If[ext1 ≟ 0, "Min", If[(lr04ccc > 2) ∧ (lr04ccc ≤ 4), "saddle ? ", "?"]]) → TT1PolyLine({(0, 0.5019607843), (0.1, 0.4980392157), (0.2, 0), (0.3, 0), (0.4, 0.2), (0.5, 0.2), (0.7, 1), (1, 1)}) → RoPolyLine({(0, 0), (0.2, 0), (0.3, 0.6), (0.4, 1), (0.7, 1), (0.9, 0.2), (1, 0)}) → GrPolyLine({(0, 0.5019607843), (0.1, 1), (0.3, 1), (0.4, 0.8), (0.5, 0), (0.6, 0), (0.7, 0.4), (0.8, 0.2), (0.9, 0.4), (1, 0)}) → BlFunction(f(a, b), a, x_{min} - 0.2, x_{max} + 0.2, b, y_{min} - 0.2, y_{max} + 0.2) → gPoint(Pxy) → DTextfield(z0) → InputBox2ImplicitCurve(g(x, y) - z0) → pIntersectPath(o, g(x, y)) → s
AI 绘图提示语参考
绘制一个三维空间中的曲面,该曲面由函数 z=f(x,y) 定义,并展示一个移动的平面如何与该曲面相交形成曲线。通过调整平面的位置和观察相交曲线的变化,可以理解多变量函数、空间曲面、平面与曲面交线、截面曲线等概念。图形应包含曲面的三维视图、移动平面的轨迹以及相交曲线,并允许用户通过滑块和输入框控制函数、曲面范围和平面位置。
以上提示语为根据原始绘图命令整理而来,仅供参考。