ATAN


Math function ATAN


10
20  ATAN (x)
30
Inverse tangent.


See examples


If there is insufficient information on this page and you wish learn more about ATAN, please send an email to smallbasic@gmail.com. You can help to improve information about ATAN by submitting an article using the comments link below. Note, an offline language reference text file is now avialable – see the Download section.

Comments

Trig lesson two in TAN offers a lead in to this little demo:

' pin the tail.bas  SmallBASIC 0.12.2 [B+=MGA] 2016-03-13
' look how simple ATAN returns an angle from a ratio y/x

tw=txtw(string(22,"W")):xlimit=xmax-tw
th=txth("Q"):ylim=ymax-2*th
maxdistance=(xmax^2+ylim^2)^.5
winner=0 : windistance=maxdistance
for i=1400 to 0 step -100 ' draw target
  if i mod 200=0 then cc=12 else cc=15 'alt red/white
  circle 0,0,i,1,cc filled
next
color 14,4
for player=1 to 12
  xtail=rnd*xlimit 'keeps the player tail in one line on the screen, hopefully
  ytail=rnd*ylim   'keeps the player on the screen and screen from scrolling, hopefully
  angle=deg(atan(ytail/xtail))\1 '<====== notice no angle involved with atan we feed it a ratio
                                                  ' DEG converts the angle to degrees from radians
  distance=((xtail^2+ytail^2)^.5)\1
  tail="^<"+str(player)+" deg:"+str(angle)+" dist:"+str(distance)
  at xtail,ytail:? tail
  if distance < windistance then windistance=distance:winner=player
  pause
next
color 15,0 'cause a screen scroll on purpose
at 0,ymax-th: ? "The winner is "+str(winner)+" at "+str(windistance)+" press any..."
pause