Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add gradians, degrees/minutes/seconds support. #4

Open
wants to merge 15 commits into
base: main
Choose a base branch
from

Conversation

alexbarry
Copy link
Owner

  • change angle mode button (radians/degrees) to show current state, rather than show state to switch to if pressed
  • add gradians angle mode
  • add degrees/minutes/seconds handling
  • add degrees/minutes/seconds button to HTML version

minor:

  • wrap LaTeX output in \text{} only if non numeric.
  • round trig functions' output if less than 1e-15 (so sin(2*pi) gives 0, not 1e-16 ish)

alexbarry added 15 commits June 3, 2024 08:12
Note: now the HTML UI button indicates the current
angle mode state, rather than the state that you will
be brought to if you press it.

TODO: add a warning to the UIs about this.
This prevents sin(2*pi) or sin(180 degrees) from returning
1e-16 something.

I am probably missing some more of these with complex math, but this is a good start.
I still need to add the LaTeX handling of this
This way you can print the type of a node when debugging.
This way, instead of seeing "\text{123}" in the LaTeX,
you'll see only "123".

The main motivation for this was adding degrees, since
those are numeric-ish and wouldn't render inside a "\text{}".
Otherwise the process seems to remain running, potentially
consuming a bunch of ram if you mess up the regexes and
get stuck in an infinite loop...
Including fixing a really bad bug where the "within difference"
function wasn't taking the absolute value, causing a bunch of
clearly wrong tests to pass.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant