以原点(0,0)为中心的几何伸缩变换练习
几何画板及绘图内容加载中,请稍等……
本范例展示以原点(0,0)为中心的几何伸缩变换(dilation)如何把一组点与线段“放大或缩小”,并保持图形相似关系。核心数学概念包括:坐标几何中的伸缩变换、相似变换(similarity transformation)、点到原点的比例关系、以及由对应线段形成的相似三角形。作图要点是利用 GeoGebra 的随机/序列机制生成或重排点集与要变换对象,再对多组对象施加不同的伸缩因子 scalfact,并分别得到对应的点、线与线段集合:构造摘要中使用到的命令/对象包括 Sequence、Flatten、Shuffle、Take、RandomElement、If 以及 Segment;并通过对象 listSF、listT_1~listT_5、listR_1~listR_5、listS_1~listS_5、listF_1~listF_5、以及 listE_1~listE_5、listD_1~listD_5、listC_1~listC_5、listB_1~listB_3 等来组织几何元素,同时用 scalfact 控制伸缩。适合中学阶段(初中到高中)几何与相似教学,用于探索相似性、验证坐标变换规律,也适合课堂演示或自学交互练习。
GeoGebra 命令及参数
Sequence(Sequence[((2 * i_{2}), (2 * j_{2})), i_{2}, -6, 6], j_{2}, -6, 6) → listT_{2}Flatten(listT_{2}) → listR_2Shuffle(listR_2) → listS_2, {(-4, -2), (4, -8), (8, 2), (-2, -6), (2, 0), (-8, 0), (12, 8), (0, -12), (0, 10), (12, -10), (4, -4), (10, 4), (8, 6), (-10, 2), (-6, -4), (-8, 6), (4, 12), (2, -10), (-12, 4), (4, 8), (0, -6), (8, -4), (10, -2), (-6, 6), (10, 12), (-12, -6), (4, 4), (-4, 12), (-12, -2), (4, -6), (-10, 10), (8, -2), (-2, 2), (12, -2), (-12, -10), (-12, 8), (-4, 0), (12, 6), (-4, -4), (2, -6), (6, 12), (8, 10), (-8, 4), (6, 8), (0, -2), (-6, 8), (-4, -10), (-12, -8), (0, 0), (-6, 2), (-8, 12), (6, -6), (8, -12), (6, 2), (0, -8), (8, -8), (6, -4), (-12, -4), (-2, -10), (2, 2), (-4, 2), (-2, -8), (4, -12), (-6, 10), (10, -10), (4, 10), (2, -12), (10, -12), (-12, 0), (12, -12), (12, 2), (-12, 12), (-4, 4), (-8, -10), (-2, -12), (10, 10), (12, 12), (0, 6), (0, 12), (8, 0), (8, -6), (-8, -2), (-10, 0), (4, 2), (-2, 4), (-8, -6), (0, 4), (4, -10), (6, 6), (12, 10), (8, 12), (-10, -12), (-8, 8), (-8, -8), (10, -8), (-8, -12), (-12, 10), (-4, -8), (2, -8), (6, -8), (-2, 10), (6, 0), (2, -2), (-12, 6), (-12, 2), (2, 10), (-4, 10), (8, -10), (-6, 4), (0, 8), (12, 0), (-10, -8), (-8, 10), (-2, 6), (-2, -4), (-6, -10), (10, 6), (-4, -6), (-12, -12), (2, 6), (6, -12), (-2, 0), (0, -4), (-8, 2), (0, -10), (-2, 12), (-10, 4), (12, 4), (2, 4), (8, 4), (-4, -12), (-6, -12), (-10, -10), (4, 0), (-2, 8), (-10, -4), (10, 0), (12, -8), (-10, -2), (-8, -4), (-4, 6), (-10, -6), (8, 8), (2, 8), (4, -2), (-10, 8), (-6, 0), (-2, -2), (12, -6), (-6, -6), (6, 10), (-4, 8), (-10, 12), (-10, 6), (0, 2), (-6, 12), (6, -10), (-6, -8), (6, 4), (12, -4), (4, 6), (-6, -2), (10, 2), (2, 12), (10, -4), (10, -6), (6, -2), (2, -4), (10, 8)}Take(listS_2, 6, 6) → listF_2Sequence(Sequence[(i, j), i, -10, 10], j, -10, 10) → listT_{1}Flatten(listT_{1}) → listR_{1}Shuffle(listR_{1}) → listS_{1}, {(-8, 10), (2, 2), (5, 8), (-5, -5), (10, -8), (-10, 2), (1, 3), (-8, -9), (8, 10), (3, 4), (5, 10), (-3, 9), (0, -10), (-4, 7), (0, 3), (0, 7), (10, 4), (7, 10), (-6, 8), (2, -7), (-8, -10), (0, -1), (-5, -8), (6, -5), (-4, -9), (7, -6), (-9, 10), (6, -6), (0, 8), (6, 9), (2, 7), (-1, 3), (2, 8), (3, 2), (-9, 9), (10, 1), (-3, -8), (-8, 1), (-2, -8), (-1, -8), (-1, -2), (-5, 7), (10, -4), (0, -8), (-6, -3), (6, -8), (-2, 0), (3, -1), (0, 2), (-9, -7), (-9, -1), (-7, 7), (-1, -4), (10, 6), (-9, -10), (5, 3), (6, -2), (-8, 4), (4, -10), (-1, -10), (2, 6), (5, -5), (1, 4), (7, 6), (-4, -10), (6, 2), (0, -9), (5, -9), (8, -6), (-8, -3), (8, -3), (-8, -4), (9, -10), (6, -1), (1, 1), (-1, -3), (9, 8), (6, 6), (0, -6), (-7, -6), (-5, -7), (4, 2), (-3, 5), (5, 9), (4, -4), (-1, -1), (-1, -6), (7, -1), (-5, 9), (10, -5), (-2, 3), (-2, -7), (-7, 5), (-2, -9), (-9, -9), (-9, -5), (-1, -9), (-8, -6), (6, 1), (-5, 10), (9, 9), (-1, 8), (6, 0), (2, -9), (0, -2), (5, 1), (-1, 10), (-2, 9), (-4, -2), (6, -3), (-9, 5), (2, 3), (9, -8), (-9, 1), (4, 10), (-6, -4), (8, -7), (5, 5), (9, 5), (-6, 1), (3, 0), (-2, 7), (-6, -2), (3, 9), (7, 0), (-7, 4), (-2, 1), (1, -3), (-4, 2), (5, -1), (6, 4), (6, -7), (10, -3), (-6, -6), (-1, 6), (5, 0), (3, 8), (-3, 4), (-10, -8), (3, 1), (4, 9), (-5, -10), (-1, 4), (2, -6), (-8, -5), (9, -1), (-2, 6), (1, 8), (4, 5), (3, -6), (9, 0), (-10, -2), (-8, 6), (-5, -1), (-2, -1), (-1, -7), (-9, -3), (-3, -6), (-3, -4), (-6, 9), (-5, -2), (8, 4), (-5, 5), (7, -4), (4, 4), (6, -9), (4, -7), (9, -6), (6, 3), (-9, -6), (7, 5), (-10, -7), (10, -9), (-4, 1), (-4, -4), (-6, 6), (-2, -10), (-10, 1), (8, 1), (6, 7), (1, 7), (4, 7), (3, -5), (-10, 5), (1, -4), (-3, -2), (2, -1), (10, -2), (-4, -8), (1, 6), (5, -4), (-10, -4), (8, -8), (7, 9), (-10, 9), (-7, -8), (1, -8), (4, -1), (1, -9), (0, 0), (-9, -2), (-6, 7), (-5, 2), (6, 10), (9, 7), (3, -8), (2, -4), (-3, 6), (9, -5), (9, 3), (-9, -4), (-6, -9), (-1, 1), (3, 10), (7, -10), (-2, -3), (0, -5), (6, -4), (-10, 0), (10, -10), (9, -4), (1, -5), (-6, -5), (-10, -9), (9, -3), (10, 10), (0, 10), (4, 6), (8, 7), (-10, 3), (8, -1), (-7, 8), (-4, 3), (1, 0), (4, 3), (5, -7), (-7, -7), (3, 3), (-7, 0), (-1, 2), (-7, 1), (4, -2), (-6, 2), (8, 3), (-7, -10), (-7, -2), (-3, 10), (1, -6), (-1, -5), (-5, 3), (0, -4), (-6, -10), (7, 8), (-5, 8), (-5, -4), (-8, -8), (2, 0), (-9, 6), (-1, 5), (-6, -8), (4, 1), (2, 9), (8, 9), (10, 7), (1, -2), (0, -3), (-4, 0), (4, -8), (-2, -2), (3, -9), (8, -10), (8, 6), (-7, 6), (5, 2), (9, 6), (7, -7), (8, 0), (-7, -4), (3, -10), (-3, 7), (-1, 0), (3, -4), (10, -7), (5, -6), (10, 5), (-9, 2), (7, 1), (-6, 4), (1, -1), (-10, 4), (-8, 7), (-7, -5), (-6, 5), (-10, 8), (-2, 4), (-8, 8), (-8, 3), (-3, -10), (0, -7), (-3, 2), (8, -2), (4, -5), (6, 5), (4, -3), (-4, 5), (8, 2), (5, 6), (-5, 1), (2, -3), (1, -7), (-10, -5), (3, 7), (1, -10), (-9, 3), (-3, -1), (10, 9), (5, -10), (-7, 10), (7, -5), (0, 4), (9, -7), (8, -5), (9, 10), (-10, -6), (0, 5), (-4, 6), (-4, 4), (9, -2), (-6, -1), (3, -3), (0, 6), (9, 2), (7, 3), (3, 6), (9, 4), (10, -6), (-9, 8), (10, 2), (-3, -3), (3, 5), (-7, 3), (7, -2), (2, 10), (-10, 6), (-5, 0), (-4, -1), (-6, 3), (1, 5), (1, 9), (5, -2), (5, 7), (-2, 2), (-3, 3), (-3, 1), (-8, -1), (8, -4), (-5, 6), (2, 5), (-8, -7), (7, 2), (5, -8), (-8, 9), (7, -8), (8, -9), (-8, -2), (-2, -6), (8, 8), (2, -10), (-5, -9), (5, -3), (-5, -3), (-2, -5), (8, 5), (2, -5), (0, 9), (-7, -3), (-7, 9), (-9, 7), (-4, 8), (-4, -6), (6, 8), (-3, 0), (10, -1), (-4, -5), (-6, 10), (-4, 10), (2, -2), (-2, -4), (-6, -7), (4, 8), (7, 7), (-3, -9), (-2, 10), (4, -6), (-8, 5), (-9, 0), (1, 2), (-5, 4), (-8, 2), (-3, -5), (0, 1), (-3, 8), (-10, -10), (7, -3), (-10, -1), (-5, -6), (9, 1), (-7, 2), (5, 4), (7, -9), (-9, -8), (-9, 4), (4, 0), (9, -9), (10, 3), (1, 10), (-2, 8), (10, 8), (-4, 9), (-1, 9), (4, -9), (3, -2), (-4, -7), (-6, 0), (-8, 0), (3, -7), (-1, 7), (-7, -9), (7, 4), (-4, -3), (2, 1), (-7, -1), (-2, 5), (10, 0), (-3, -7), (-10, 7), (-10, 10), (-10, -3), (2, -8), (2, 4), (6, -10)}Take(listS_{1}, 6, 6) → listF_{1}RandomElement(listSF) → scalfactSequence(Sequence[((3 * i_{3}), (3 * j_{3})), i_{3}, -4, 4], j_{3}, -4, 4) → listT_{3}Flatten(listT_{3}) → listR_3Shuffle(listR_3) → listS_3, {(9, 3), (-3, 12), (3, -3), (-12, -12), (-12, -3), (-9, 12), (-6, -9), (-9, -3), (-3, -9), (0, 3), (-3, -6), (12, 6), (-12, 0), (-3, -3), (6, 9), (-3, 3), (6, -12), (3, -9), (-9, 6), (12, 0), (-12, 9), (0, 6), (0, 0), (12, 3), (0, -9), (9, 6), (-9, -6), (-3, -12), (6, -3), (12, -3), (-12, -9), (-3, 0), (6, -6), (6, 12), (-12, 12), (9, -9), (-9, -9), (0, 12), (0, -12), (9, -6), (3, 6), (-6, 12), (3, 12), (12, 9), (-9, 3), (3, 9), (0, 9), (-6, -3), (-9, 9), (0, -3), (9, -3), (9, 9), (-6, 6), (-9, 0), (12, 12), (-3, 9), (3, -6), (9, -12), (-6, 0), (3, 3), (-12, -6), (6, 6), (9, 0), (-12, 3), (-6, -6), (3, -12), (-12, 6), (6, 3), (-6, 3), (6, -9), (-9, -12), (12, -6), (12, -12), (3, 0), (6, 0), (-6, -12), (-3, 6), (12, -9), (9, 12), (0, -6), (-6, 9)}Take(listS_3, 6, 6) → listF_3Sequence(Sequence[((4 * i_{4}), (4 * j_{4})), i_{4}, -3, 3], j_{4}, -3, 3) → listT_{4}Flatten(listT_{4}) → listR_4Shuffle(listR_4) → listS_4, {(-12, -12), (12, 0), (4, 12), (0, 0), (-12, 8), (0, -12), (4, -4), (-8, -8), (-4, 12), (-12, 12), (0, 4), (4, -12), (12, -8), (-4, -12), (8, -8), (8, 8), (12, 12), (4, 8), (4, -8), (-8, 0), (12, -12), (-12, -4), (-8, -12), (0, 12), (8, 4), (-4, 8), (12, 4), (8, 12), (-4, -8), (-4, -4), (8, 0), (-4, 0), (-12, 4), (0, -4), (4, 0), (8, -12), (-12, -8), (4, 4), (12, -4), (-8, 8), (12, 8), (0, 8), (0, -8), (-12, 0), (-4, 4), (-8, 4), (-8, -4), (8, -4), (-8, 12)}Take(listS_4, 6, 6) → listF_4Sequence(Sequence[((5 * i_{5}), (5 * j_{5})), i_{5}, -2, 2], j_{5}, -2, 2) → listT_{5}Flatten(listT_{5}) → listR_5Shuffle(listR_5) → listS_5, {(-10, 0), (0, 0), (5, 0), (-10, -5), (-5, -5), (-5, 0), (5, 5), (-5, 5), (-5, -10), (10, 0), (0, 5), (0, -5), (5, -5), (-10, -10), (0, 10), (10, 10), (10, -10), (0, -10), (-10, 10), (10, -5), (5, 10), (5, -10), (-10, 5), (10, 5), (-5, 10)}Take(listS_5, 6, 6) → listF_5Take(listS_5, 5, 5) → listE_5Take(listS_4, 5, 5) → listE_4Take(listS_3, 5, 5) → listE_3Take(listS_{1}, 5, 5) → listE_{1}Take(listS_2, 5, 5) → listE_2Take(listS_2, 4, 4) → listD_2Take(listS_{1}, 4, 4) → listD_{1}Take(listS_3, 4, 4) → listD_3Take(listS_4, 4, 4) → listD_4Take(listS_5, 4, 4) → listD_5Take(listS_5, 1, 1) → listC_5Take(listS_4, 3, 3) → listC_4Take(listS_3, 3, 3) → listC_3Take(listS_{1}, 3, 3) → listC_{1}Take(listS_2, 3, 3) → listC_2Take(listS_2, 2, 2) → listB_2Take(listS_{1}, 2, 2) → listB_{1}Take(listS_3, 2, 2) → listB_3Take(listS_4, 2, 2) → listB_4Take(listS_5, 1, 1) → listB_5Take(listS_5, 1, 1) → listA_5Take(listS_4, 1, 1) → listA_4Take(listS_3, 1, 1) → listA_3Take(listS_{1}, 1, 1) → listA_{1}Take(listS_2, 1, 1) → listA_2If(scalfact ≟ 1 / 5, Point[listA_5], If[scalfact ≟ 1 / 4, Point[listA_4], If[scalfact ≟ 1 / 3, Point[listA_3], If[scalfact ≟ 1 / 2, Point[listA_2], Point[listA_{1}]]]]) → AIf(scalfact ≟ 1 / 5, Point[listB_5], If[scalfact ≟ 1 / 4, Point[listB_4], If[scalfact ≟ 1 / 3, Point[listB_3], If[scalfact ≟ 1 / 2, Point[listB_2], Point[listB_{1}]]]]) → BSegment(A, B) → abIf(scalfact ≟ 1 / 5, Point[listC_5], If[scalfact ≟ 1 / 4, Point[listC_4], If[scalfact ≟ 1 / 3, Point[listC_3], If[scalfact ≟ 1 / 2, Point[listC_2], Point[listC_{1}]]]]) → CSegment(B, C) → bcSegment(C, A) → caSegment(A', B') → a'b'Segment(B', C') → b'c'Segment(C', A') → c'a'If(scalfact ≟ 1 / 5, Point[listD_5], If[scalfact ≟ 1 / 4, Point[listD_4], If[scalfact ≟ 1 / 3, Point[listD_3], If[scalfact ≟ 1 / 2, Point[listD_2], Point[listD_{1}]]]]) → DSegment(C, D) → cdSegment(D, A) → daIf(scalfact ≟ 1 / 5, Point[listE_5], If[scalfact ≟ 1 / 4, Point[listE_4], If[scalfact ≟ 1 / 3, Point[listE_3], If[scalfact ≟ 1 / 2, Point[listE_2], Point[listE_{1}]]]]) → ESegment(D, E) → deSegment(E, A) → eaIf(scalfact ≟ 1 / 5, Point[listF_5], If[scalfact ≟ 1 / 4, Point[listF_4], If[scalfact ≟ 1 / 3, Point[listF_3], If[scalfact ≟ 1 / 2, Point[listF_2], Point[listF_{1}]]]]) → FSegment(E, F) → efSegment(F, A) → faSegment(C', D') → c'd'Segment(D', E') → d'e'Segment(E', F') → e'f'Segment(F', A') → f'a'Segment(E', A') → e'a'Segment(D', A') → d'a'RandomElement({"Awesome!", "Great Job!", " Correct!"}) → praiseIf(scalfact ≟ "j", "x", If[scalfact ≟ "k", "y", If[scalfact ≟ "l", "x - axis and y"]]) → axis
AI 绘图提示语参考
绘制一个以原点为中心的位似变换练习图。先随机选择一个缩放比例(从1/5、1/4、1/3、1/2或1中选取),然后根据该比例,从五组预生成的网格点中选取对应的一组点(例如比例1/5对应步长为5的网格,比例1对应步长为1的网格)。从选中的点集中,按顺序取出若干点作为图形的关键顶点,并用线段连接它们,形成一个三角形。同时,在原点附近显示缩放中心,并标注缩放比例。整个图形展示原始三角形与缩放后三角形之间的相似关系,所有点均位于坐标网格上,便于观察坐标变化。
以上提示语为根据原始绘图命令整理而来,仅供参考。