G_6.01 Quadrilaterals and other polygons
Loading the math board and drawing, please wait…
This example demonstrates constructing various polygons, including quadrilaterals and other polygons using GeoGebra. Key mathematical concepts involve geometric construction, vectors, angles, and coordinate geometry. Construction steps include using commands like Sequence, Rotate, Polygon, Vector, Angle, and objects such as Point, Midpoint, Translate. Suitable for middle or high school mathematics education to understand polygon properties and geometric transformations.
GeoGebra Commands & Parameters
Sequence(allVertices(k), k, 1, numOfSides) → polyVerticesSequence((x(allVertices(Mod[k, numOfSides] + 1)) + (Min[Max[t - (2 * k), 0], 1] * (x(allVertices(Mod[k + 1, numOfSides] + 1)) - x(allVertices(Mod[k, numOfSides] + 1)))), y(allVertices(Mod[k, numOfSides] + 1)) + (Min[Max[t - (2 * k), 0], 1] * (y(allVertices(Mod[k + 1, numOfSides] + 1)) - y(allVertices(Mod[k, numOfSides] + 1))))), k, 0, numOfSides) → PnumsSequence(Rotate[(x(Pnums(k + 1)) + (x(allVertices(Mod[k + 1, numOfSides] + 1)) - x(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)], y(Pnums(k + 1)) + (y(allVertices(Mod[k + 1, numOfSides] + 1)) - y(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)]), (Min[Max[t - (2 * k) - 1, 0], 1] * (180° - Angle[allVertices(Mod[k + 2, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1), allVertices(Mod[k, numOfSides] + 1)])), Pnums(k + 1)], k, 0, numOfSides) → Pnums'Rotate((x(P6) + (x(A) - x(E)) / Distance[E, A], y(P6) + (y(A) - y(E)) / Distance[E, A]), (Min[Max[t - 11, 0], 1] * (180° - Angle[B, A, E])), P6) → P6'Rotate((x(P1) + (x(A) - x(E)) / Distance[E, A], y(P1) + (y(A) - y(E)) / Distance[E, A]), (Min[Max[t - 1, 0], 1] * (180° - Angle[B, A, E])), P1) → P1'Rotate((x(P2) + (x(B) - x(A)) / Distance[A, B], y(P2) + (y(B) - y(A)) / Distance[A, B]), (Min[Max[t - 3, 0], 1] * (180° - Angle[C, B, A])), P2) → P2'Rotate((x(P3) + (x(C) - x(B)) / Distance[B, C], y(P3) + (y(C) - y(B)) / Distance[B, C]), (Min[Max[t - 5, 0], 1] * (180° - Angle[D, C, B])), P3) → P3'Rotate((x(P4) + (x(D) - x(C)) / Distance[C, D], y(P4) + (y(D) - y(C)) / Distance[C, D]), (Min[Max[t - 7, 0], 1] * (180° - Angle[E, D, C])), P4) → P4'Rotate((x(P5) + (x(E) - x(D)) / Distance[E, D], y(P5) + (y(E) - y(D)) / Distance[E, D]), (Min[Max[t - 9, 0], 1] * (180° - Angle[A, E, D])), P5) → P5'Polygon(E, A, B, C, D) → poly1, a_1, b_1, c_1, d_1, e_1Vector(P, P') → uAngle(P1', P1, (x(P1) + (x(A) - x(E)) / Distance[E, A], y(P1) + (y(A) - y(E)) / Distance[E, A])) → αAngle(P2', P2, (x(P2) + (x(B) - x(A)) / Distance[A, B], y(P2) + (y(B) - y(A)) / Distance[A, B])) → βAngle(Pnums'(Mod[2, numOfSides] + 1), Pnums(Mod[2, numOfSides] + 1), (x(Pnums(Mod[2, numOfSides] + 1)) + (x(allVertices(Mod[3, numOfSides] + 1)) - x(allVertices(Mod[2, numOfSides] + 1))) / Distance[allVertices(Mod[2, numOfSides] + 1), allVertices(Mod[3, numOfSides] + 1)], y(Pnums(Mod[2, numOfSides] + 1)) + (y(allVertices(Mod[3, numOfSides] + 1)) - y(allVertices(Mod[2, numOfSides] + 1))) / Distance[allVertices(Mod[2, numOfSides] + 1), allVertices(Mod[3, numOfSides] + 1)])) → γAngle(Pnums'(Mod[3, numOfSides] + 1), Pnums(Mod[3, numOfSides] + 1), (x(Pnums(Mod[3, numOfSides] + 1)) + (x(allVertices(Mod[4, numOfSides] + 1)) - x(allVertices(Mod[3, numOfSides] + 1))) / Distance[allVertices(Mod[3, numOfSides] + 1), allVertices(Mod[4, numOfSides] + 1)], y(Pnums(Mod[3, numOfSides] + 1)) + (y(allVertices(Mod[4, numOfSides] + 1)) - y(allVertices(Mod[3, numOfSides] + 1))) / Distance[allVertices(Mod[3, numOfSides] + 1), allVertices(Mod[4, numOfSides] + 1)])) → δAngle(Pnums'(Mod[4, numOfSides] + 1), Pnums(Mod[4, numOfSides] + 1), (x(Pnums(Mod[4, numOfSides] + 1)) + (x(allVertices(Mod[5, numOfSides] + 1)) - x(allVertices(Mod[4, numOfSides] + 1))) / Distance[allVertices(Mod[4, numOfSides] + 1), allVertices(Mod[5, numOfSides] + 1)], y(Pnums(Mod[4, numOfSides] + 1)) + (y(allVertices(Mod[5, numOfSides] + 1)) - y(allVertices(Mod[4, numOfSides] + 1))) / Distance[allVertices(Mod[4, numOfSides] + 1), allVertices(Mod[5, numOfSides] + 1)])) → εOrthogonalLine(P, u, xOyPlane) → f_{1}Point(f_{1}) → FMidpoint(F, P') → GVector(G, P) → vTranslate(P, v) → P'_1Translate(P', v) → P''Segment(A, (x(A) + (x(A) - x(E)) / Distance[E, A], y(A) + (y(A) - y(E)) / Distance[E, A])) → gSegment(B, (x(B) + (x(B) - x(A)) / Distance[A, B], y(B) + (y(B) - y(A)) / Distance[A, B])) → hSegment(C, (x(C) + (x(C) - x(B)) / Distance[B, C], y(C) + (y(C) - y(B)) / Distance[B, C])) → iSegment(D, (x(D) + (x(D) - x(C)) / Distance[C, D], y(D) + (y(D) - y(C)) / Distance[C, D])) → jSegment(E, (x(E) + (x(E) - x(D)) / Distance[D, E], y(E) + (y(E) - y(D)) / Distance[D, E])) → kMidpoint(a_1) → OAngle((x(A) + (x(A) - x(E)) / Distance[E, A], y(A) + (y(A) - y(E)) / Distance[E, A]), A, B) → aAngle((x(B) + (x(B) - x(A)) / Distance[A, B], y(B) + (y(B) - y(A)) / Distance[A, B]), B, C) → bAngle((x(allVertices(Mod[3, numOfSides] + 1)) + (x(allVertices(Mod[3, numOfSides] + 1)) - x(allVertices(Mod[2, numOfSides] + 1))) / Distance[allVertices(Mod[2, numOfSides] + 1), allVertices(Mod[3, numOfSides] + 1)], y(allVertices(Mod[3, numOfSides] + 1)) + (y(allVertices(Mod[3, numOfSides] + 1)) - y(allVertices(Mod[2, numOfSides] + 1))) / Distance[allVertices(Mod[2, numOfSides] + 1), allVertices(Mod[3, numOfSides] + 1)]), allVertices(Mod[3, numOfSides] + 1), allVertices(Mod[4, numOfSides] + 1)) → cAngle((x(allVertices(Mod[4, numOfSides] + 1)) + (x(allVertices(Mod[4, numOfSides] + 1)) - x(allVertices(Mod[3, numOfSides] + 1))) / Distance[allVertices(Mod[3, numOfSides] + 1), allVertices(Mod[4, numOfSides] + 1)], y(allVertices(Mod[4, numOfSides] + 1)) + (y(allVertices(Mod[4, numOfSides] + 1)) - y(allVertices(Mod[3, numOfSides] + 1))) / Distance[allVertices(Mod[3, numOfSides] + 1), allVertices(Mod[4, numOfSides] + 1)]), allVertices(Mod[4, numOfSides] + 1), allVertices(Mod[5, numOfSides] + 1)) → dAngle((x(allVertices(Mod[5, numOfSides] + 1)) + (x(allVertices(Mod[5, numOfSides] + 1)) - x(allVertices(Mod[4, numOfSides] + 1))) / Distance[allVertices(Mod[4, numOfSides] + 1), allVertices(Mod[5, numOfSides] + 1)], y(allVertices(Mod[5, numOfSides] + 1)) + (y(allVertices(Mod[5, numOfSides] + 1)) - y(allVertices(Mod[4, numOfSides] + 1))) / Distance[allVertices(Mod[4, numOfSides] + 1), allVertices(Mod[5, numOfSides] + 1)]), allVertices(Mod[5, numOfSides] + 1), allVertices(Mod[6, numOfSides] + 1)) → eIf(t ≥ 1 ∧ t < 2, α, If[t ≥ 2, a, 0°]) → α'If(t ≥ 3 ∧ t < 4, β, If[t ≥ 4, b, 0°]) → β'If(t ≥ 5 ∧ t < 6, γ, If[t ≥ 6, c, 0°]) → γ'If(t ≥ 7 ∧ t < 8, δ, If[t ≥ 7, d, 0°]) → δ'If(t ≥ 9 ∧ t < 10, ε, If[t ≥ 9, e, 0°]) → ε'Polygon(polyVertices) → polySelectSequence(Angle[(x(allVertices(Mod[k + 1, numOfSides] + 1)) + (x(allVertices(Mod[k + 1, numOfSides] + 1)) - x(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)], y(allVertices(Mod[k + 1, numOfSides] + 1)) + (y(allVertices(Mod[k + 1, numOfSides] + 1)) - y(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)]), allVertices(Mod[k + 1, numOfSides] + 1), allVertices(Mod[k + 2, numOfSides] + 1)], k, 0, floor(t / 2) - 1) → angleListAngle((x(allVertices(Mod[6, numOfSides] + 1)) + (x(allVertices(Mod[6, numOfSides] + 1)) - x(allVertices(Mod[5, numOfSides] + 1))) / Distance[allVertices(Mod[5, numOfSides] + 1), allVertices(Mod[6, numOfSides] + 1)], y(allVertices(Mod[6, numOfSides] + 1)) + (y(allVertices(Mod[6, numOfSides] + 1)) - y(allVertices(Mod[5, numOfSides] + 1))) / Distance[allVertices(Mod[5, numOfSides] + 1), allVertices(Mod[6, numOfSides] + 1)]), allVertices(Mod[6, numOfSides] + 1), allVertices(Mod[7, numOfSides] + 1)) → fAngle((x(allVertices(Mod[7, numOfSides] + 1)) + (x(allVertices(Mod[7, numOfSides] + 1)) - x(allVertices(Mod[6, numOfSides] + 1))) / Distance[allVertices(Mod[6, numOfSides] + 1), allVertices(Mod[7, numOfSides] + 1)], y(allVertices(Mod[7, numOfSides] + 1)) + (y(allVertices(Mod[7, numOfSides] + 1)) - y(allVertices(Mod[6, numOfSides] + 1))) / Distance[allVertices(Mod[6, numOfSides] + 1), allVertices(Mod[7, numOfSides] + 1)]), allVertices(Mod[7, numOfSides] + 1), allVertices(Mod[8, numOfSides] + 1)) → lAngle((x(allVertices(Mod[8, numOfSides] + 1)) + (x(allVertices(Mod[8, numOfSides] + 1)) - x(allVertices(Mod[7, numOfSides] + 1))) / Distance[allVertices(Mod[7, numOfSides] + 1), allVertices(Mod[8, numOfSides] + 1)], y(allVertices(Mod[8, numOfSides] + 1)) + (y(allVertices(Mod[8, numOfSides] + 1)) - y(allVertices(Mod[7, numOfSides] + 1))) / Distance[allVertices(Mod[7, numOfSides] + 1), allVertices(Mod[8, numOfSides] + 1)]), allVertices(Mod[8, numOfSides] + 1), allVertices(Mod[9, numOfSides] + 1)) → qSequence(Segment[allVertices(Mod[k + 1, numOfSides] + 1), (x(allVertices(Mod[k + 1, numOfSides] + 1)) + (x(allVertices(Mod[k + 1, numOfSides] + 1)) - x(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)], y(allVertices(Mod[k + 1, numOfSides] + 1)) + (y(allVertices(Mod[k + 1, numOfSides] + 1)) - y(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)])], k, 0, floor((t + 1) / 2) - 1) → l1Angle(Pnums'(Mod[5, numOfSides] + 1), Pnums(Mod[5, numOfSides] + 1), (x(Pnums(Mod[5, numOfSides] + 1)) + (x(allVertices(Mod[6, numOfSides] + 1)) - x(allVertices(Mod[5, numOfSides] + 1))) / Distance[allVertices(Mod[5, numOfSides] + 1), allVertices(Mod[6, numOfSides] + 1)], y(Pnums(Mod[5, numOfSides] + 1)) + (y(allVertices(Mod[6, numOfSides] + 1)) - y(allVertices(Mod[5, numOfSides] + 1))) / Distance[allVertices(Mod[5, numOfSides] + 1), allVertices(Mod[6, numOfSides] + 1)])) → a6Angle(Pnums'(Mod[6, numOfSides] + 1), Pnums(Mod[6, numOfSides] + 1), (x(Pnums(Mod[6, numOfSides] + 1)) + (x(allVertices(Mod[7, numOfSides] + 1)) - x(allVertices(Mod[6, numOfSides] + 1))) / Distance[allVertices(Mod[6, numOfSides] + 1), allVertices(Mod[7, numOfSides] + 1)], y(Pnums(Mod[6, numOfSides] + 1)) + (y(allVertices(Mod[7, numOfSides] + 1)) - y(allVertices(Mod[6, numOfSides] + 1))) / Distance[allVertices(Mod[6, numOfSides] + 1), allVertices(Mod[7, numOfSides] + 1)])) → a7Angle(Pnums'(Mod[7, numOfSides] + 1), Pnums(Mod[7, numOfSides] + 1), (x(Pnums(Mod[7, numOfSides] + 1)) + (x(allVertices(Mod[8, numOfSides] + 1)) - x(allVertices(Mod[7, numOfSides] + 1))) / Distance[allVertices(Mod[7, numOfSides] + 1), allVertices(Mod[8, numOfSides] + 1)], y(Pnums(Mod[7, numOfSides] + 1)) + (y(allVertices(Mod[8, numOfSides] + 1)) - y(allVertices(Mod[7, numOfSides] + 1))) / Distance[allVertices(Mod[7, numOfSides] + 1), allVertices(Mod[8, numOfSides] + 1)])) → a8Sequence(Angle[Pnums'(Mod[k, numOfSides] + 1), Pnums(Mod[k, numOfSides] + 1), (x(Pnums(Mod[k, numOfSides] + 1)) + (x(allVertices(Mod[k + 1, numOfSides] + 1)) - x(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)], y(Pnums(Mod[k, numOfSides] + 1)) + (y(allVertices(Mod[k + 1, numOfSides] + 1)) - y(allVertices(Mod[k, numOfSides] + 1))) / Distance[allVertices(Mod[k, numOfSides] + 1), allVertices(Mod[k + 1, numOfSides] + 1)])], k, 0, numOfSides - 1) → eAnglesSum(eAngles) → theSumCorner(text16, 1) → t4c1Corner(text16, 2) → t4c2Corner(text17, 1) → t5c1Corner(text17, 2) → t5c2Corner(text18, 1) → t6c1Corner(text18, 2) → t6c2Corner(text16, 3) → t4c3Corner(text17, 3) → t5c3Corner(text18, 3) → t6c3Corner(text19, 1) → t7c1Corner(text19, 2) → t7c2Corner(text19, 3) → t7c3Corner(text21, 1) → t8c1Corner(text21, 2) → t8c2Corner(text21, 3) → t8c3
AI Drawing Prompt Reference
Draw a pentagon ABCDE by connecting points A to E, B to A, C to B, D to C, and E to D. Then construct vectors and midpoints, rotate points P1, P2, P3, P4, and P5, and finally draw the incircle and circumcircle of pentagon ABCDE.
The prompt above was compiled from the original drawing commands and is for reference only.