Locus of a Point with Constant Weighted Sum of Squared Distances to N Fixed Poin

Locus of a Point with Constant Weighted Sum of Squared Distances to N Fixed Poin
Loading the math board and drawing, please wait…
2025-05-15 06:45
This example visualizes the locus of a moving point in the plane such that the weighted sum of the squared distances from the point to N fixed points remains constant (equal to c). As the parameters vary, the construction reveals the resulting curve(s), highlighting how a global distance constraint to multiple centers translates into a geometric (typically quadratic) locus. The key math concepts are locus geometry, squared-distance constraints, weighted sums, and the underlying coordinate/analytic geometry viewpoint. Construction approach in GeoGebra: use Textfield and Input boxes to set N, c, and weight/scale parameters; generate fixed points via RandomPointIn (e.g., P1, P2, …); employ Circle and Polygon for visual structure; compute and aggregate the constraint using distance terms combined with Sum, while Zip/Flatten help organize the list of terms; create the solution points with Point and Sequence. ScriptListPointsOn_c and ScriptDelete manage the locus point set as c changes, with scale controlling presentation. Suitable for high school through early university learning—especially lessons on analytic geometry, quadratic loci, and parameterized dynamic geometry.

GeoGebra Commands & Parameters

  1. Textfield(a) → InputBox1
  2. Circle(D, R) → c
  3. Sequence(Random[(-a), a] / a / 10, k, 1, N) → qi, {-0.0685, 0.0070999999999999995, -0.0995, -0.0675, 0.05620000000000001, -0.0182, 0.0179, 0.0313, 0.014299999999999998, 0.0646}
  4. Flatten(Sequence[{"P_{" + (m) + "}=RandomPointIn[c]", "ShowLabel[P_{" + (m) + "},false]"}, m, 1, N]) → ScriptListPointsOn_c
  5. RandomPointIn(c) → P_{1}
  6. RandomPointIn(c) → P_{2}
  7. Sequence((("Delete[P_{" * m) * "}]"), m, 3, N) → ScriptDelete
  8. Textfield(N) → InputBox4
  9. Polygon(Corner[1] + (5, 5), Corner[2] + (-5, 5), Corner[3] + (-5, -5), Corner[4] + (5, -5)) → poly, f, g, h, i
  10. Textfield(R) → InputBox2
  11. RandomPointIn(c) → P_{3}
  12. RandomPointIn(c) → P_{4}
  13. RandomPointIn(c) → P_{5}
  14. RandomPointIn(c) → P_{6}
  15. RandomPointIn(c) → P_{7}
  16. RandomPointIn(c) → P_{8}
  17. RandomPointIn(c) → P_{9}
  18. RandomPointIn(c) → P_{10}
  19. Sum(Sequence[(qi(k) * Distance[points(k), E]^(2)), k, 1, N]) → SQ
  20. Sum(Sequence[(qi(k) * Distance[points(k), CM]^(2)), k, 1, N]) → J_0SQ
  21. Circle(CM, RSQ) → e
  22. Zip(Segment[E, a], a, points) → seg
  23. Point(e) → E'
  24. Sum(Sequence[(qi(k) * Distance[points(k), E']^(2)), k, 1, N]) → SQ'
  25. Text("$\scalebox{1}{\bf{ " + text14 + " }}$", Bo1, true, true) → text14a
  26. Text("$\scalebox{" + (LaTeX[scale]) + "}{\bf" + (LaTeX[TableText[{Append["\textcolor{red}{i}", 1…N], Append["\textcolor{blue}{ ±q}", qi], Append["\textcolor{black}{(x,y)}", points]}, "v"]]) + "}$", Bo2, true, true) → text4
  27. Text("$\scalebox{1}{\bf{ " + "\ovalbox{\fgcolor{#009900}{\scalebox{0.8}{Circle\; e\; with\; radius}}\\\fgcolor{#009900}{R_0}=" + (LaTeX[RSQ]) + "\\J_\fgcolor{#009900}{E}=" + (LaTeX[SQ]) + "\\ J_{\fgcolor{red}{E'}}=" + (LaTeX[SQ']) + "}" + " }}$", Bo3, true, true) → text2
  28. Zip(Segment[E', a], a, points) → seg1

AI Drawing Prompt Reference

Draw a dynamic geometric figure: place N fixed points randomly in the plane, each with a weight. A moving point E satisfies that the weighted sum of squared distances from E to these fixed points equals a constant c. As c varies, the locus of E forms a curve (typically a conic). Show a reference circle whose radius is determined by the weighted sum, and draw segments from E to each fixed point. Use input boxes to adjust N, c, and weights, and a slider for scaling.
The prompt above was compiled from the original drawing commands and is for reference only.