-->
Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
-->
-->
Welcome,
Guest
. Please
login
or
register
.
Did you miss your
activation email
?
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
-->
Home
About
Team
Rules
Stats
Status
Sitemap
Chat
Downloads
Forum
News
Our Projects
Major Community Projects
Recent Posts
Unread Posts
Replies
Tools
SourceCoder3
Other Things...
Omnimaga Radio
TI-83 Plus ASM File Unsquisher
Z80 Conversion Tools
IES TI File Editor
Free RAM areas
Comprehensive Getkeyr table
URL Shortener
Online Axe Tilemap Editor
Help
Contact Us
Change Request
Report Issue/Bug
Team
Articles
Members
View the memberlist
Search For Members
Buddies
Login
Register
Omnimaga
»
Forum
»
Omnimaga
»
News
»
Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
« previous
next »
Print
Pages: [
1
]
Go Down
Author
Topic: Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released (Read 12521 times)
0 Members and 1 Guest are viewing this topic.
KermMartian
Editor
LV7
Elite (Next: 700)
Posts: 500
Rating: +233/-20
Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
«
on:
January 26, 2016, 04:15:09 pm »
After nearly two years of work, a
closed beta
, and an
open beta
, I'm proud to present Graph3DC for the TI-84 Plus C Silver Edition. In the time this project has gestated, the
TI-84 Plus C Silver Edition
has gone from the leading member of the TI-84 Plus family to a barely-remembered third cousin of the sleek new
TI-84 Plus CE
, but completionist that I am, I refused to let the work I put into Graph3DC go to waste. Therefore, I present today a 3D graphing App for the TI-84 Plus C Silver Edition, capable of graphing up to five simultaneous equations in the form Z=f(X,Y). It integrates with the TI-OS, like TI's Transformation Graphing and Inequality Graphing Apps, and thus can offer 3D graphing within the TI-OS graphing tools that students and teachers already know how to use (while leaving 2D graphing instantly available to avoid any confusion). As stated in the recent Open Beta 2 news article about Graph3DC, among its most distinguish features are:
Rendering and rotation of 3D graphs on up to a 17x17-point grid at normal resolution, or 27x27-point grid at high resolution.
Simultaneous graphing of up to 5 3D equations at normal resolution, or 2 3D equations at high resolution.
Tracing over graphs to examine the (X, Y, Z) coordinates of points.
User-configurable grid colors, background colors, bounds and axis display, axis labels, and more.
User-settable window and zoom.
TI-OS integration with the Y=, Window, Zoom, Trace, and Graph tools.
Full compatibility with horizontal splitscreen mode.
As I once stated in the
Graph3DC Closed Beta 1
news article, and have repeated ever since, one of my primary motivations behind creating (and finishing) Graph3DC was "to show TI that by releasing the keys necessary for us to write free Apps for their TI-84+CE, they'll be only strengthening that platform's appeal to students, teachers, and programmers." I wanted TI to know that the community can not only create powerful, fast games and useful programming tools for students, but can also create educational applications that are genuinely helpful in the classroom. For better or for worse, that appears to no longer be feasible, but I can say with some confidence that if I have the time, I will port Graph3DC to the TI-84 Plus CE as a non-App program runnable using
Doors CE 9
. In fact, had I chosen to make Graph3DC a non-App program from the beginning, I think the program would have been released months, if not years, earlier. Why? The vast majority of the time I spent creating Graph3DC was not invested in the 3D graphing, computation, and rendering code, but in building hook after hook to integrate with the OS, and more importantly, to work around OS bugs. Examining how TI's own Transform and Inequality Graphing Apps work reveals an intricate set of hooks to make the Y= menu work properly when augmented by an App's extra features and much more. Graph3DC drew heavily on my experience creating Doors CSE for the TI-84 Plus CSE, requiring me to make cursor hooks to make the flashing Plot1 to Plot 3 cursor in the Y= menu work properly, a key hook to skip to a correct Z= equation in the Z= menu when the OS's own features didn't quite work properly, myriad redisplay hooks to work around quirks in the OS's implementation of horizontal split-screen mode, and so many more. Although I'll have to implement my own input routines for a theoretical Graph3DE for the TI-84 Plus CE, I suspect that the development time will be significantly decreased with the burden of interacting with the TI-OS removed.
Without further ado, please enjoy Graph3DC at the download link below. If you'd like to explore some fun 3D equations right out of the box, take a look at the included readme PDF, and also refer to the equations and screenshots
posted by tireless beta-tester PT_
. In fact, I'd like to thank everyone in the community who helped test Graph3DC and who encouraged me to press onwards even when the project felt insurmountable. If you're a teacher, I would especially be interested in hearing from you, but I hope anyone will feel free to share comments, questions, and suggestions for future versions.
Claims of an easter egg embedded in the App are completely unfounded.
Download
Graph3DC 1.0
3D grapher for the TI-84 Plus C Silver Edition
Logged
SpiroH
LV8
Addict (Next: 1000)
Posts: 729
Rating: +153/-23
Re: Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
«
Reply #1 on:
January 26, 2016, 04:45:06 pm »
First off, it does look impressive, congratz!
A couple of questions come to my mind, though:
1. Performance: How long does it take to draw those two 3D plots (in the pictures) with such an engine (TI-84 Plus).
2. Algorithms: It reminds me quite a bit of gnuplot (eg:
http://gnuplot.sourceforge.net/demo/surface1.html
). Are there any gnuplot's algorithms embedded in Graph3DC or did you do them all from scratch?
Lastly, what do you exactly mean by
an easter egg embedded
?
*Edit* typo!
«
Last Edit: January 27, 2016, 08:41:59 am by SpiroH
»
Logged
Windows:
kArmTI - TI-Nspire emulator with skin
|
XML2TXT, XML2LUA, TXT2XML, LUA2XML and 2TNS
Mac:
nSpiKx - TI-Nspire emulator for Mac
TI-Nspire:
nTris - Update for CX
|
nTris - SDL implementation
|
nMah - Mahjong clone
KermMartian
Editor
LV7
Elite (Next: 700)
Posts: 500
Rating: +233/-20
Re: Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
«
Reply #2 on:
January 26, 2016, 05:04:09 pm »
1. The initial computation takes about twenty or more seconds, depending on the complexity of the equation(s) being graphed. Once you are rotating the graph, it can redraw each frame in a second or two.
2. The algorithms are entirely my own, based on code I developed (again, from scratch) for Graph3DP (
https://www.cemetech.net/forum/viewtopic.php?t=8167
).
Thank you for the kind words! Assuming you're familiar with the concept of am Easter Egg, I was slyly saying there are no Easter Eggs in the program.
Logged
SpiroH
LV8
Addict (Next: 1000)
Posts: 729
Rating: +153/-23
Re: Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
«
Reply #3 on:
January 27, 2016, 08:40:49 am »
Oops, I forgot to +1 you
. Also, thanks for the explanations, they're good enough for me
Logged
Windows:
kArmTI - TI-Nspire emulator with skin
|
XML2TXT, XML2LUA, TXT2XML, LUA2XML and 2TNS
Mac:
nSpiKx - TI-Nspire emulator for Mac
TI-Nspire:
nTris - Update for CX
|
nTris - SDL implementation
|
nMah - Mahjong clone
Print
Pages: [
1
]
Go Up
« previous
next »
Omnimaga
»
Forum
»
Omnimaga
»
News
»
Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released
\n\t\t\t\t\t\t\t\t\t
<' + '/div>\n\t\t\t\t\t\t\t\t\t
%body%<' + '/textarea>
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
Max characters: 20000; characters remaining:
...<' + '/span><' + '/span>
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t<' + '/div>\n\t\t\t\t\t\t\t\t<' + '/div>', sTemplateSubjectEdit: '
', sTemplateBodyNormal: '%body%', sTemplateSubjectNormal: '
%subject%<' + '/a>', sTemplateTopSubject: 'Topic: %subject% (Read 12521 times)', sErrorBorderStyle: '1px solid red' }); aJumpTo[aJumpTo.length] = new JumpTo({ sContainerId: "display_jump_to", sJumpToTemplate: "
Jump to:<" + "/label> %dropdown_list%", iCurBoardId: 11, iCurBoardChildLevel: 0, sCurBoardName: "News", sBoardChildLevelIndicator: "==", sBoardPrefix: "=> ", sCatSeparator: "-----------------------------", sCatPrefix: "", sGoButtonLabel: "go" }); aIconLists[aIconLists.length] = new IconList({ sBackReference: "aIconLists[" + aIconLists.length + "]", sIconIdPrefix: "msg_icon_", sScriptUrl: smf_scripturl, bShowModify: true, iBoardId: 11, iTopicId: 22266, sSessionId: "9e1b38222e278f8df80bb0e511e89a5b", sSessionVar: "cb9331f7b1e", sLabelIconList: "Message Icon", sBoxBackground: "transparent", sBoxBackgroundHover: "#ffffff", iBoxBorderWidthHover: 1, sBoxBorderColorHover: "#adadad" , sContainerBackground: "#ffffff", sContainerBorder: "1px solid #adadad", sItemBorder: "1px solid #ffffff", sItemBorderHover: "1px dotted gray", sItemBackground: "transparent", sItemBackgroundHover: "#e0e0f0" }); } function tick2() { if (typeof(document.forms.quickModForm) != "undefined") { calcCharLeft2(); setTimeout("tick2()", 1000); } else setTimeout("tick2()", 800); } function message_onkeyup() { if (typeof(document.forms.quickModForm) != "undefined" && typeof(document.forms.quickModForm.message) != "undefined") { document.forms.quickModForm.message.onkeyup = function onkeyup(event) { storeCaret(this); calcCharLeft2(); }; } else setTimeout("message_onkeyup()", 800); } message_onkeyup(); function calcCharLeft2() { var maxLength = 20000; var oldEditor = "", currentEditor = document.forms.quickModForm.message.value; if (!document.getElementById("editorLeft2")) return; if (oldEditor != currentEditor) { oldEditor = currentEditor; if (currentEditor.replace(/\r/, "").length > maxLength) document.forms.quickModForm.message.value = currentEditor.replace(/\r/, "").substring(0, maxLength); currentEditor = document.forms.quickModForm.message.value.replace(/\r/, ""); } setInnerHTML(document.getElementById("editorLeft2"), maxLength - currentEditor.length); } // ]]>-->