双曲线镶嵌图
几何画板及绘图内容加载中,请稍等……
双曲线镶嵌图是一种特殊的几何图形,展示了双曲线的镶嵌结构。这个范例演示了如何使用 GeoGebra 构造双曲线镶嵌图,涉及的核心数学概念包括双曲线、圆锥曲线和几何变换。作图要点包括使用 Circle、Intersect、Sequence、Polygon 等 GeoGebra 命令和对象。这个范例适合高一至高三学生学习几何图形和圆锥曲线的性质。
GeoGebra 命令及参数
Circle((0, 0), 1) → cIntersect(Circle[((1 - (sin(pi / p) / cos(pi / q))^(2))^(-1 / 2), 0), ((cos(pi / q) / sin(pi / p))^(2) - 1)^(-1 / 2)], Ray[(0, 0), Rotate[(1, 0), pi / p]], 1) → P0Sequence(Rotate[P0, ((k * 2) * pi / p)], k, 0, p - 1) → VCircle(Mirror[V(p), c], V(p), V(1)) → hc1Polygon(pV) → actualpFlatten(Join[{{Vac(p)}, {Vac \ {Vac(p)}}}]) → VacpFlatten(Join[{{Vac \ {Vac(1)}}, {Vac(1)}}]) → Vac2Zip(Center[a], a, s) → SCircle(((-0.22475, -0.22475) + (0.63683, 0.63683)) / 2, (-0.22475, -0.22475)) → cExtCircle(((0.22475, 0.22475) + (0.47618, 0.47618)) / 2, (0.22475, 0.22475)) → cIntConic(S(1), S(2), S(3), S(4), S(5)) → e1Sequence(Sequence[Polygon[esc(1, a, b)], b, 1, Length[esc(1, a)]], a, 1, Length[esc(1)]) → escB, {{0.030097360750000003, 0.030098480749999997, 0.021107711350000013, 0.021106374600000012}, {0.030097140900000003, 0.030097140900000003, 0.021106346000000005, 0.021106346000000005}, {0.030098480749999997, 0.030097360750000003, 0.021106374600000012, 0.021107711350000013}}Sequence(Sequence[Polygon[esc(2, a, b)], b, 1, Length[esc(2, a)]], a, 1, Length[esc(2)]) → escN, {{0.02025516735, 0.020255621250000015, 0.03288572365, 0.03288643389999999}, {0.020254864450000014, 0.020254776500000023, 0.032886634299999995, 0.032886159299999995}, {0.02025586215000002, 0.0202555881, 0.032886945149999985, 0.03288555174999999}}Sequence(Sequence[Circle[esc(5, a, b, 1), esc(5, a, b, 2)], b, 1, Length[esc(5, a)]], a, 1, Length[esc(5)]) → escOb, {{(x - 0.32909)² + (y - 0.02447)² = 0.00015831399999999954, (x + 0.14336)² + (y - 0.29724)² = 0.00015818650000000043, (x - 0.25823)² + (y - 0.30039)² = 0.0001620385000000002, (x - 0.13103)² + (y - 0.37383)² = 0.00016207119999999984}, {(x + 0.18574)² + (y - 0.27277)² = 0.00015811300000000033, (x + 0.18574)² + (y + 0.27277)² = 0.00015811300000000033, (x + 0.38926)² + (y - 0.07344)² = 0.00016196129999999985, (x + 0.38926)² + (y + 0.07344)² = 0.00016196129999999985}, {(x + 0.14335)² + (y + 0.29724)² = 0.00015830820000000027, (x - 0.3291)² + (y + 0.02447)² = 0.0001580624999999993, (x - 0.13103)² + (y + 0.37383)² = 0.00016207119999999984, (x - 0.25823)² + (y + 0.30039)² = 0.0001620385000000002}}Sequence(Sequence[Circle[esc(3, a, b, 1), esc(3, a, b, 2)], b, 1, Length[esc(3, a)]], a, 1, Length[esc(3)]) → escObf, {{(x - 0.11602)² + (y - 0.10873)² = 0.0009165073999999994, (x - 0.03615)² + (y - 0.15484)² = 0.0009165712000000004, (x - 0.39838)² + (y - 0.19685)² = 0.0004461865999999987, (x + 0.02871)² + (y - 0.44344)² = 0.00044613970000000064}, {(x + 0.15217)² + (y - 0.04611)² = 0.0009162362000000005, (x + 0.15217)² + (y + 0.04611)² = 0.0009162362000000005, (x + 0.36967)² + (y - 0.24658)² = 0.00044633920000000047, (x + 0.36967)² + (y + 0.24658)² = 0.00044633920000000047}, {(x - 0.03615)² + (y + 0.15484)² = 0.0009165712000000004, (x - 0.11602)² + (y + 0.10873)² = 0.0009165073999999994, (x + 0.02871)² + (y + 0.44344)² = 0.00044613970000000064, (x - 0.39838)² + (y + 0.19685)² = 0.0004461865999999987}}Sequence(Sequence[Circle[esc(6, a, b, 1), esc(6, a, b, 2)], b, 1, Length[esc(6, a)]], a, 1, Length[esc(6)]) → escOn, {{(x - 0.11602)² + (y - 0.10873)² = 0.00029768329999999975, (x - 0.03615)² + (y - 0.15484)² = 0.00029758930000000044, (x - 0.39838)² + (y - 0.19685)² = 0.00013920569999999972, (x + 0.02871)² + (y - 0.44344)² = 0.00013905489999999996}, {(x + 0.15217)² + (y - 0.04611)² = 0.0002973220999999997, (x + 0.15217)² + (y + 0.04611)² = 0.0002973220999999997, (x + 0.36967)² + (y - 0.24658)² = 0.00013929800000000054, (x + 0.36967)² + (y + 0.24658)² = 0.00013929800000000054}, {(x - 0.03615)² + (y + 0.15484)² = 0.00029758930000000044, (x - 0.11602)² + (y + 0.10873)² = 0.00029768329999999975, (x + 0.02871)² + (y + 0.44344)² = 0.00013905489999999996, (x - 0.39838)² + (y + 0.19685)² = 0.00013920569999999972}}Sequence(Sequence[Circle[esc(4, a, b, 1), esc(4, a, b, 2)], b, 1, Length[esc(4, a)]], a, 1, Length[esc(4)]) → escOnf, {{(x - 0.32909)² + (y - 0.02447)² = 0.00038773970000000046, (x + 0.14336)² + (y - 0.29724)² = 0.0003876605000000007, (x - 0.25823)² + (y - 0.30039)² = 0.0003633341000000008, (x - 0.13103)² + (y - 0.37383)² = 0.0003630604999999999}, {(x + 0.18574)² + (y - 0.27277)² = 0.0003873936999999998, (x + 0.18574)² + (y + 0.27277)² = 0.0003873936999999998, (x + 0.38926)² + (y - 0.07344)² = 0.00036316800000000117, (x + 0.38926)² + (y + 0.07344)² = 0.00036316800000000117}, {(x + 0.14336)² + (y + 0.29724)² = 0.0003876605000000007, (x - 0.32909)² + (y + 0.02447)² = 0.00038773970000000046, (x - 0.13103)² + (y + 0.37383)² = 0.0003630604999999999, (x - 0.25823)² + (y + 0.30039)² = 0.0003633341000000008}}Sequence(Sequence[Polygon[esc0(1, a, b)], b, 1, Length[esc0(1, a)]], a, 1, Length[esc0(1)]) → escB0, {{0.030097360750000003, 0.030098480749999997, 0.021107711350000013, 0.021106374600000012}, {0.030097140900000003, 0.030097140900000003, 0.021106346000000005, 0.021106346000000005}, {0.030098480749999997, 0.030097360750000003, 0.021106374600000012, 0.021107711350000013}}Sequence(Sequence[Polygon[esc0(2, a, b)], b, 1, Length[esc0(2, a)]], a, 1, Length[esc0(2)]) → escN0, {{0.02025516735, 0.020255621250000015, 0.03288572365, 0.03288643389999999}, {0.020254864450000014, 0.020254776500000023, 0.032886634299999995, 0.032886159299999995}, {0.02025586215000002, 0.0202555881, 0.032886945149999985, 0.03288555174999999}}Sequence(Sequence[Circle[esc0(5, a, b, 1), esc0(5, a, b, 2)], b, 1, Length[esc0(5, a)]], a, 1, Length[esc0(5)]) → escOb0, {{(x - 0.32909)² + (y - 0.02447)² = 0.00015831399999999954, (x + 0.14336)² + (y - 0.29724)² = 0.00015818650000000043, (x - 0.25823)² + (y - 0.30039)² = 0.0001620385000000002, (x - 0.13103)² + (y - 0.37383)² = 0.00016207119999999984}, {(x + 0.18574)² + (y - 0.27277)² = 0.00015811300000000033, (x + 0.18574)² + (y + 0.27277)² = 0.00015811300000000033, (x + 0.38926)² + (y - 0.07344)² = 0.00016196129999999985, (x + 0.38926)² + (y + 0.07344)² = 0.00016196129999999985}, {(x + 0.14335)² + (y + 0.29724)² = 0.00015830820000000027, (x - 0.3291)² + (y + 0.02447)² = 0.0001580624999999993, (x - 0.13103)² + (y + 0.37383)² = 0.00016207119999999984, (x - 0.25823)² + (y + 0.30039)² = 0.0001620385000000002}}Sequence(Sequence[Circle[esc0(3, a, b, 1), esc0(3, a, b, 2)], b, 1, Length[esc0(3, a)]], a, 1, Length[esc0(3)]) → escObf0, {{(x - 0.11602)² + (y - 0.10873)² = 0.0009165073999999994, (x - 0.03615)² + (y - 0.15484)² = 0.0009165712000000004, (x - 0.39838)² + (y - 0.19685)² = 0.0004461865999999987, (x + 0.02871)² + (y - 0.44344)² = 0.00044613970000000064}, {(x + 0.15217)² + (y - 0.04611)² = 0.0009162362000000005, (x + 0.15217)² + (y + 0.04611)² = 0.0009162362000000005, (x + 0.36967)² + (y - 0.24658)² = 0.00044633920000000047, (x + 0.36967)² + (y + 0.24658)² = 0.00044633920000000047}, {(x - 0.03615)² + (y + 0.15484)² = 0.0009165712000000004, (x - 0.11602)² + (y + 0.10873)² = 0.0009165073999999994, (x + 0.02871)² + (y + 0.44344)² = 0.00044613970000000064, (x - 0.39838)² + (y + 0.19685)² = 0.0004461865999999987}}Sequence(Sequence[Circle[esc0(6, a, b, 1), esc0(6, a, b, 2)], b, 1, Length[esc0(6, a)]], a, 1, Length[esc0(6)]) → escOn0, {{(x - 0.11602)² + (y - 0.10873)² = 0.00029768329999999975, (x - 0.03615)² + (y - 0.15484)² = 0.00029758930000000044, (x - 0.39838)² + (y - 0.19685)² = 0.00013920569999999972, (x + 0.02871)² + (y - 0.44344)² = 0.00013905489999999996}, {(x + 0.15217)² + (y - 0.04611)² = 0.0002973220999999997, (x + 0.15217)² + (y + 0.04611)² = 0.0002973220999999997, (x + 0.36967)² + (y - 0.24658)² = 0.00013929800000000054, (x + 0.36967)² + (y + 0.24658)² = 0.00013929800000000054}, {(x - 0.03615)² + (y + 0.15484)² = 0.00029758930000000044, (x - 0.11602)² + (y + 0.10873)² = 0.00029768329999999975, (x + 0.02871)² + (y + 0.44344)² = 0.00013905489999999996, (x - 0.39838)² + (y + 0.19685)² = 0.00013920569999999972}}Sequence(Sequence[Circle[esc0(4, a, b, 1), esc0(4, a, b, 2)], b, 1, Length[esc0(4, a)]], a, 1, Length[esc0(4)]) → escOnf0, {{(x - 0.32909)² + (y - 0.02447)² = 0.00038773970000000046, (x + 0.14336)² + (y - 0.29724)² = 0.0003876605000000007, (x - 0.25823)² + (y - 0.30039)² = 0.0003633341000000008, (x - 0.13103)² + (y - 0.37383)² = 0.0003630604999999999}, {(x + 0.18574)² + (y - 0.27277)² = 0.0003873936999999998, (x + 0.18574)² + (y + 0.27277)² = 0.0003873936999999998, (x + 0.38926)² + (y - 0.07344)² = 0.00036316800000000117, (x + 0.38926)² + (y + 0.07344)² = 0.00036316800000000117}, {(x + 0.14336)² + (y + 0.29724)² = 0.0003876605000000007, (x - 0.32909)² + (y + 0.02447)² = 0.00038773970000000046, (x - 0.13103)² + (y + 0.37383)² = 0.0003630604999999999, (x - 0.25823)² + (y + 0.30039)² = 0.0003633341000000008}}Sequence(Sequence[Polygon[mosaico(1, s, k)], k, 1, Length[mosaico(1, s)]], s, 1, Length[mosaico(1)]) → mos1, {{0.0128481623, 0.012848938100000002, 0.0128481623, 0.012848938100000002, 0.0128481623, 0.012848938100000002, 0.0128481623, 0.012848938100000002}}Sequence(Sequence[Polygon[mosaico(2, s, k)], k, 1, Length[mosaico(2, s)]], s, 1, Length[mosaico(2)]) → mos2, {{0.005062873600000002, 0.005062873600000002, 0.005062873600000002, 0.005062873600000002}}Sequence(Sequence[Polygon[mosaico(3, s, k)], k, 1, Length[mosaico(3, s)]], s, 1, Length[mosaico(3)]) → mos3, {{0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072}, {0.0135892222, 0.0135892222, 0.0135892222, 0.0135892222}, {0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072}}Sequence(Sequence[Polygon[mosaico(4, s, k)], k, 1, Length[mosaico(4, s)]], s, 1, Length[mosaico(4)]) → mos4, {{0.010302216899999994, 0.010302216899999994, 0.010302216899999994, 0.010302216899999994}, {0.010302216899999994, 0.010302216899999994, 0.010302216899999994, 0.010302216899999994}}Sequence(Sequence[Polygon[mosaico(5, s, k)], k, 1, Length[mosaico(5, s)]], s, 1, Length[mosaico(5)]) → mos5, {{0.005626266350543297, 0.005626266350543297, 0.0045591153721862895, 0.0045591153721862895, 0.0011423968829433503, 0.0011423968829433503, 0.0008931723309646752, 0.0008931723309646752}, {0.005626266350543297, 0.005626266350543297, 0.0045591153721862895, 0.0045591153721862895, 0.0011423968829433503, 0.0011423968829433503, 0.0008931723309646752, 0.0008931723309646752}, {0.005626266350543297, 0.005626266350543311, 0.0045591153721862895, 0.004559115372186331, 0.0011423968829433503, 0.0011423968829433208, 0.0008931723309646752, 0.0008931723309646752}, {0.005626266350543297, 0.005626266350543252, 0.0045591153721862895, 0.004559115372186366, 0.0011423968829433503, 0.0011423968829433208, 0.0008931723309646752, 0.0008931723309646752}}Sequence(Sequence[Polygon[mosaico0(5, s, k)], k, 1, Length[mosaico0(5, s)]], s, 1, Length[mosaico0(5)]) → mos05, {{0.005626266350543297, 0.005626266350543297, 0.0045591153721862895, 0.0045591153721862895, 0.0011423968829433503, 0.0011423968829433503, 0.0008931723309646752, 0.0008931723309646752}, {0.005626266350543297, 0.005626266350543297, 0.0045591153721862895, 0.0045591153721862895, 0.0011423968829433503, 0.0011423968829433503, 0.0008931723309646752, 0.0008931723309646752}, {0.005626266350543297, 0.005626266350543311, 0.0045591153721862895, 0.004559115372186331, 0.0011423968829433503, 0.0011423968829433208, 0.0008931723309646752, 0.0008931723309646752}, {0.005626266350543297, 0.005626266350543252, 0.0045591153721862895, 0.004559115372186366, 0.0011423968829433503, 0.0011423968829433208, 0.0008931723309646752, 0.0008931723309646752}}Sequence(Sequence[Polygon[mosaico0(1, s, k)], k, 1, Length[mosaico0(1, s)]], s, 1, Length[mosaico0(1)]) → mos01, {{0.0128481623, 0.012848938100000002, 0.0128481623, 0.012848938100000002, 0.0128481623, 0.012848938100000002, 0.0128481623, 0.012848938100000002}}Sequence(Sequence[Polygon[mosaico0(2, s, k)], k, 1, Length[mosaico0(2, s)]], s, 1, Length[mosaico0(2)]) → mos02, {{0.005062873600000002, 0.005062873600000002, 0.005062873600000002, 0.005062873600000002}}Sequence(Sequence[Polygon[mosaico0(3, s, k)], k, 1, Length[mosaico0(3, s)]], s, 1, Length[mosaico0(3)]) → mos03, {{0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072}, {0.0135892222, 0.0135892222, 0.0135892222, 0.0135892222}, {0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072, 0.0032128700500000072}}Sequence(Sequence[Polygon[mosaico0(4, s, k)], k, 1, Length[mosaico0(4, s)]], s, 1, Length[mosaico0(4)]) → mos04, {{0.010302216899999994, 0.010302216899999994, 0.010302216899999994, 0.010302216899999994}, {0.010302216899999994, 0.010302216899999994, 0.010302216899999994, 0.010302216899999994}}Sequence(Polygon[cox0(k)], k, 1, 6) → coxeter01Sequence(Polygon[cox0(k)], k, 7, 12) → coxeter02Intersect(hc1, Ray[(V(1) + V(p)) / 2, (0, 0)]) → V0,CircumcircleArc(V(p), V0, V(1)) → arcoCeldaJoin(Sequence[Rotate[Sequence[Point[arcoCelda, s], s, 0, 0.9, 0.1], ((2 * k) * pi / p)], k, 0, p - 1]) → celda0Sequence(Polygon[cox(k)], k, 1, 6) → coxeter1Sequence(Polygon[cox(k)], k, 7, 12) → coxeter2Polygon(celda0) → polSequence({Vac(k), q - 1, ncActual}, k, 3, p - 1) → VplusIf(floor(p / 2) ≠ p / 2 ∧ q ≟ 3, 4, floor(q / 2) ≟ q / 2, 2, 3) → ncSequence({V(k), q - 1, 0}, k, 1, p) → vert0Sequence(Polygon[auto(1, k)], k, 1, 5) → autodual1Sequence(Polygon[auto(2, k)], k, 1, 5) → autodual2Sequence(Polygon[auto0(1, k)], k, 1, 5) → autodual01Sequence(Polygon[auto0(2, k)], k, 1, 5) → autodual02Flatten(Join[{{Vac \ {Vac(1), Vac(2)}}, {Vac(1), Vac(2)}}]) → Vac2'Flatten(Join[{{Vac(p - 1), Vac(p)}, {Vac \ {Vac(p - 1), Vac(p)}}}]) → Vacp'