Exploration of Bicentric Quadrilaterals
Loading the math board and drawing, please wait…
This GeoGebra example explores bicentric quadrilaterals–quadrilaterals that possess both a circumcircle and an incircle. It dynamically demonstrates the relationship between side lengths, angles, and the radii/positions of the two circles using geometric constraints and sliders. Core mathematical concepts include circumcircles, incircles, similar triangles, triangle congruence, and geometric transformations. Construction leverages GeoGebra commands such as Circle, Intersect, Polygon, Tangent, Distance, and ClosestPoint, involving angle measurement, vector operations, and polygon drawing. Suitable for high school geometry enrichment, competition training, and learners interested in advanced circle properties and geometric optimization.
GeoGebra Commands & Parameters
ConstructionStep() → ncsCircle(O1, r1) → ci1If(ncs ≤ 41, 25°, 0°) → β1Segment(A1, C1) → dg11Segment(B1, Intersect[ci1, OrthogonalLine[B1, dg11], 1]) → dg21Intersect(ci1, OrthogonalLine[B1, dg11], 2) → D1Intersect(dg11, dg21) → H1Angle(A1, H1, D1) → α11Angle(C1, H1, B1) → α21Polygon(A1, B1, C1, D1) → qu1, a1, b1, c1, d1Tangent(A1, ci1) → tA1,Tangent(B1, ci1) → tB1,Intersect(tA1, tB1) → A2Tangent(C1, ci1) → tC1,Intersect(tB1, tC1) → B2Tangent(D1, ci1) → tD1,Intersect(tC1, tD1) → C2Intersect(tD1, tA1) → D2Polygon(A2, B2, C2, D2) → qu2, a2, b2, c2, d2Intersect(LineBisector[Segment[A2, B2]], LineBisector[Segment[B2, C2]]) → O2Distance(O2, A2) → r2Circle(O2, r2) → ci2Segment(A2, C2) → dg12Segment(B2, D2) → dg22Intersect(dg12, dg22) → H2Angle(A2, H2, D2) → α12Angle(C2, H2, B2) → α22Tangent(A2, ci2) → tA2, gTangent(B2, ci2) → tB2,Intersect(Tangent[A2, ci2], Tangent[B2, ci2]) → A3Tangent(C2, ci2) → tC2,Intersect(Tangent[B2, ci2], Tangent[C2, ci2]) → B3Tangent(D2, ci2) → tD2, hIntersect(Tangent[C2, ci2], Tangent[D2, ci2]) → C3Intersect(Tangent[D2, ci2], Tangent[A2, ci2]) → D3Polygon(A3, B3, C3, D3) → qu3, a3, b3, c3, d3Intersect(LineBisector[Segment[A3, B3]], LineBisector[Segment[B3, C3]]) → O3Distance(O3, A3) → r3Circle(O3, r3) → ci3ClosestPoint(ci3, D3) → D3'Tangent(A3, ci3) → tA3,Tangent(B3, ci3) → tB3,Tangent(C3, ci3) → tC3,Tangent(D3, ci3) → tD3, fVector(D3, D3') → vD3Intersect(Tangent[A3, ci3], Tangent[B3, ci3]) → A4Intersect(Tangent[B3, ci3], Tangent[C3, ci3]) → B4Intersect(Tangent[C3, ci3], Tangent[D3, ci3]) → C4Intersect(Tangent[D3, ci3], Tangent[A3, ci3]) → D4Polygon(A4, B4, C4, D4) → qu4, a4, b4, c4, d4Intersect(LineBisector[Segment[A4, B4]], LineBisector[Segment[B4, C4]]) → O4Distance(O4, A4) → r4Circle(O4, r4) → ci4ClosestPoint(ci4, D4) → D4'Vector(D4, D4') → vD4Circle(Midpoint[D4, D4'], 0.35) → cd4