Polygon Intersection Demo by PommierMS
Loading the math board and drawing, please wait…
This example demonstrates the intersection of two polygons after translation and rotation. It involves core math concepts like polygons, intersection points, geometric transformations, and coordinate geometry. Key GeoGebra commands and objects used include Point, Polygon, Min, Max, ConvexHull, Translate, IntersectPath, Distance, Segment, Length. Suitable for high school students learning coordinate geometry and geometric transformations to understand polygon positional relationships and dynamic changes.
GeoGebra Commands & Parameters
Point(Circle[A, 1.3050670480860362]) → BPolygon(A, B, C, D, E, F, G) → poly1, a, b, c, d, e, f, gMin({x(A), x(B), x(C), x(D), x(E), x(F), x(G)}) → x_{min}Max({x(A), x(B), x(C), x(D), x(E), x(F), x(G)}) → x_{max}Min({y(A), y(B), y(C), y(D), y(E), y(F), y(G)}) → y_{min}Max({y(A), y(B), y(C), y(D), y(E), y(F), y(G)}) → y_{max}ConvexHull({A, B, C, D, E, F, G}) → graphe1Polygon(D_0, A_0, B_0, C_0) → poly2, d_0, a_0, b_0, c_0Point(Circle[H, 1.1744944318141146]) → IPolygon(H, I, J, K, L, M) → poly3, h_1, i_1, j_1, k_1, l_1, m_1Min({x(H), x(I), x(J), x(K), x(L), x(M)}) → x'_{min}Max({x(H), x(I), x(J), x(K), x(L), x(M)}) → x'_{max}Min({y(H), y(I), y(J), y(K), y(L), y(M)}) → y'_{min}Max({y(H), y(I), y(J), y(K), y(L), y(M)}) → y'_{max}Polygon(A'_0, B'_0, C'_0, D'_0) → poly4, a_1, b_1, c_1, d_1ConvexHull({H, I, J, K, L, M}) → graphe2Polygon(U_4, U_1, U_2, U_3) → poly5, u_4, u_1, u_2, u_3Translate(H, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → H'Translate(I, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → I'Translate(J, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → J'Translate(K, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → K'Translate(L, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → L'Translate(M, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → M'Polygon(H', I', J', K', L', M') → poly3', h', i', j', k', l', m'Translate(A'_0, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → NTranslate(B'_0, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → OTranslate(C'_0, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → PTranslate(D'_0, Vector[D'_0, U_4] + (v * (Vector[U_4, U_3] - Vector[D'_0, C'_0])) + (w * (Vector[U_4, U_1] - Vector[D'_0, A'_0]))) → QPolygon(N, O, P, Q) → poly4', n_1, o_1, p_1, q_1ConvexHull({H', I', J', K', L'}) → graphe3IntersectPath(poly1, poly3') → poly6, R, g_1, q_4, r_4, s_4, t_4, S, T, W_2, Z_2, A_3, B_3, e_1, f_1Min(Lx) → x_{inf}Min(Ly) → y_{inf}Max(Lx) → x_{sup}Max(Ly) → y_{Sup}Polygon({(x_{inf}, y_{inf}), (x_{sup}, y_{inf}), (x_{sup}, y_{Sup}), (x_{inf}, y_{Sup})}) → poly7Distance(O, P) → v_1Distance(Q, P) → w_1Distance(C_0, D_0) → o_2Distance(C_0, B_0) → v_2Segment(C_0, B_0) → q_3Segment(A_0, B_0) → r_3Segment(N, O) → s_3Segment(P, O) → t_3Segment((x_{inf}, y_{Sup}), (x_{sup}, y_{Sup})) → a_4Segment((x_{inf}, y_{Sup}), (x_{inf}, y_{inf})) → b_4Length(a_4) → w_2Length(r_3) → dist_r3Length(s_3) → dist_{L_1}
AI Drawing Prompt Reference
Draw a polygon and then translate and rotate it. Create a polygon first, find the minimum and maximum x and y coordinates of its vertices, then create another polygon and translate and rotate it. Finally, calculate the intersection of the two polygons and display the boundary of the intersection polygon.
The prompt above was compiled from the original drawing commands and is for reference only.