Exploring Analyic Geometry with Mathematica®

Home Contents Commands Packages Explorations Reference
Tour Lines Circles Conics Analysis Tangents

Castillon's Problem

castill.html

Exploration

Let "castill_1.gif", "castill_2.gif" and "castill_3.gif" be three points inside the circle "castill_4.gif".  Describe a method for inscribing a triangle inside "castill_5.gif" such that the sides of the triangle pass through the three given points.

Approach

Let "castill_6.gif", "castill_7.gif" and "castill_8.gif" be the vertex points of the inscribed triangle.  Using the rational parametric equations of the circle, express the coordinates of the vertex points in terms of parameters "castill_9.gif", "castill_10.gif" and "castill_11.gif".  Form three equations in three unknowns, "castill_12.gif", "castill_13.gif" and "castill_14.gif", using the condition that each of the given points must lie on a line containing one side of the triangle.  Solve the three equations for the parameter values of the vertex points.

Initialize

To initialize Descarta2D, select the input cell bracket and press SHIFT-Enter.

This initialization assumes that the Descarta2D software has been copied into one of the standard directories for AddOns which are on the Mathematica search path, $Path.

<<Descarta2D`

Solution

This is a function that returns the rational parameterization of a unit circle at the origin given a parameter value, t.

RationalParameterization2D[t_]:=
   {(1-t^2)/(1+t^2),2t/(1+t^2)};

Construct three points on "castill_15.gif" at parameters "castill_16.gif", "castill_17.gif" and "castill_18.gif".

Clear[t1,t2,t3];
{V1,V2,V3}=Map[Point2D[RationalParameterization2D[#]]&,
                  {t1,t2,t3}]

"castill_19.gif"

Construct three lines containing the three sides of the triangle.

L12=Line2D[V1,V2] //FullSimplify;
L23=Line2D[V2,V3] //FullSimplify;
L13=Line2D[V1,V3] //FullSimplify;
{L12,L23,L13}

"castill_20.gif"

Form three equations by forcing the points "castill_21.gif", "castill_22.gif" and "castill_23.gif" to be on the lines containing the sides of the triangle.

Clear[x1,y1,x2,y2,x3,y3];
P1=Point2D[{x1,y1}];
P2=Point2D[{x2,y2}];
P3=Point2D[{x3,y3}];
eq1=Equation2D[L12,{x1,y1}];
eq2=Equation2D[L23,{x2,y2}];
eq3=Equation2D[L13,{x3,y3}];
eqns={eq1,eq2,eq3}

"castill_24.gif"

Solve the equations for the parameter values.  The resulting expressions are complicated and uninteresting, so we suppress them and use them in the graphical illustrations below.  Notice that in general there are two solutions to the problem.

ans=Solve2D[eqns,{t1,t2,t3}] //FullSimplify;
Length[ans]

"castill_25.gif"

Discussion

Example 1:  Plot the solutions for the points "castill_26.gif", "castill_27.gif" and "castill_28.gif".

Sketch2D[{Circle2D[{0,0},1],
   Map[({V1,V2,V3,P1,P2,P3,Segment2D[V1,V2],
         Segment2D[V2,V3],Segment2D[V1,V3]} /. #)&,
       ans]} /.
   {x1->-0.25, y1->0.25,
    x2->0.5, y2->-0.5,
    x3->-0.5, y3->-0.5}]

"castill_29.gif"

Graphics saved as "castil01.eps".

Example 2:  Plot the solutions for the points "castill_30.gif", "castill_31.gif" and "castill_32.gif".

Sketch2D[{Circle2D[{0,0},1],
   Map[({V1,V2,V3,P1,P2,P3,Segment2D[V1,V2],
         Segment2D[V2,V3],Segment2D[V1,V3]} /. #)&,
       ans]} /.
   {x1->0.5, y1->0.5,
    x2->-0.5, y2->0.5,
    x3->0, y3->-0.5}]

"castill_33.gif"

Graphics saved as "castil02.eps".


Copyright © 1999-2007 Donald L. Vossler, Descarta2D Publishing
www.Descarta2D.com