A lot depends on which language you have experience with (I wouldn't
want to start a major project for someone else in a completely new
language). Also, what packages are already available to save you
work? I guess there are good FFT routines already written for
both C++ and Fortran. Fortran is designed with number-crunching in mind
so it makes sense to use that for the calculations if you are happy with
it.
For the GUI, there is a lot more choice. Does "important" mean that the
the interface is very complex, or that it has to look pretty? If you
have not used C++ before (especially if you have not used an object
oriented language and/or C before) then any GUI is going to be
restricted to whatever the "wizard" can generate, without a lot of work
and learning.
There are many languages designed to provide interfaces to
computation-intensive code - Tcl, for example, or Python. These have
graphics toolkits (Tcl is used usually with Tk, python can be used with
Tk or with a range of other packages). Again, it depends a lot on what
you are used to. The advantage of these languages over C++ is that they
are simpler and often interpreted (speed is not so important, while
development time is quicker).
But again, if you have not used any of these then you are better going
with something you do know, if you can interface it to Fortran and it
has a GUI toolkit. GUI programming, except for simple cases, is very
challenging (although this may be a simple case if you are just
displaying results).
Alternatively, how about something like IDL (a maths package/array
manipulation language) or Mathematica? They already integrate
calculations and GUI, and their internal routines are as fast as
anything you are likely to write (the advantage of using Fortran or C++
is for complex programs with many different calculations - if you are
just doing FFTs, then the FFT routine in a maths package should be just
as fast).
Andrew
PS For more general information on languages, and pointers to more
information on the languages I mention above, look at
http://www.andrewcooke.free-online.co.uk/andrew/lang.html
PPS Are you *sure* that software like this does not already exist? From
my own experience I know that astronomers have a wide variety of image
processing software, for example.
Quote:
> Hi,
> I must program a image processing software (Fourier, Wavelets...) and
the
> GUI is very important.
> I've been recommended to use Fortran since it runs faster and doing
the GUI
> with VC++. I thought of using C++ Builder.
> I'd like to have comments on both solutions so that I can choose (and
> argument my choice).
Sent via Deja.com http://www.deja.com/
Before you buy.