Casio fx-CG 50: Points on a Circle
Introduction
and Derivation
Given
the initial point on a circle (x, y). If the point travels on a
circle a distance of arc length s, where is the new point on the
circle? Assumption: The center of the circle lies on the point (0,
0).
In
fact, we can have two points depending on the direction traveled:
counter-clockwise or clockwise. The programs presented today will
determine both points.
Points
that lie on the circle have the same radius. Determine the required
radius:
r
= √(x^2 + y^2)
And
since the circle is centered at (0, 0), we can determine the angle
by:
θ
= arctan(y/x) = arg(x + yi)
We
will assume all angles are in radians.
The
arc length can be used to determine the angle traveled. Let’s call
this angle z:
s =
r × z
z =
s / r
The
new points can be determined by:
x’
= r × cos(θ + z), y’ = r × sin(θ + z)
x’’
= r × cos(θ - z), y’’ = r × sin(θ - z)
Casio
fx-CG 50 Basic: PTSONCIRC
Code:
ClrText
Blue
“POINTS ON”
Blue
“THE CIRCLE”
Blue
“CENTER (0,0)”
Red
“RADIANS”
Rad
“INITIAL
X”? → X
“INITIAL
Y”? → Y
“ARC
LENGTH”? → S
Abs
(X+Yi)
→ R
Arg
(X+Yi)
→ θ
S
÷ R → Z
R
× cos(θ + Z) → A
R
× sin(θ + Z) → B
R
× cos(θ - Z) → C
R
× cos(θ - Z) → D
ClrText
Green
Locate 1,3,”POINT 1”
Black
Locate 1,4,A
Blue
Locate 11,4,”,”
Black
Locate 12,4,B
Green
Locate 1,5,”POINT 2”
Black
Locate 1,6,C
Blue
Locate 11,6,”,”
Black
Locate 12,6,D
For
monochrome models, leave out the color commands (Blue, Red, Black,
Green)
Casio
fx-CG 50 Python: ptsoncirc.py
Code:
from
math import *
print(“Points
on\nthe circle.”)
print(“Center
is at (0,0)”)
x=float(input(“initial
x? “))
y=float(input(“initial
y? “))
s=float(input(“arc
length? “))
r=sqrt(x**2+y**2)
t=atan(x,y)
z=s/r
b,a=r*cos(t+z),r*sin(t+z)
d,c=r*cos(t-z),r*sin(t-z)
print(“Point
1”)
print(str(a),”,\n”,str(b))
print(“Point
2”)
print(str(c),”,\n”,str(d))
Examples
X:
5, Y: 6, S: 1.5
Point
1: (3.76280901, 6.84406811)
Point
2: (6.05333094, 4.93529983)
X:
4: Y: 5, S: 1
Point
1: (3.173620164, 5.561306956)
Point
2: (4.729016994, 4.316989492)
Python
Pointers
Storing
to Multiple Variables in One Line
We
can store a value to multiple variables in one line. For example,
a
= b = 7
Stores
the value 7 to both the variables a and b.
We
can store multiple values to multiple values to multiple variables in
one line. For example:
a,
b = 7, 8
Stores
8 to the variable b and 7 to the variable a. The
expression works from the inside-out.
We
could also have both uppercase and lowercase letters as different
variables, such as A and a. I choose not to because I want to avoid
confusion.
New
Line Escape Character: \n
In a
string, we can add \n (backslash, n) to create a new line.
Eddie
All
original content copyright, © 2011-2024. 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.