From maintainers-request at octave dot org Thu Feb 9 12:38:40 2006 Subject: Re: octave gui & mingw From: Shai Ayal To: Sebastien Loisel Cc: John Swensen , maintainers@octave.org Date: Thu, 9 Feb 2006 20:36:59 +0200 Wow, talk about ambitious goals! Good luck Shai On 2/9/06, Sebastien Loisel wrote: > Hi, > > First off, let me say that the more octave GUI/IDE projects I know about, > the better, so thanks for all the input so far. I would definetly appreciate > being able to see any other code available. > > Second, to introduce myself a bit more usefully, I'm a postdoc at the > University of Geneva in math (scientific computing and pure analysis). I'm > also a good programmer. > > From the replies, I'd like to give a few more details about my goals, and > specifically answer John and Ole. > > I want: > * To edit code in this GUI/IDE. > * To interact with the octave prompt in this GUI/IDE. > * To view plot, zoom, change axes, do animations (viz. > set(gcf,'DoubleBuffer','on')) and so on. > * To export my plots to EPS for inclusion in my papers. > * To plot 2d and 3d. > * To have rich figure handling like subplot, axes and more generally the set > command. > > One of my applications includes viewing an icosahedral grid of the sphere in > 3d with the solution of a PDE color-coded on it. I need to spin the sphere > in real time. > > On 2/9/06, John Swensen wrote: > > experienced, my problems may have been due to that. I tried using the > > QProcess class and redirecting STDIN, STDOUT, and STDERR to talk with an > > instance of Octave. The problem lied in the fact that I couldn't get it > > > > > think the first step would be to design a good interface control > > document (ICD) that defines the data that is passed between the octave > > Ole Jacob Hagen wrote: > > I am planning to make oplot (http://oplot.sf.net) compatible with Qt4, > so Oplot supports Windows natively without any cost for both end user > and developer. :-) > > My intention is simple. QT4 has a text editor, look here for an amazingly > short syntax highlighter: > http://doc.trolltech.com/4.1/richtext-syntaxhighlighter.html. > Furthermore, you can use OpenGL easily: > http://doc.trolltech.com/4.1/opengl-hellogl.html. Given an > OpenGL plotting program, you can easily create PS, EPS and PDF files: > http://www.geuz.org/gl2ps/. Such a GUI/IDE would be portable anywhere octave > and QT4 currently compile. I also like QT4 because, by my standards, it > makes very concise C++ GUI code. > > I would like to stick all these things and octave into a binary, so that > when I plot stuff in octave, I can zoom or spin it and do whatever, just > like in Matlab, and include a reasonable text editor. I really don't think > it would be that much code, with all the tools I enumerated above. > > Maybe communicating with octave via pipes is a great idea, but as John > points out you end up having to design a communication protocol. Also, most > attempts want to reuse gnuplot, which is a great idea, but I don't have the > expertise to go and add to gnuplot the features I want to copy from Matlab. > It's a lot easier for me to implement this stuff from scratch. On the other > hand, if oplot is a QT4 widget that does what I need, then that's one less > thing I have to do. > > Those of you that have struggled with the threading, I am shooting initially > for something much like Matlab. The GUI dies during long computations. That > can be fixed later, maybe when octave becomes threadsafe or maybe before by > adding a giant lock. > > My idea for the plotter is that I would make available in octave three new > functions: a function that draws a Gouraud shaded triangle soup (like > Matlab's patch), Gouraud shaded lines and a function to place text. Okay, > maybe one for setting a clip rectangle and changing the transformation > matrix. Then I would implement all the higher level functionality as .m > files on top of that. Matlab also has widgets and stuff but that can wait. > QT can have widgets and OpenGL in the same window anyway. > > Finally, and perhaps most importantly, I should add that if anyone wants to > channel their enthusiasm towards one of the custom QT4 widgets I need (the > .m file editor, the GL plotter or even the simpler widgets like the prompt, > the lower-left working directory pane, a help widget, etc...) then I would > definetly want to take advantage of such an effort. > > Ok, now I have to go to the grocery store. > > Sébastien Loisel > >