TI 84 Plus: Plotting Circular Arcs with Just Two Points
Introduction
Knowing two points (x0, y0) and (x1, y1), we can draw a circular arc between two points. We are going to assume that the points form the diameter of the circle. Therefore, either point forms the radius along with the line's midpoint. The midpoint between the points, labeled (A,B) is:
A = (x0 + x1) / 2, B = (y0 + y1) / 2
With the radius:
R = √((A - x0)^2 + (B - y0)^2) = √((x1 - A)^2 + (y1 - B)^2)
Set the parametric equations as:
x = R * (cos(t) + A / R)
y = R * (sin(t) + B / R)
With t being the range of required angle measure (θ), we have to determine the start and end points for the range of values for t. Since (A, B) may not be the origin, we must take it into account the midpoint in determining the angle points:
t0 = atan((B - y0) / (A - x0)) mod 2*π
t1 = atan((y1 - B) / (x1 - A)) mod 2*π
The program ARC2PTS for the TI-84 Plus makes use the complex number functions abs and angle to determine radius and the angles, respectively.
TI-84 Plus Program: ARC2PTS
"2020-12-20 EWS"
Radian
a+bi
Param
FnOff
Input "X0? ",J
Input "Y0? ",K
Input "X1? ",L
Input "Y1? ",M
(J+L)/2→A
(K+M)/2→B
angle((A-J)+i(B-K))→C
If C<0:C+2π→C
angle((A-L)+i(B-M))→D
If D<0:D+2π→D
abs((A-J)+i(B-K))→R
"R(cos(T)+A/R)"→X₁T
"R(sin(T)+B/R)"→Y₁T
Menu("DIRECTION","TOP",1,"BOTTOM",2)
Lbl 1
min(C,D)→Tmin
max(C,D)→Tmax
Goto 3
Lbl 2
max(C,D)→Tmin
min(C,D)+2π→Tmax
Goto 3
Lbl 3
π/64→Tstep
ZoomFit
ZSquare
Examples
Example 1
Points: (1,3) and (5,9), top part of the circle
Example 2
Points: (-5, -8) and (-1, -7), bottom part of the circle
Eddie
All original content copyright, © 2011-2021. Edward Shore. Unauthorized use and/or unauthorized distribution for commercial purposes without express and written permission from the author is strictly prohibited. This blog entry may be distributed for noncommercial purposes, provided that full credit is given to the author.