I recently discovered a couple of 3D graphing programs for the fx 9860 calculator and was wondering how they where made.
The 3D engine made by Vanhoa (called Graph3D) is impressive. You can download the source code here:
http://www.planet-casio.com/Fr/programmes/programme2612-last-graph3d-vanhoa-b5.html
While it might take a while to initially process the x,y and z coordinates it does not need to recalculate the coordinates when panning the screen. I then discovered hugh9860 program called Reckon which has one of the best 3D graphers I have ever seen. You can download Reckon here:
http://www.voidware.com/reckon/
Its ability to graph the function in a split second makes it stand out from the rest.
I would like to know how the 3D grapher in Reckon works. The two major questions that come to mind are:
because the fx 9860 doesn't support 3D drawing how do you convert a point in 3D (x,y,z) to a position on the screen (x,y)? From doing some research this involves doing a 3D projection onto a 2D plane (in this case the 2D plane is the calculator screen). But there are a lot of ways to achieve this. How did hugh9860 program do this?
The second question is to do with calculating the z values from an equation that the user entered. for example if I entered the equation "z = x^2+y^2" how do I work out what the value of z is if x=2 and y=3? As a human being I can easily tell the answer is 13 but how do I get a program to work this out for me? I noticed that Vanhoa's 3D grapher using a file called EVALD.C that uses a bunch of if statements to determine the answer, however it is slow. It was only able to process approximately 80 values per second which means that some functions took up to 20 second to graph. With hugh9860 program it takes less than a second. how did he do this?
finally, I couldn't find the source code for reckon. Have a been looking in the wrong places or would hugh9860 prefer not to release it?
thanks in advance.
The 3D engine made by Vanhoa (called Graph3D) is impressive. You can download the source code here:
http://www.planet-casio.com/Fr/programmes/programme2612-last-graph3d-vanhoa-b5.html
While it might take a while to initially process the x,y and z coordinates it does not need to recalculate the coordinates when panning the screen. I then discovered hugh9860 program called Reckon which has one of the best 3D graphers I have ever seen. You can download Reckon here:
http://www.voidware.com/reckon/
Its ability to graph the function in a split second makes it stand out from the rest.
I would like to know how the 3D grapher in Reckon works. The two major questions that come to mind are:
because the fx 9860 doesn't support 3D drawing how do you convert a point in 3D (x,y,z) to a position on the screen (x,y)? From doing some research this involves doing a 3D projection onto a 2D plane (in this case the 2D plane is the calculator screen). But there are a lot of ways to achieve this. How did hugh9860 program do this?
The second question is to do with calculating the z values from an equation that the user entered. for example if I entered the equation "z = x^2+y^2" how do I work out what the value of z is if x=2 and y=3? As a human being I can easily tell the answer is 13 but how do I get a program to work this out for me? I noticed that Vanhoa's 3D grapher using a file called EVALD.C that uses a bunch of if statements to determine the answer, however it is slow. It was only able to process approximately 80 values per second which means that some functions took up to 20 second to graph. With hugh9860 program it takes less than a second. how did he do this?
finally, I couldn't find the source code for reckon. Have a been looking in the wrong places or would hugh9860 prefer not to release it?
thanks in advance.