Rainbow Conics as Envelopes of Straight Lines
Loading the math board and drawing, please wait…
This example demonstrates the formation of rainbow conics through the envelope of straight lines. Key mathematical concepts include the properties of conic sections and straight lines. The construction uses Circle, Point, If, Sequence, and LineBisector commands in GeoGebra. Suitable for high school mathematics education, particularly in coordinate geometry and conic sections.
GeoGebra Commands & Parameters
Circle(O, 1) → cPoint(c) → BIf(abs(A) < 1, Ellipse[A, O, Intersect[LineBisector[A, B], Line[O, B]]], Hyperbola[A, O, Intersect[LineBisector[A, B], Line[O, B]]]) → AllConicsSequence(LineBisector[(cos(((2 * π) * i / n)), sin(((2 * π) * i / n))), A], i, 0, n) → LinesLineBisector((cos(((2 * π) * 0 / n)), sin(((2 * π) * 0 / n))), A) → L0LineBisector((cos(((2 * π) * 1 / n)), sin(((2 * π) * 1 / n))), A) → L1LineBisector((cos(((2 * π) * 2 / n)), sin(((2 * π) * 2 / n))), A) → L2LineBisector((cos(((2 * π) * 3 / n)), sin(((2 * π) * 3 / n))), A) → L3LineBisector((cos(((2 * π) * 4 / n)), sin(((2 * π) * 4 / n))), A) → L4LineBisector((cos(((2 * π) * 5 / n)), sin(((2 * π) * 5 / n))), A) → L5LineBisector((cos(((2 * π) * 6 / n)), sin(((2 * π) * 6 / n))), A) → L6LineBisector((cos(((2 * π) * 7 / n)), sin(((2 * π) * 7 / n))), A) → L7LineBisector((cos(((2 * π) * 8 / n)), sin(((2 * π) * 8 / n))), A) → L8LineBisector((cos(((2 * π) * 9 / n)), sin(((2 * π) * 9 / n))), A) → L9LineBisector((cos(((2 * π) * 10 / n)), sin(((2 * π) * 10 / n))), A) → L10LineBisector((cos(((2 * π) * 11 / n)), sin(((2 * π) * 11 / n))), A) → L11LineBisector((cos(((2 * π) * 12 / n)), sin(((2 * π) * 12 / n))), A) → L12LineBisector((cos(((2 * π) * 13 / n)), sin(((2 * π) * 13 / n))), A) → L13LineBisector((cos(((2 * π) * 14 / n)), sin(((2 * π) * 14 / n))), A) → L14LineBisector((cos(((2 * π) * 15 / n)), sin(((2 * π) * 15 / n))), A) → L15LineBisector((cos(((2 * π) * 16 / n)), sin(((2 * π) * 16 / n))), A) → L16LineBisector((cos(((2 * π) * 17 / n)), sin(((2 * π) * 17 / n))), A) → L17LineBisector((cos(((2 * π) * 18 / n)), sin(((2 * π) * 18 / n))), A) → L18LineBisector((cos(((2 * π) * 19 / n)), sin(((2 * π) * 19 / n))), A) → L19LineBisector((cos(((2 * π) * 20 / n)), sin(((2 * π) * 20 / n))), A) → L20LineBisector((cos(((2 * π) * 21 / n)), sin(((2 * π) * 21 / n))), A) → L21LineBisector((cos(((2 * π) * 22 / n)), sin(((2 * π) * 22 / n))), A) → L22LineBisector((cos(((2 * π) * 23 / n)), sin(((2 * π) * 23 / n))), A) → L23LineBisector((cos(((2 * π) * 24 / n)), sin(((2 * π) * 24 / n))), A) → L24LineBisector((cos(((2 * π) * 25 / n)), sin(((2 * π) * 25 / n))), A) → L25LineBisector((cos(((2 * π) * 26 / n)), sin(((2 * π) * 26 / n))), A) → L26LineBisector((cos(((2 * π) * 27 / n)), sin(((2 * π) * 27 / n))), A) → L27LineBisector((cos(((2 * π) * 28 / n)), sin(((2 * π) * 28 / n))), A) → L28LineBisector((cos(((2 * π) * 29 / n)), sin(((2 * π) * 29 / n))), A) → L29LineBisector((cos(((2 * π) * 30 / n)), sin(((2 * π) * 30 / n))), A) → L30LineBisector((cos(((2 * π) * 31 / n)), sin(((2 * π) * 31 / n))), A) → L31LineBisector((cos(((2 * π) * 32 / n)), sin(((2 * π) * 32 / n))), A) → L32LineBisector((cos(((2 * π) * 33 / n)), sin(((2 * π) * 33 / n))), A) → L33LineBisector((cos(((2 * π) * 34 / n)), sin(((2 * π) * 34 / n))), A) → L34LineBisector((cos(((2 * π) * 35 / n)), sin(((2 * π) * 35 / n))), A) → L35LineBisector((cos(((2 * π) * 36 / n)), sin(((2 * π) * 36 / n))), A) → L36LineBisector((cos(((2 * π) * 37 / n)), sin(((2 * π) * 37 / n))), A) → L37LineBisector((cos(((2 * π) * 38 / n)), sin(((2 * π) * 38 / n))), A) → L38LineBisector((cos(((2 * π) * 39 / n)), sin(((2 * π) * 39 / n))), A) → L39LineBisector((cos(((2 * π) * 40 / n)), sin(((2 * π) * 40 / n))), A) → L40LineBisector((cos(((2 * π) * 41 / n)), sin(((2 * π) * 41 / n))), A) → L41LineBisector((cos(((2 * π) * 42 / n)), sin(((2 * π) * 42 / n))), A) → L42LineBisector((cos(((2 * π) * 43 / n)), sin(((2 * π) * 43 / n))), A) → L43LineBisector((cos(((2 * π) * 44 / n)), sin(((2 * π) * 44 / n))), A) → L44LineBisector((cos(((2 * π) * 45 / n)), sin(((2 * π) * 45 / n))), A) → L45LineBisector((cos(((2 * π) * 46 / n)), sin(((2 * π) * 46 / n))), A) → L46LineBisector((cos(((2 * π) * 47 / n)), sin(((2 * π) * 47 / n))), A) → L47LineBisector((cos(((2 * π) * 48 / n)), sin(((2 * π) * 48 / n))), A) → L48LineBisector((cos(((2 * π) * 49 / n)), sin(((2 * π) * 49 / n))), A) → L49LineBisector((cos(((2 * π) * 50 / n)), sin(((2 * π) * 50 / n))), A) → L50
AI Drawing Prompt Reference
Draw a unit circle centered at the origin. Place a moving point on the circle and a fixed point inside the circle. For each position of the moving point, construct the perpendicular bisector of the segment joining the fixed point and the moving point. As the moving point travels around the circle, these bisectors form an envelope: an ellipse if the fixed point is inside the circle, or a hyperbola if outside. Additionally, take many equally spaced points on the circle and draw the perpendicular bisectors between each and the fixed point, creating a family of lines that visually outline the conic section.
The prompt above was compiled from the original drawing commands and is for reference only.