Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

GraphCalc 3DS: Difference between revisions

From GameBrew
No edit summary
m (Text replacement - "Category:Homebrew maths applications on 3DS" to "")
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews
{{Infobox 3DS Homebrews
|title=GraphCalc 3DS
|title=GraphCalc 3DS
|image=GraphCalc-3DS.jpeg
|image=Graphcalc3ds2.png
|description=Graphical calculator.
|description=Graphical calculator.
|author=flarn2006
|author=flarn2006
Line 8: Line 8:
|version=1.5.1
|version=1.5.1
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/3dshomebrew/GraphCalc-3DS-3DS.rar
|download=https://dlhb.gamebrew.org/3dshomebrews/graphcalc3ds.7z
|website=https://github.com/flarn2006/GraphCalc3DS
|website=https://github.com/flarn2006/GraphCalc3DS
|source=https://github.com/flarn2006/GraphCalc3DS
|source=https://github.com/flarn2006/GraphCalc3DS
}}
}}
== Graphing Calculator for 3DS ==
GraphCalc3DS is a graphing calculation utility for the 3DS made by flarn2006. It features variable sliders and equations can both be entered in the regular traditional algebraic notation or in the RPN (Reverse Polish Notation) format.
I guess you could say this is the exact opposite of games that run on graphing calculators. Requires [https://github.com/xerpi/sf2dlib sf2dlib].


== Controls ==
==Installation==
* '''Circle pad:''' Pan view, move cursor
===Installing===
* '''C-stick:''' Control sliders A and B ''(New 3DS only, may work with Circle Pad Pro)''
Available in 3DSX/SMDH format.
* '''L / R:''' Zoom
* '''Up / Down:''' Change active plot (for equation editing/trace cursor)
* '''Left / Right:''' Fine trace, change screen page
* '''A:''' Enter equation using algebraic notation (what you're probably used to)
* '''X:''' Hold for free cursor
* '''Y:''' Hold to trace graph (hold '''B''' to snap to units)
* '''Select:''' Toggle alt-function mode (like the 2nd key)
* '''Start:''' Quit


== About variable sliders ==
===Building===
Adjustable variable sliders are a new feature in version 1.3. They enable you to add values to graphs that you can easily adjust and experiment with, without the need to manually enter in different values (which can be annoying if they aren't at the end of the equation.) The sliders are on a new "page" on the screen; press Left or Right on the D-pad to switch pages. (This is the only other page as of 1.3, but there may be more in the future, and the code is already written to support more than two.)
Libraries used:
* [https://github.com/xerpi/sf2dlib sf2dlib], by xerpi (required).
* [https://github.com/flarn2006/SF2DBmpFont SF2DBmpFont], by flarn2006 (included in source code download).
* [https://github.com/codeplea/tinyexpr tinyexpr], by codeplea (included as submodule, use <code>git clone --recursive</code>).


You will then see four sliders, labeled 'a', 'b', 'c', and 'd'. The labels to the left are actually buttons; pressing them will insert the variable into the equation just like the 'x' button on the main page. To the right of each slider is a button labeled "0-1". This will reset the range of the slider to the default of, well, 0 to 1. You can extend the range of the sliders by holding down L or R while dragging past the left or right. You can shorten the range by setting the slider to the value you want to be the minimum or maximum, activating alt-mode (press Select) and pressing the button to the left (for minimum) or right (for maximum) of the slider.
==User guide==
===About variable sliders===
Adjustable variable sliders are a new feature in version 1.3. They enable you to add values to graphs that you can easily adjust and experiment with, without the need to manually enter in different values (which can be annoying if they aren't at the end of the equation). The sliders are on a new page on the screen; press Left/Right on the D-Pad to switch pages.  


== Important notes ==
You will then see four sliders, labeled <code>a</code>, <code>b</code>, <code>c</code>, and <code>d</code>:
* By default, equations are entered in RPN ([https://en.wikipedia.org/wiki/Reverse_Polish_Notation Reverse Polish Notation]). This means, for example, rather than &quot;sin(4 + x)&quot;, you would enter &quot;4 x + sin&quot;. You can still enter equations the traditional way (e.g. &quot;sin(4 + x)&quot;) by pressing A and using the on-screen keyboard. (Pressing A in alt mode will insert the function of X as an RPN function instead of replacing the existing expression.)
* The labels to the left are actually buttons; pressing them will insert the variable into the equation just like the <code>x</code> button on the main page.
* To the right of each slider is a button labeled <code>0-1</code>. This will reset the range of the slider to the default of 0 to 1.
* You can extend the range of the sliders by holding down L or R while dragging past the left or right.
* You can shorten the range by setting the slider to the value you want to be the minimum or maximum, activating alt-mode (press Select) and pressing the button to the left (for minimum) or right (for maximum) of the slider.
 
===About RPN Format===
By default, equations are entered in RPN ([https://en.wikipedia.org/wiki/Reverse_Polish_Notation Reverse Polish Notation]):
* This means, for example, rather than <code>sin(4 + x)</code>, you would enter <code>4 x + sin</code>.  
* You can still enter equations the traditional way (e.g. <code>sin(4 + x)</code>) by pressing A and using the on-screen keyboard.
* Pressing A in alt mode will insert the function of X as an RPN function instead of replacing the existing expression.
* If you've entered a number and want to start entering a new number immediately after, press the decimal point key twice, or only once if there's already a decimal point.
* If you've entered a number and want to start entering a new number immediately after, press the decimal point key twice, or only once if there's already a decimal point.


== Libraries used ==
==Controls==
* [https://github.com/xerpi/sf2dlib sf2dlib], by xerpi
C-Pad - Pan view, move cursor
* [https://github.com/flarn2006/SF2DBmpFont SF2DBmpFont], by myself (included in source code download)
 
* [https://github.com/codeplea/tinyexpr tinyexpr], by codeplea (included as submodule, use <code>git clone --recursive</code>)
C-Stick - Control sliders A and B (New 3DS only, may work with Circle Pad Pro)
 
L/R - Zoom
 
Up/Down - Change active plot (for equation editing/trace cursor)
 
Left/Right - Fine trace, change screen page
 
A - Enter equation using algebraic notation (what you're probably used to)
 
X - Hold for free cursor
 
Y - Hold to trace graph (hold B to snap to units)
 
Select - Toggle alt-function mode (like the 2nd key)
 
Start - Quit
 
==Changelog==
'''v1.5.1'''
* Small release to fix a bug in version 1.5. The bug was that undefined values weren't graphed properly (properly in this case being not at all) when the equation was entered in algebraic notation. Because of this bug, for example, <code>sqrt(1-x^2)</code> would appear as the top half of a circle like it should, except there would be two vertical lines on the sides. Version 1.5.1 fixes this bug.
 
'''v1.5'''
* This new release includes a new feature that several people have requested: RPN input is now optional. Pressing A will open the system keyboard, where you can type in an equation using traditional algebraic notation.
* In addition, if you have a New 3DS (or possibly a Circle Pad Pro, not sure if it's compatible) you can control the first two variable sliders ('a' and 'b') by moving the C-stick.
 
'''v1.4'''
* New icon.
* (3DSX only) Added title/author info to SMDH.
* Circle pad dead zone increased.
* New fonts (this is the result of changing to a new text rendering library that uses a different font format).
* Default equation changed to the simpler y=sin(x).
* UI now makes use of gradients and has a shiny appearance.
 
'''v1.3'''
* Two main new features in this release. One is the alternate-function mode, which works like the 2nd key on many handheld calculators. Press Select to turn it on or off; pressing a button automatically turns it off, even if the button doesn't have an alternate function. The old function of the Select button, resetting the view, is still available as the alt-function for the "clear" button. There are also a few new functions available in this way, and there's room for many more which I'll consider adding if anyone suggests them.
* The other new feature is the adjustable variable sliders. Basically, you can insert a variable into the equation, which you can adjust via a slider and see the changes in real time. You can also change the range of the slider; see the readme for information about how to do that.
 
'''v1.2'''
* Small release here. Only new feature is that you can hold down B while in trace mode to snap to units. The exact unit it snaps to is the smallest power of 10 that makes sense to snap to, based on the current zoom level.
* Thanks to videogame57 on gbatemp for suggesting this feature.
 
'''v1.1'''
* The main new feature in this update is the multi-plot functionality. You can have up to four plots (you probably won't need more, and with four active it starts to slow down a bit so that's probably a good maximum) which you can switch between by pressing Up/Down on the D-Pad (they're all visible at once obviously; the switching is only for editing the equation or using the trace cursor).
* Also, just realized there's a test screen in this version which has yet to be removed. It's not the kind of thing that could get in the way though, so no harm in leaving it there until the next update. Just pretend it's an Easter egg and try to find it.
 
'''v1.0'''
* Initial release.
 
==External links==
* GitHub - https://github.com/flarn2006/GraphCalc3DS
* GBAtemp - https://gbatemp.net/threads/release-graphing-calculator.399078

Latest revision as of 04:16, 6 Mayıs 2024

GraphCalc 3DS
Graphcalc3ds2.png
General
Authorflarn2006
TypeMath
Version1.5.1
LicenseMixed
Last Updated2016/12/04
Links
Download
Website
Source

GraphCalc3DS is a graphing calculation utility for the 3DS made by flarn2006. It features variable sliders and equations can both be entered in the regular traditional algebraic notation or in the RPN (Reverse Polish Notation) format.

Installation

Installing

Available in 3DSX/SMDH format.

Building

Libraries used:

  • sf2dlib, by xerpi (required).
  • SF2DBmpFont, by flarn2006 (included in source code download).
  • tinyexpr, by codeplea (included as submodule, use git clone --recursive).

User guide

About variable sliders

Adjustable variable sliders are a new feature in version 1.3. They enable you to add values to graphs that you can easily adjust and experiment with, without the need to manually enter in different values (which can be annoying if they aren't at the end of the equation). The sliders are on a new page on the screen; press Left/Right on the D-Pad to switch pages.

You will then see four sliders, labeled a, b, c, and d:

  • The labels to the left are actually buttons; pressing them will insert the variable into the equation just like the x button on the main page.
  • To the right of each slider is a button labeled 0-1. This will reset the range of the slider to the default of 0 to 1.
  • You can extend the range of the sliders by holding down L or R while dragging past the left or right.
  • You can shorten the range by setting the slider to the value you want to be the minimum or maximum, activating alt-mode (press Select) and pressing the button to the left (for minimum) or right (for maximum) of the slider.

About RPN Format

By default, equations are entered in RPN (Reverse Polish Notation):

  • This means, for example, rather than sin(4 + x), you would enter 4 x + sin.
  • You can still enter equations the traditional way (e.g. sin(4 + x)) by pressing A and using the on-screen keyboard.
  • Pressing A in alt mode will insert the function of X as an RPN function instead of replacing the existing expression.
  • If you've entered a number and want to start entering a new number immediately after, press the decimal point key twice, or only once if there's already a decimal point.

Controls

C-Pad - Pan view, move cursor

C-Stick - Control sliders A and B (New 3DS only, may work with Circle Pad Pro)

L/R - Zoom

Up/Down - Change active plot (for equation editing/trace cursor)

Left/Right - Fine trace, change screen page

A - Enter equation using algebraic notation (what you're probably used to)

X - Hold for free cursor

Y - Hold to trace graph (hold B to snap to units)

Select - Toggle alt-function mode (like the 2nd key)

Start - Quit

Changelog

v1.5.1

  • Small release to fix a bug in version 1.5. The bug was that undefined values weren't graphed properly (properly in this case being not at all) when the equation was entered in algebraic notation. Because of this bug, for example, sqrt(1-x^2) would appear as the top half of a circle like it should, except there would be two vertical lines on the sides. Version 1.5.1 fixes this bug.

v1.5

  • This new release includes a new feature that several people have requested: RPN input is now optional. Pressing A will open the system keyboard, where you can type in an equation using traditional algebraic notation.
  • In addition, if you have a New 3DS (or possibly a Circle Pad Pro, not sure if it's compatible) you can control the first two variable sliders ('a' and 'b') by moving the C-stick.

v1.4

  • New icon.
  • (3DSX only) Added title/author info to SMDH.
  • Circle pad dead zone increased.
  • New fonts (this is the result of changing to a new text rendering library that uses a different font format).
  • Default equation changed to the simpler y=sin(x).
  • UI now makes use of gradients and has a shiny appearance.

v1.3

  • Two main new features in this release. One is the alternate-function mode, which works like the 2nd key on many handheld calculators. Press Select to turn it on or off; pressing a button automatically turns it off, even if the button doesn't have an alternate function. The old function of the Select button, resetting the view, is still available as the alt-function for the "clear" button. There are also a few new functions available in this way, and there's room for many more which I'll consider adding if anyone suggests them.
  • The other new feature is the adjustable variable sliders. Basically, you can insert a variable into the equation, which you can adjust via a slider and see the changes in real time. You can also change the range of the slider; see the readme for information about how to do that.

v1.2

  • Small release here. Only new feature is that you can hold down B while in trace mode to snap to units. The exact unit it snaps to is the smallest power of 10 that makes sense to snap to, based on the current zoom level.
  • Thanks to videogame57 on gbatemp for suggesting this feature.

v1.1

  • The main new feature in this update is the multi-plot functionality. You can have up to four plots (you probably won't need more, and with four active it starts to slow down a bit so that's probably a good maximum) which you can switch between by pressing Up/Down on the D-Pad (they're all visible at once obviously; the switching is only for editing the equation or using the trace cursor).
  • Also, just realized there's a test screen in this version which has yet to be removed. It's not the kind of thing that could get in the way though, so no harm in leaving it there until the next update. Just pretend it's an Easter egg and try to find it.

v1.0

  • Initial release.

External links

Advertising: