莫比乌斯变换的几何可视化:圆与角的对应
几何画板及绘图内容加载中,请稍等……
所属专题
geometriadinamica.es
该范例演示在复平面上使用莫比乌斯(分式线性)变换,将圆与特定圆锥曲线/轨迹映射到新的几何形状,并观察角度与点的对应关系。核心数学概念包括:复数上的分式线性变换、圆(以及直线可视为无穷远点处的圆)的共形性质、角度保持/变换下的几何不变量,以及由映射得到的轨迹或由参数构造的曲线族。作图要点:通过 GeoGebra 的 OrthogonalLine、Circle、Intersect 生成圆与正交线/交点,再用 Ellipse、Angle、Segment 与 Point 组织几何约束与度量;随后借助 CurveCartesian、Sequence、Ray、Polygon 绘制映射后的曲线、点列与连线;命令 invierte(以对象表示为反演/映射起点)、以及 rota(旋转)等用于实现复平面变换流程,并结合已定义的复数对象(如 zz0、zz1、ZZ1…)完成从原点集到像点集的映射;最终将像几何(如 zElipse1、zElipse2、XY、Z 等)叠加显示以便比较。适合高中拔尖、大学预科到本科的复分析/解析几何/几何变换学习中使用,亦适合作为课堂演示或研究型可视化探索。
GeoGebra 命令及参数
OrthogonalLine(C, yAxis) → zz1Circle(C, 0.62) → zz0Intersect(zz0, zz1, 1) → ZZ1Intersect(zz0, zz1, 2) → ZZ2Ellipse(ZZ1, ZZ2, 0.65) → zElipse1Intersect(zElipse1, zz1) → ZZ5, ZZ6Point(zElipse1) → XYAngle(ZZ6, C, XY) → zAngRotOrthogonalLine(C, xAxis) → zz2Intersect(zz0, zz2, 2) → ZZ3Intersect(zz0, zz2, 1) → ZZ4Ellipse(ZZ3, ZZ4, 0.65) → zElipse2Intersect(zElipse2, zz2) → ZZ7, ZZ8Point(zElipse2) → ZAngle(ZZ8, C, Z) → zAngIncSegment(Q5, Q6) → p5Point(p5) → P5CurveCartesian(((r * u) * sin(zAngRot)), (r * (((-u) * cos(zAngRot)) * sin(zAngInc))), u, -10, 10) → ejexCurveCartesian(((r * v) * cos(zAngRot)), (((r * v) * sin(zAngRot)) * sin(zAngInc)), v, -10, 10) → ejeySegment(ZZ5, ZZ6) → zz4Segment(ZZ7, ZZ8) → zz3Intersect(zElipse2, zElipse1, 1) → zPunto1Intersect(zElipse2, zElipse1, 4) → zPunto2Segment(zPunto1, zPunto2) → zSeg2Segment(Base, PS) → h'Circle((PN + PS) / 2, r / 2) → cSequence(CurveCartesian[x(Base) + ((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * sr) + ((r * v / (u^(2) + v^(2) + 1)) * cr), y(Base) - (((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * cr) * sin(zAngInc)) + (((r * v / (u^(2) + v^(2) + 1)) * sr) * sin(zAngInc)) + (((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f) * cos(zAngInc)), v, -1, 1], u, -1, 1, paso) → esfera2Sequence(CurveCartesian[x(Base) + (((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * sr) + (((r * v / (u^(2) + v^(2) + 1)) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * cr), y(Base) - ((((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * cr) * sin(zAngInc)) + ((((r * v / (u^(2) + v^(2) + 1)) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * sr) * sin(zAngInc)), u, -1, 1], v, -1, 1, paso) → plano1Sequence(CurveCartesian[x(Base) + (((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * sr) + (((r * v / (u^(2) + v^(2) + 1)) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * cr), y(Base) - ((((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * cr) * sin(zAngInc)) + ((((r * v / (u^(2) + v^(2) + 1)) * g / (g - ((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f))) * sr) * sin(zAngInc)), v, -1, 1], u, -1, 1, paso) → plano2Sequence(CurveCartesian[x(Base) + ((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * sr) + ((r * v / (u^(2) + v^(2) + 1)) * cr), y(Base) - (((r * ((u / (u^(2) + v^(2) + 1) * cos(invierte)) + ((1 / 2 - 1 / (u^(2) + v^(2) + 1)) * sin(invierte)))) * cr) * sin(zAngInc)) + (((r * v / (u^(2) + v^(2) + 1)) * sr) * sin(zAngInc)) + (((((-r) * u / (u^(2) + v^(2) + 1)) * sin(invierte)) + ((r * (1 / 2 - 1 / (u^(2) + v^(2) + 1))) * cos(invierte)) + f) * cos(zAngInc)), u, -1, 1], v, -1, 1, paso) → esfera1Ray(PN, PN + (0, 1)) → aPolygon(P3, P2, PN) → poly1, poly1b, poly1c, poly1aPolygon(P3, P4, PN) → poly2, poly2b, poly2a, poly2cAngle(P2, P3, PN) → αAngle(P3, P4, PN) → βPolygon(P4, PN, P1) → poly3, poly3c, poly3a, poly3bAngle(P4, P1, PN) → γPolygon(P1, P2, PN) → poly4, poly4b, poly4a, poly4cAngle(P1, P2, PN) → δOrthogonalLine(B, xAxis) → bOrthogonalLine(B, b) → d
AI 绘图提示语参考
绘制一个莫比乌斯变换下的圆和角度对应关系。首先画出一条水平线和一条垂直线,然后以一个圆心为中心画一个圆,接着找到圆与垂直线的交点,构造一个椭圆并找到其与垂直线的交点。通过旋转和角度测量,展示变换后的角度关系,并绘制一系列曲线和多边形来表示变换后的几何图形。
以上提示语为根据原始绘图命令整理而来,仅供参考。