It's pretty self explanatory ;)
You can zoom in and out with arrow keys
Please make sure you type in the function correctly. In most cases the project notices syntax errors and resets the function to f(x,y)=0. The project also resets the function if it's too long.
I don't recommend to plot functions with definition gaps. Infinity and NaN are set to 0.
Tips for typing in your own function:
- pay attention to parentheses, e.g. e^2x is taken as (e^2)*x, not e^(2*x)
- supported operators are +, -, *, / and ^
- supported functions are sin, cos, tan, asin, acos, atan, log, ln, exp, abs (absolute value function), sqrt (square root), cbrt (cubic root), root/rt (a. root of b [two arguments!]), floor, ceil, round/rd
- supported variables/literals are x, y, e and pi
- keep in mind that Scratch uses degrees (but without °)
- potentiation doesn't work fully correctly with non-integer exponents
Music: Wallpaper - Kevin MacLeod
Plotting complex surfaces: https://scratch.mit.edu/projects/180755299/
For rendering the surfaces I used an isometric 3D engine. To calculate individual functions the project first transforms them into Reverse Polish Notation with the Shunting Yard Algorithm and then evaluates them.
I tried to comment my scripts in this project, but if there are still questions left, you can ask me ;)