Cavalieri's Principle by Irina Boyadzhiev
Loading the math board and drawing, please wait…
In collections
Area, Surface Area, Volume, Cross Section, 3D
This example illustrates Cavalieri's Principle, which states that if two solids have equal heights and the same cross-sectional area at every level, then the two solids have the same volume. Key concepts include solid geometry and calculus. Using GeoGebra commands such as Polygon, Prism, Surface, etc., the construction process of the solid figures is dynamically demonstrated. Suitable for high school and above students learning solid geometry and calculus.
GeoGebra Commands & Parameters
Polygon(A, B, C) → poly1, c, a_1, bPrism(poly1, 3.245704115496874) → d, D, edgeCF, edgeDE, edgeEF, edgeDF, E, F, faceABED, faceBCFE, faceACFD, faceDEF, edgeAD, edgeBEHeight(d) → hIf(t < 0.5, 0, (2 * (t - 0.5))) → t2If(t < 0.5, (2 * t), 1) → t1Polygon(C', A', B') → poly2, b', c', a'CurveCartesian(f(u) + x1, y1, u, u, 0, h) → eCurveCartesian(f(u) + x2, y2, u, u, 0, h) → gCurveCartesian(f(u) + x3, y3, u, u, 0, h) → iSurface((u * (f(v) + x1)) + ((1 - u) * (f(v) + x2)), (u * y1) + ((1 - u) * y2), v, u, 0, 1, v, 0, h) → jSurface((u * (f(v) + x1)) + ((1 - u) * (f(v) + x3)), (u * y1) + ((1 - u) * y3), v, u, 0, 1, v, 0, h) → aSurface((u * (f(v) + x2)) + ((1 - u) * (f(v) + x3)), (u * y2) + ((1 - u) * y3), v, u, 0, 1, v, 0, h) → kSegment(G, G + (0, 0, h)) → lPoint(l) → HPolygon(I, J, K) → poly3, k_1, i_1, j_1Polygon(L, M, N) → poly4, n, l_1, mPolygon(O, P, Q) → poly5, q, o, pPolygon((-7, -7, h'), (7, -7, h'), (7, 7, h'), (-7, 7, h')) → poly6, r, s, b_1, c_1Segment(A, B) → d_1Segment(B, C) → e_1Segment(C, A) → f_1Sequence(Prism[Polygon[(f((i * δ)) + x1, y1, (i * δ)), (f((i * δ)) + x2, y2, (i * δ)), (f((i * δ)) + x3, y3, (i * δ))], δ], i, 0, w - 1) → list2Sequence(Prism[Polygon[(f((i * δ)) + x1, y1, (i * δ)), (f((i * δ)) + x2, y2, (i * δ)), (f((i * δ)) + x3, y3, (i * δ))], δ], i, 0, w - 1) → list2'Sequence(Prism[Polygon[A + (0, 0, (i * δ)), B + (0, 0, (i * δ)), C + (0, 0, (i * δ))], δ], i, 0, w - 1) → list1Sequence(Prism[Polygon[A + (0, 0, (i * δ)), B + (0, 0, (i * δ)), C + (0, 0, (i * δ))], δ], i, 0, w - 1) → list1'Vector(R0, B) → vLength(list2) → llSequence(Vector[(f((i * δ)) + x1, y1, (i * δ)), A + (0, 0, (i * δ))], i, 0, w - 1) → list3Translate(Element[list2, floor(u)], Vector[((u - floor(u)) * Element[list3, floor(u)])]) → h_1Sequence(Prism[Polygon[A + (0, 0, (i * δ)), B + (0, 0, (i * δ)), C + (0, 0, (i * δ))], δ], i, 0, floor(u) - 2) → list6Sequence(Prism[Polygon[(f((i * δ)) + x1, y1, (i * δ)), (f((i * δ)) + x2, y2, (i * δ)), (f((i * δ)) + x3, y3, (i * δ))], δ], i, floor(u), w - 1) → list5