comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: GUI in IDL or PV-WAVE
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: GUI in IDL or PV-WAVE [message #68830] Thu, 26 November 2009 01:11
Alain Kattnig is currently offline  Alain Kattnig
Messages: 9
Registered: November 2009
Junior Member
On 25 nov, 09:52, Vroom Buddy <thirstyforb...@googlemail.com> wrote:
> Hi All,
>
> My company want to develop a new Windows application to process
> hydrographic survey data and amongst many other products, we are
> considering IDL and PV-WAVE. Although they both seem to have very good
> built-in functions for data analysis and visualization and a 4GL
> interface to allow expert users to customise their use of the final
> processing software, I get the impression that developing a good
> graphical user interface will be a major chore. A few questions for
> you;
>
> 1. Is it correct that neither IDL nor PV-WAVE have a GUI builder and
> that it all has to be manually coded?

This is true for PV-WAVE, true also for IDL 7, even if a GUI-builder
exists in beta-version, but if you use the older IDL version (6.4),
entirely compatible with IDL 7 and with almost identical
functionalities, you will have the benefit of a simple to use GUI-
builder.
Since I can't be bothered with object-programming, it actually allowed
me to build in a day a GUI around my "straight" scientific
programming. Once the abstruse code has been generated, it is much
easier to add functionalities.


Best of luck



Sorry for the rough english
Re: GUI in IDL or PV-WAVE [message #68831 is a reply to message #68830] Wed, 25 November 2009 09:02 Go to previous message
David Fanning is currently offline  David Fanning
Messages: 11724
Registered: August 2001
Senior Member
John writes:

> Thanks for the quick reply and you are quite correct, I'm not a
> programmer. I have some knowledge of programming from the "good old
> days" but no OO experience. However, I am an expert user of this type
> of software and I will be heavily involved in the design process. My
> programmer colleagues will actually do the spade work and I would like
> to find them a development environment that they are happy to use and
> that produces good results efficiently and quickly.

Yes, this is known in the trade as the "holy grail". :-)

I think you will find IDL somewhere near the top of the pack
when it comes to ease of use and producing results quickly. But,
of course, "results" is a relative term and your mileage may
vary depending upon the skill of the programmer and how well he
or she knows their tools. Producing large and complicated
application programs has never been "quick" or "easy" in my
personal experience, but then I'm still on the holy quest, too.

> One very important feature of the new software that myself and other
> expert users need is a way of customising the application whilst we
> are using it, e.g. via a macro or a scripting language and this has
> helped to prompt our interest in both PV-WAVE and IDL.

It is not clear to me what this means, exactly, but it sounds
ominous. If I were bidding on a job like this, this is the paragraph
that I would underline in red and put three stars in the margin.
I'm not saying it is impossible. I'm just saying I would need to
know a LOT more about what you have in mind.

> Our GUI would need to be quite complicated though, particularly when
> analysing the data. We like to graphically interact with the data and
> would need rubber band rectangles and lasso tools to select data and
> then various other tools to carry out operations on the data. As all
> of our data is time based, we also like to use "data brushing". This
> is where we might have three or four X-Y plots open for viewing with
> one of them in focus for editing. If we highlight data on the main X-Y
> plot between certain times, we would like to see a similar highlight
> automatically appear on the background plots between the same times.
> If this sort of thing can be done relatively easily and can be made to
> look ?sexy? in Windows, then IDL might be the way to go for us.

"Sexy" is easy enough, I guess. (Coyote could help out.) And
communicating between plots or windows is not particularly
difficult. I've done that any number of times in building
applications like this. It will help, tremendously, if you
write your IDL application using objects, however. Otherwise,
you will quickly become nearly overwhelmed keeping track of
things. It will help a lot if you keep program intelligence
de-centralized.

Since I've written these kinds of programs over and over,
I have developed an object library, named Catalyst, to help
me build these kinds of applications. (We actually thought
we had found the holy grail with this library, until we realized
we would have to draw a map (i.e., write documentation) if we
wanted others to find it, too. That discouraged us.)

In our hands, the Catalyst Library does allow us to write
applications "quickly and efficiently". Or, at least in about
half the time it used to take us, since so much of the infrastructure
of the program is built in. For example, object to object
communication. One object simply registers an interest in another
object's actions. When that action is performed, the interested
object is notified. This would make it, for example, trivial
to implement the highlighting action you wish to see in your
program. The library is available for free and is well documented
internally. What is missing is a User's Guide that might provide
a broad overall perspective.

But I think people have been able to look at the example programs
that come with the library and pretty quickly figure out how to
make it work. It helps, obviously, to know both IDL and object
programming. Anyway, it might be something to look at while you
are doing your evaluation.

http://www.dfanning.com/tips.html#Catalyst

Cheers,

David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
Re: GUI in IDL or PV-WAVE [message #68832 is a reply to message #68831] Wed, 25 November 2009 08:27 Go to previous message
Doug Edmundson is currently offline  Doug Edmundson
Messages: 58
Registered: November 2005
Member
Hi,

Thanks for taking a look at IDL. Before answering, I should mention
that I work for ITT VIS. Having said that, I pretty much agree with
what Dr. Fanning wrote.

> My company want to develop a new Windows application to process
> hydrographic survey data and amongst many other products, we are
> considering IDL and PV-WAVE. Although they both seem to have very good
> built-in functions for data analysis and visualization and a 4GL
> interface to allow expert users to customise their use of the final
> processing software, I get the impression that developing a good
> graphical user interface will be a major chore. A few questions for
> you;
>
> 1. Is it correct that neither IDL nor PV-WAVE have a GUI builder and
> that it all has to be manually coded?

This is correct, but like David Fanning pointed out, the programmer
actually gains a lot of control. There are excellent resources to help
write IDL GUI apps, but widget programming is pretty easy (at least when
compared to scientific programming). For example, creating a shell
with a button looks something like:

topLevelBase = widget_base( /row )
myButton = widget_button( topLevelBase, value = 'Push Me' )
widget_control, topLevelBase, /realize

The "row" keyword specifies a layout. The "value" keyword specifies the
text for the button. Event handling routines can be specified with
another keyword. That's pretty much the gist of it. In addition to
IDL's manuals, David Fanning, Ronn Kling, Liam Gumley and others have
books and web sites which can really help when things get more complicated.

> 2. I've seen PV-WAVE in action on a Windows XP PC but it looked like
> an old-fashioned Motif application with no way of resizing the Window.
> Is this still the case in the latest version? What about IDL, does it
> look pretty similar?

IDL will look good on Windows. On Mac, Linux and Solaris, the widgets
are Motif-based. Regardless, Windows and UNIX widget apps will behave
very similarly, with the ability to resize windows and do other normal,
expected, UI "things".

> 3. Is there a recommended way of getting a modern Windows GUI with IDL
> or PV-WAVE doing the heavy work in the background?

You have a number of options here. Simply put, you could write your UI
in Java and then make use of IDL as a library to do the
number-crunching. There's also a COM bridge and "callable" IDL.

> My apologies in advance if these questions are a bit simple but I've
> tried to find out the answers on the various websites and got nowhere.

Good questions. If you have more, we can talk off-line (I'm a developer
and not trained in the art of marketing).

Cheers,
Doug
Re: GUI in IDL or PV-WAVE [message #68833 is a reply to message #68832] Wed, 25 November 2009 08:04 Go to previous message
Vroom Buddy is currently offline  Vroom Buddy
Messages: 2
Registered: November 2009
Junior Member
Hi David,

Thanks for the quick reply and you are quite correct, I'm not a
programmer. I have some knowledge of programming from the "good old
days" but no OO experience. However, I am an expert user of this type
of software and I will be heavily involved in the design process. My
programmer colleagues will actually do the spade work and I would like
to find them a development environment that they are happy to use and
that produces good results efficiently and quickly.

One very important feature of the new software that myself and other
expert users need is a way of customising the application whilst we
are using it, e.g. via a macro or a scripting language and this has
helped to prompt our interest in both PV-WAVE and IDL.

Our GUI would need to be quite complicated though, particularly when
analysing the data. We like to graphically interact with the data and
would need rubber band rectangles and lasso tools to select data and
then various other tools to carry out operations on the data. As all
of our data is time based, we also like to use "data brushing". This
is where we might have three or four X-Y plots open for viewing with
one of them in focus for editing. If we highlight data on the main X-Y
plot between certain times, we would like to see a similar highlight
automatically appear on the background plots between the same times.
If this sort of thing can be done relatively easily and can be made to
look “sexy” in Windows, then IDL might be the way to go for us.

Regards,

John
Re: GUI in IDL or PV-WAVE [message #68834 is a reply to message #68833] Wed, 25 November 2009 07:12 Go to previous message
David Fanning is currently offline  David Fanning
Messages: 11724
Registered: August 2001
Senior Member
Vroom Buddy writes:

> My company want to develop a new Windows application to process
> hydrographic survey data and amongst many other products, we are
> considering IDL and PV-WAVE. Although they both seem to have very good
> built-in functions for data analysis and visualization and a 4GL
> interface to allow expert users to customise their use of the final
> processing software, I get the impression that developing a good
> graphical user interface will be a major chore. A few questions for
> you;
>
> 1. Is it correct that neither IDL nor PV-WAVE have a GUI builder and
> that it all has to be manually coded?

Yes, but this is not particularly hard and has the unambiguous
benefit of the programmer actually understanding the code he
or she has written. :-)

> 2. I've seen PV-WAVE in action on a Windows XP PC but it looked like
> an old-fashioned Motif application with no way of resizing the Window.
> Is this still the case in the latest version? What about IDL, does it
> look pretty similar?

I don't know about PV-WAVE, but you will not be disappointed in
the way things look if you build a Windows application in IDL.
It will look exactly like any other Windows application you have
on your machine. (A UNIX application is another story, entirely.)

> 3. Is there a recommended way of getting a modern Windows GUI with IDL
> or PV-WAVE doing the heavy work in the background?

You're not a programmer, are you? ;-)

Cheers,

David


--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Re: Regression with NaN's
Next Topic: Larger arrays or more dimensions?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 15:23:31 PDT 2025

Total time taken to generate the page: 0.00558 seconds