Corresponding Angles Formed By Parallel Lines and a Transversal

Corresponding Angles Formed By Parallel Lines and a Transversal
Loading the math board and drawing, please wait…
2023-02-14 11:34
This example demonstrates the corresponding angles formed when parallel lines are cut by a transversal. The key mathematical concepts involve congruent corresponding angles and supplementary relationships. Construction uses GeoGebra commands like RandomUniform, Circle, Line, and Angle to create the geometry. Suitable for students in grades 6-8 to explore geometric relationships.

GeoGebra Commands & Parameters

  1. RandomUniform(0, 0.99, 200) → allRandoms, {0.04264330068126297, 0.7354369464936397, 0.7324518341038792, 0.40003474011890416, 0.0034289961990961702, 0.6488557196401256, 0.7679487300657083, 0.2463086411376209, 0.9376542492444936, 0.06311868625400661, 0.4090658645186996, 0.008424522123968612, 0.4657137604904779, 0.6556538077174551, 0.07853180629958341, 0.6244808172894356, 0.9270505109144835, 0.4279954826191469, 0.9576069887119317, 0.3003984733508179, 0.9656732493724776, 0.715325597544489, 0.8335366610111138, 0.3180171311867377, 0.09721145297004838, 0.5736665406034489, 0.4996003989790255, 0.6825649682530974, 0.7167617528934228, 0.8862237009722462, 0.4185890198176932, 0.654100404706449, 0.4614183185861556, 0.1424355946296601, 0.9518970938551198, 0.6150527223839672, 0.08695580263814155, 0.9537875732591546, 0.11371487330193789, 0.7369561597132676, 0.14464740352699276, 0.5993807833154577, 0.6230348881624015, 0.6038757784178729, 0.9616513412629605, 0.3216212472106155, 0.9253592466560558, 0.5478651788112507, 0.2967881257652956, 0.10820385659594782, 0.35110051766555767, 0.8430759842861698, 0.5628568214559436, 0.7508150886509886, 0.6487144294005582, 0.9698553733309554, 0.6069027263365054, 0.2136629723918529, 0.10758458863001177, 0.07832198921201634, 0.2610490703639353, 0.22606609044439677, 0.8885998082479846, 0.4625032327382067, 0.12864528756193727, 0.8528943763716591, 0.8592217606081061, 0.4811451738200499, 0.6735594230627339, 0.13465177179831916, 0.34463555313540334, 0.23977398267094063, 0.574456725812707, 0.06542708187206507, 0.9873085397142806, 0.8104916359952322, 0.13085716026598038, 0.6718119714080554, 0.4139523068724355, 0.35133039386682835, 0.5736534523246716, 0.16919557061023194, 0.5714903699873007, 0.9757703019908638, 0.9695975251907712, 0.22359359379995222, 0.9021790177874379, 0.005240040410931687, 0.32702649938155354, 0.6373550221841442, 0.36251085004115075, 0.77307661638352, 0.6388013031430532, 0.8657126048075521, 0.5109512944769168, 0.8675103521040403, 0.698068517709586, 0.7282039823534576, 0.3359146372093725, 0.5637715632036909, 0.2930335854163253, 0.5844883576667788, 0.18768219338248568, 0.44138160605645543, 0.8284458038285134, 0.5180189264646187, 0.9861967262390422, 0.03209580376324507, 0.4339482216218473, 0.5934046710575905, 0.7408378256765157, 0.4968070474103003, 0.5928323870224723, 0.12410544361076657, 0.8683899376539379, 0.3159984548501788, 0.9290659729758413, 0.9263523643984025, 0.2314598785826615, 0.32805027691904487, 0.5957235928382024, 0.12287099208720761, 0.9715830594326186, 0.2028603001878473, 0.21415283378150918, 0.3061081364134194, 0.8591774007320351, 0.30482923543275003, 0.5803462234152358, 0.4752233542709185, 0.02636169102713485, 0.09929114323100897, 0.613066054186498, 0.6941041898601147, 0.6584496737664465, 0.8399367681201462, 0.33728223310205424, 0.4691002504340296, 0.7356638866925818, 0.011680880289709395, 0.22643515019793128, 0.34504359907812, 0.018282866464996356, 0.9537672533736195, 0.5179236518770697, 0.45643405521787056, 0.6360431413502219, 0.7916840536858603, 0.5980447923171345, 0.027415742109936168, 0.8161621387078705, 0.863678947304861, 0.015375391617950793, 0.4693567148498701, 0.9438304102702745, 0.3283176483354104, 0.2152869104086971, 0.7884669046958517, 0.9544418399210967, 0.40362199346995903, 0.6829234443276814, 0.9479495980698912, 0.6581877721817749, 0.37585160379404625, 0.57754929709796, 0.5996803852695586, 0.20493562421368403, 0.17696159383411947, 0.7076856605664842, 0.1693425748561416, 0.8605457147625147, 0.35417191580043994, 0.33390774489250846, 0.4363209943506763, 0.8449489276968883, 0.7129259586914317, 0.7745619754794879, 0.04546753536210537, 0.8374162906888037, 0.2457960427654537, 0.7589889181849332, 0.8920984913668482, 0.6754957850945916, 0.09460890772967762, 0.8731018091227308, 0.5242705915221071, 0.5710742633434829, 0.3112201003093514, 0.5433712387429099, 0.3775048154212446, 0.019942482767062945, 0.673956688323077, 0.4974052798190614, 0.6966879303264901, 0.6300985272423062, 0.4417777141929977, 0.6923909637156345, 0.25787976367925763, 0.9888197670944736, 0.09666871359324739}
  2. Take(allRandoms, randIndex, randIndex + numRandoms - 1) → currentRandomSeeds
  3. Flatten(Sequence[{-1, 0, 1}, n, 1, 33]) → randomList1
  4. Element(randomList1, Mod[countQuestion, 100] + 1) → randomNum1
  5. If(x1 ≟ -1, -1 + 0.8 + 44 / 90, -0.9 + 44 / 90) → y2bmin
  6. If(x1 ≟ 1, 1 - 0.8 - 44 / 90, 0.9 - 44 / 90) → y2bmax
  7. If(x1 ≟ -1, 1 - 0.8 - 44 / 90, 0.9 - 44 / 90) → y2amax
  8. If(x1 ≟ 1, -1 + 0.8 + 44 / 90, -0.9 + 44 / 90) → y2amin
  9. Polygon({(-2.5, -2.5), (-2.5, 2.2), (2.5, 2.2), (2.5, -2.5)}) → graphArea
  10. If(y2b > -0.2 + 44 / 90 ∨ x1 ≟ 1, (x1 * y2b) + 0.1 + 44 / 90, x1 ≟ 0, 0.8 + 44 / 90, 1.8 + 44 / 90) → x2min
  11. If(x2min < 2.5 - 44 / 90, x2min + (currentRandomSeeds(10) * (2.5 - 44 / 90 - x2min)), 3) → x2b
  12. If(y2a < 0.2 - 44 / 90 ∨ x1 ≟ 1, (x1 * y2a) - 0.1 - 44 / 90, x1 ≟ 0, -0.8 - 44 / 90, -1.8 - 44 / 90) → x2max
  13. If(x2max > -2.5 + 44 / 90, -2.5 + 44 / 90 + (currentRandomSeeds(9) * (x2max - 44 / 90 + 2.5)), -3) → x2a
  14. If(y1a > 1.8 + 44 / 90, (x1 * y1a) - 0.1 - 44 / 90, x(InputPoint1) - 0.8 - 44 / 90) → x1max
  15. If(x1max > -2.5 + 44 / 90, -2.5 + 44 / 90 + (currentRandomSeeds(7) * (x1max + 2.5 - 44 / 90)), -3) → x1a
  16. If(y1b > 1.8 + 44 / 90, (x1 * y1b) + 0.1 + 44 / 90, x(InputPoint1) + 0.8 + 44 / 90) → x1min
  17. If(x1min < 2.5 - 44 / 90, x1min + (currentRandomSeeds(8) * (2.5 - 44 / 90 - x1min)), 3) → x1b
  18. If(y3b < -1.8 - 44 / 90, (x1 * y3b) + 0.1 + 44 / 90, x(InputPoint2) + 0.8 + 44 / 90) → x3min
  19. If(x3min < 2.5 - 44 / 90, x3min + (currentRandomSeeds(12) * (2.5 - 44 / 90 - x3min)), 3) → x3b
  20. If(y3a < -1.8 - 44 / 90, (x1 * y3a) - 0.1 - 44 / 90, x(InputPoint2) - 1.8 - 44 / 90) → x3max
  21. If(x3max > -2.5 + 44 / 90, -2.5 + 44 / 90 + (currentRandomSeeds(11) * (x3max + 2.5 - 44 / 90)), -3) → x3a
  22. KeepIf(IsInRegion[n, graphArea], n, {(x1a, y1a), (x2a, y2a), (x2b, y2b), (x3a, y3a), (x1b, y1b), (x3b, y3b)}) → treePoints
  23. Shuffle(Sequence[Random[1, 2], n, 1, 100]) → randomOrders, {1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 2, 1, 2, 1, 2, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 2, 1, 2, 1, 1, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 2, 2, 1, 2}
  24. Element(randomOrders, Mod[countQuestion, 100] + 1) → randomOrder
  25. If(x1 ≟ -1, 2, x1 ≟ 1, 3, 4) → case
  26. Element({{(-1.79373, 0.9), (-0.36804, 0.50946), (-0.20627, 1.1), (-1.63196, 1.49054), (0.20627, -1.1), (1.63196, -1.49054), (1.79373, -0.9), (0.36804, -0.50946)}, {(0.20627, 0.9), (0.50946, 0.36804), (1.79373, 1.1), (1.49054, 1.63196), (-1.79373, -1.1), (-1.49054, -1.63196), (-0.20627, -0.9), (-0.50946, -0.36804)}, {(-0.79373, 0.9), (0.1, 0.20627), (0.79373, 1.1), (-0.1, 1.79373), (-0.79373, -1.1), (0.1, -1.79373), (0.79373, -0.9), (-0.1, -0.20627)}}, case - 1) → innerArc1
  27. Element({{(-0.50946, 0.36804), (-0.20627, 0.9), (-1.49054, 1.63196), (-1.79373, 1.1), (1.49054, -1.63196), (1.79373, -1.1), (0.50946, -0.36804), (0.20627, -0.9)}, {(0.36804, 0.50946), (1.79373, 0.9), (1.63196, 1.49054), (0.20627, 1.1), (-1.63196, -1.49054), (-0.20627, -1.1), (-0.36804, -0.50946), (-1.79373, -0.9)}, {(-0.1, 0.20627), (0.79373, 0.9), (0.1, 1.79373), (-0.79373, 1.1), (-0.1, -1.79373), (0.79373, -1.1), (0.1, -0.20627), (-0.79373, -0.9)}}, case - 1) → innerArc2
  28. Circle(InputPoint2, 0.7) → polyCircle2
  29. Circle(InputPoint1, 0.7) → polyCircle1
  30. If(clickNum ≤ 4, polyCircle1, polyCircle2) → chosenCircle
  31. Element({{(-1.8, 1), (-0.2, 1)}, {(0.2, 1), (1.8, 1)}, {(-0.8, 1), (0.8, 1)}}, case - 1) → ints1
  32. Element({{(-1.56569, 1.56569), (-0.43431, 0.43431)}, {(1.56569, 1.56569), (0.43431, 0.43431)}, {(0, 1.8), (0, 0.2)}}, case - 1) → ints2
  33. Element({{(0.2, -1), (1.8, -1)}, {(-1.8, -1), (-0.2, -1)}, {(-0.8, -1), (0.8, -1)}}, case - 1) → ints3
  34. Element({{(0.43431, -0.43431), (1.56569, -1.56569)}, {(-0.43431, -0.43431), (-1.56569, -1.56569)}, {(0, -0.2), (0, -1.8)}}, case - 1) → ints4
  35. Vector(centerP, arc1Ints(clickNum)) → dist1PS
  36. Element({{(-1.05325, 0.87143), (-0.6896, 0.87143), (-0.94675, 1.12857), (-1.3104, 1.12857), (0.94675, -1.12857), (1.3104, -1.12857), (1.05325, -0.87143), (0.6896, -0.87143)}, {(0.6896, 0.87143), (1.05325, 0.87143), (1.3104, 1.12857), (0.94675, 1.12857), (-1.3104, -1.12857), (-0.94675, -1.12857), (-0.6896, -0.87143), (-1.05325, -0.87143)}, {(-0.12857, 0.87143), (0.12857, 0.87143), (0.12857, 1.12857), (-0.12857, 1.12857), (-0.12857, -1.12857), (0.12857, -1.12857), (0.12857, -0.87143), (-0.12857, -0.87143)}}, case - 1) → dilatedCenters
  37. Intersect(chosenCircle, Ray[dilatedCenters(clickNum), dist1PS]) → PP1,
  38. Vector(centerP, arc2Ints(clickNum)) → dist1PS'
  39. Intersect(chosenCircle, Ray[dilatedCenters(clickNum), dist1PS']) → PP2,
  40. Segment(intersectP2(1) + (0.9, 0), intersectP2(2) - (0.9, 0)) → segP2Range
  41. Segment(intersectP1(1) + (0.9, 0), intersectP1(2) - (0.9, 0)) → segP1Range
  42. Segment(intersectP1(1), intersectP1(2)) → segmentP1
  43. Circle(InputPoint1, 0.8) → arcCircle1
  44. Segment(intersectP2(1), intersectP2(2)) → segmentP2
  45. Line(InputPoint1, InputPoint2) → lineT
  46. CircleSector(InputPoint1, ints1(1), ints2(2)) → arc1
  47. CircleSector(InputPoint1, ints2(2), ints1(2)) → arc2
  48. If(clickNum ≟ 9 ∧ case ≟ 1 ∨ clickNum ≟ 3 ∨ clickNum ≟ 4, -1 - 0.5, clickNum ≟ 9 ∧ case ≟ 2 ∨ clickNum ≟ 7 ∨ clickNum ≟ 8, 1 - 0.5, clickNum ≟ 9 ∧ case ≟ 3 ∨ clickNum ≟ 1 ∨ clickNum ≟ 2, -1 + 0.5, 1 + 0.5) → yPixelPoint1
  49. Element({{(-2.2, 2.2), (2.5, -2.5)}, {(2.2, 2.2), (-2.5, -2.5)}, {(0, 2.2), (0, -2.5)}}, case - 1) → intersectT
  50. Segment(InputPoint1, InputPoint2) → segmentT
  51. Angle(segmentT, segmentP1) → tpAngle
  52. If(y(Element[intersectT, 2]) > -2.5, (0, distT2), (distT, 0)) → PointDistBottom
  53. If(y(Element[intersectT, 1]) < 2.2, (0, distT2), (distT, 0)) → PointDistTop
  54. Point(segmentT) → DragPoint
  55. Circle(InputPoint2, 0.8) → arcCircle2
  56. Polygon(Zip[PixelsToPoint[Corner[1], Corner[3], Corner[5], A], A, {(pixelsLeft, pixelsTop), (pixelsLeft, y(Corner[5]) - pixelsBottom), Corner[5] - (pixelsRight, pixelsBottom), (x(Corner[5]) - pixelsRight, pixelsTop)}]) → borderBox
  57. Corner(5) → layoutAppSize
  58. CircleSector(InputPoint1, ints1(2), ints2(1)) → arc3
  59. CircleSector(InputPoint1, ints2(1), ints1(1)) → arc4
  60. CircleSector(InputPoint2, ints3(1), ints4(2)) → arc1a
  61. CircleSector(InputPoint2, ints4(2), ints3(2)) → arc2a
  62. CircleSector(InputPoint2, ints3(2), ints4(1)) → arc3a
  63. CircleSector(InputPoint2, ints4(1), ints3(1)) → arc4a
  64. Sequence(clickNum ≟ n, n, 1, 8) → active
  65. Zip({m, n, p}, n, arc1Ints, m, arcInputs, p, arc2Ints) → polyPoints
  66. Shuffle(Sequence[Random[-50, -175] / 100, n, 1, 100]) → randomList2, {-0.66, -1.66, -1.3, -1.05, -1.14, -1.47, -0.52, -1.75, -1.38, -0.56, -1.7, -1.71, -1.4, -1.11, -0.5, -0.9, -0.64, -0.62, -1.52, -1.35, -1.51, -0.78, -0.53, -0.67, -0.74, -0.56, -1.25, -1.32, -1.29, -0.58, -0.64, -1.53, -1.5, -0.68, -1.71, -0.92, -0.73, -1.16, -1.09, -1.34, -1.2, -1.54, -0.5, -1.19, -0.51, -0.7, -1.33, -0.57, -1.18, -1.54, -1.07, -1.48, -1.67, -1.7, -1.37, -1.15, -1.74, -1.52, -0.87, -1.25, -1.48, -1.29, -1.53, -0.62, -1.4, -1.04, -0.72, -1.36, -1.62, -1.7, -0.71, -1.62, -1.37, -0.88, -1.1, -1.41, -1.27, -1.4, -1.24, -0.54, -1.34, -1.01, -1.04, -0.78, -0.91, -0.76, -0.64, -0.89, -0.59, -1.37, -1.67, -0.94, -0.9, -0.71, -1.69, -1.08, -0.74, -0.55, -1.55, -1.34}
  67. Polygon({InputPoint1, ints1(1), (x(ints1(1)), y(ints2(2))), ints2(2)}) → square1
  68. Polygon({InputPoint1, ints2(2), (x(ints1(2)), y(ints2(2))), ints1(2)}) → square2
  69. Polygon({InputPoint1, ints1(2), (x(ints1(2)), y(ints2(1))), ints2(1)}) → square3
  70. Polygon({InputPoint1, ints2(1), (x(ints1(1)), y(ints2(1))), ints1(1)}) → square4
  71. Polygon({InputPoint2, ints3(1), (x(ints3(1)), y(ints4(2))), ints4(2)}) → square1a
  72. Polygon({InputPoint2, ints4(2), (x(ints3(2)), y(ints4(2))), ints3(2)}) → square2a
  73. Polygon({InputPoint2, ints3(2), (x(ints3(2)), y(ints4(1))), ints4(1)}) → square3a
  74. Polygon({InputPoint2, ints4(1), (x(ints3(1)), y(ints4(1))), ints3(1)}) → square4a
  75. Polygon({DragPoint, DragPoint - dist1, DragPoint - (dist1 + dist2), DragPoint - dist2}) → staticDragSquare
  76. If(centerP ≟ InputPoint1, InputPoint2, InputPoint1) → endPoint
  77. If(Mod[clickNum, 4] > 1, 0.25, -0.25) → direction
  78. Polygon({intersectT(1) + PointDistTop, intersectT(1) - PointDistTop, intersectT(2) - PointDistBottom, intersectT(2) + PointDistBottom}) → streetTransversal
  79. Polygon({intersectP1(1) + (0, 0.1), intersectP1(1) - (0, 0.1), intersectP1(2) - (0, 0.1), intersectP1(2) + (0, 0.1)}) → streetP1
  80. Polygon({intersectP2(1) + (0, 0.1), intersectP2(1) - (0, 0.1), intersectP2(2) - (0, 0.1), intersectP2(2) + (0, 0.1)}) → streetP2
  81. PointToPixels(Corner[1], Corner[3], Corner[5], PixelPoint) → RightPixelCoords
  82. Element({{(0.50503, -0.50503), (1.49497, -1.49497)}, {(-0.50503, -0.50503), (-1.49497, -1.49497)}, {(0, -0.3), (0, -1.7)}}, case - 1) → ints4p
  83. Element({{(0.3, -1), (1.7, -1)}, {(-1.7, -1), (-0.3, -1)}, {(-0.7, -1), (0.7, -1)}}, case - 1) → ints3p
  84. Element({{(-1.49497, 1.49497), (-0.50503, 0.50503)}, {(1.49497, 1.49497), (0.50503, 0.50503)}, {(0, 1.7), (0, 0.3)}}, case - 1) → ints2p
  85. Element({{(-1.7, 1), (-0.3, 1)}, {(0.3, 1), (1.7, 1)}, {(-0.7, 1), (0.7, 1)}}, case - 1) → ints1p
  86. If(Angle[dist1P, dist4P] > 180°, 360° - Angle[dist1P, dist4P], Angle[dist1P, dist4P]) → α
  87. Rotate(dist1P, ((-α)) / 3) → dist2P
  88. Rotate(dist1P, (-2 * α / 3)) → dist3P
  89. Zip(Vector[PointTreeMiddle, n], n, treePoints) → vectorTreePics
  90. Zip(Translate[treePicBase, Vector[n]], Vector[n], vectorTreePics) → trees
  91. If(clickNum < 9, If[polyPoint(1) ≟ InputPoint1, InputPoint2, InputPoint1], (0, 0)) → EndPoint
  92. If(case ≟ 1, 3, case ≟ 2, 7, case ≟ 3, 2, 6) → caseChoice
  93. If(case ≟ 1 ∨ case ≟ 2, If[clickNum ≠ 3 ∧ clickNum ≠ 7, 3, 1], clickNum ≠ 2 ∧ clickNum ≠ 6, 2, 4) → caseEnd
  94. sectorPixels(sectorUse(1), sectorUse(2), sectorUse(3), basePixels + haloPixels, Corner[1], Corner[3], Corner[5]) → pulsingObject1
  95. If(clickNum ≤ 4, polyCircle1, polyCircle2) → circleDrag
  96. Element({{(-1.04142, 0.9), (-0.75858, 0.9), (-0.95858, 1.1), (-1.24142, 1.1), (0.95858, -1.1), (1.24142, -1.1), (1.04142, -0.9), (0.75858, -0.9)}, {(0.75858, 0.9), (1.04142, 0.9), (1.24142, 1.1), (0.95858, 1.1), (-1.24142, -1.1), (-0.95858, -1.1), (-0.75858, -0.9), (-1.04142, -0.9)}, {(-0.1, 0.9), (0.1, 0.9), (0.1, 1.1), (-0.1, 1.1), (-0.1, -1.1), (0.1, -1.1), (0.1, -0.9), (-0.1, -0.9)}}, case - 1) → innerCenterInts
  97. Element({{(-0.58081, 0.43939), (-0.30718, 0.9), (-1.41919, 1.56061), (-1.69282, 1.1), (1.41919, -1.56061), (1.69282, -1.1), (0.58081, -0.43939), (0.30718, -0.9)}, {(0.43939, 0.58081), (1.69282, 0.9), (1.56061, 1.41919), (0.30718, 1.1), (-1.56061, -1.41919), (-0.30718, -1.1), (-0.43939, -0.58081), (-1.69282, -0.9)}, {(-0.1, 0.30718), (0.69282, 0.9), (0.1, 1.69282), (-0.69282, 1.1), (-0.1, -1.69282), (0.69282, -1.1), (0.1, -0.30718), (-0.69282, -0.9)}}, case - 1) → innerPoly1
  98. Element({{(-1.69282, 0.9), (-0.43939, 0.58081), (-0.30718, 1.1), (-1.56061, 1.41919), (0.30718, -1.1), (1.56061, -1.41919), (1.69282, -0.9), (0.43939, -0.58081)}, {(0.30718, 0.9), (0.58081, 0.43939), (1.69282, 1.1), (1.41919, 1.56061), (-1.69282, -1.1), (-1.41919, -1.56061), (-0.30718, -0.9), (-0.58081, -0.43939)}, {(-0.69282, 0.9), (0.1, 0.30718), (0.69282, 1.1), (-0.1, 1.69282), (-0.69282, -1.1), (0.1, -1.69282), (0.69282, -0.9), (-0.1, -0.30718)}}, case - 1) → innerPoly2
  99. Vector(centerP, innerCenterInts(clickNum)) → distCP
  100. Vector(centerP, dilatedCenters(clickNum)) → distCPI
  101. Vector(polyPoint(1), DragPoint) → transVect
  102. Polygon(DragPoint, DragPoint + distCPI, DragPoint - dist1P + distCPI, DragPoint - dist2P + distCPI, DragPoint - dist3P + distCPI, DragPoint - dist4P + distCPI, DragPoint + distCPI) → dragPoly1, dragPoly1_{2}, dragPoly1_{3}, dragPoly1_{4}, dragPoly1_{5}, dragPoly1_{6}, dragPoly1_{7}, dragPoly1_{8}
  103. If(clickNum ≟ 1 ∨ clickNum ≟ 4 ∨ clickNum ≟ 5 ∨ clickNum ≟ 8, -1, 1) → signDirectionX
  104. If(clickNum ≟ 3 ∨ clickNum ≟ 4 ∨ clickNum ≟ 7 ∨ clickNum ≟ 8, 1, -1) → signDirectionY
  105. Polygon(DragPoint, DragPoint + ((signDirectionX * 0.1), (signDirectionY * 0.1)), DragPoint + ((signDirectionX * 0.1), (signDirectionY * 0.8)), DragPoint + ((signDirectionX * 0.8), (signDirectionY * 0.8)), DragPoint + ((signDirectionX * 0.8), (signDirectionY * 0.1)), DragPoint + ((signDirectionX * 0.1), (signDirectionY * 0.1))) → dragSquareS, dragpoint, f, g, h, i, j
  106. CircleSector(DragPoint + distCP, DragPoint - dist1, DragPoint - dist2) → staticDragArc
  107. Element({arc1, arc2, arc3, arc4, arc1a, arc2a, arc3a, arc4a}, caseCorr) → staticDragArc2

AI Drawing Prompt Reference

Draw two parallel lines intersected by a transversal to illustrate corresponding angles. Highlight all corresponding angles in different colors and emphasize their equality. Start by sketching the parallel lines and the transversal, then identify and connect the vertices of corresponding angles, and finally label the angle relationships with arrows.
The prompt above was compiled from the original drawing commands and is for reference only.