Re: Coyote's BIG Idea [message #74510] |
Mon, 24 January 2011 10:43  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Gray writes:
> Hey David, this may not be a question you can answer, but I'd like to
> know it: what can NG do that CG (coyote graphics) can't, and vice
> versa?
You know, Andrew Cool was making animated time-series in an
FSC_Window last night. This was something I hadn't anticipated
wanting to do. It took about 15 minutes to modify FSC_Window
to accommodate Andrew's request for a "command delay" and
a LoadCMD keyword that would just load the commands in the
window without executing all of the commands every time a
command was added.
Can you even imagine how much time it would take to modify
a function graphics command to do something different? I think
this is a several orders of magnitude difference in the two systems.
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
|
|
|
Re: Coyote's BIG Idea [message #74512 is a reply to message #74510] |
Mon, 24 January 2011 10:30   |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Gray writes:
> Hey David, this may not be a question you can answer, but I'd like to
> know it: what can NG do that CG (coyote graphics) can't, and vice
> versa?
Well, that's a good question. I guess we are still trying
to figure that out. :-)
I'm not extremely familiar with the new function graphics
routines, because I can't keep IDL 8 running on my computer
(Windows 7, 64-bit OS). But I would say one thing Coyote Graphics
can't do yet (but probably because I haven't gotten around to
trying) is save the graphics commands in a display window and
restore them. In fact, the graphics "commands" are objects in
the FSC_Window display window, so I suspect I can do this quite
easily when I get around to it.
One thing I know for sure the new function graphics can't do
that Coyote Graphics can is create a new type of graphics command
in a widget program. My challenge to demonstrate how one would
build a "window-level" program with function graphics goes
unanswered to this day. I strongly suspect this is because it can't
be done. At least not by mortals. Maybe someone at ITTVIS could
figure it out. But, I don't think, frankly, it is possible to
use function graphics in a widget program that requires any
kind of user interaction with the graphics window. So no
XStretch, no WindowImage, no FSC_Zplot, etc, etc.
The reason I think function graphics is limited in this area
is that the graphics functions are very high level routines.
Coyote Graphics routines are much lower-level. You can build
things with Coyote Graphics, while you have to settle for what's
already been built with function graphics.
Function graphics allows you to set graphical "properties"
with property sheets. I have something similar in mind, but
haven't implemented it yet. I think Coyote Graphics at the moment
is closer to how people have traditionally worked in IDL, rather
than introducing a whole new way of working and interacting with
graphics programs. That is to say, they work as well from the
command line as they do in a program. Maybe this is a wash.
I personally think function graphics commands, under the hood,
are so complicated that they will never be bug free. I think there
is a very good chance that every time you try to fix something,
you will break something else. Coyote Graphics are probably more
complicated than I thought they would be, but mostly because I have
tried to preserve as much backward compatibility with traditional
graphics commands as possible. If I had decided to start from scratch,
they would be very, very simple.
I don't know. Maybe other people have some ideas. I suppose it
is no secret that I just consider it a challenge to build IDL 8 like
programs for IDL 6 like people. Maybe no one will use the programs
I write. In truth, that's not something I lose a lot of sleep
thinking about. It's fun, it's challenging, and I am blown
away by what is possible with old, familiar tools. Good enough
for me. :-)
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
|
|
|
Re: Coyote's BIG Idea [message #74514 is a reply to message #74512] |
Mon, 24 January 2011 09:34   |
Gray
Messages: 253 Registered: February 2010
|
Senior Member |
|
|
On Jan 24, 12:02 pm, David Fanning <n...@dfanning.com> wrote:
> Gianguido Cianci writes:
>> 25 years putting commas after every word you type and still excited
>> about it. That's what's cool!
>
> Well, when you put it that way... :-)
>
> You know what is really odd? I'm on the verge of financial
> bankruptcy. I haven't made a cent in four months. I've written
> a book that I'm not sure anyone is going to want to read.
> And yet, the past four months have been, without a doubt,
> the most satisfying four months of my professional career.
> I've written the best programs I have ever written in my
> life, and now I've felt the excitement of a Big Idea.
>
> I don't know what is going to happen in the future, but
> I'm pretty sure when I'm laying on my death bed, reviewing
> my life, I'm not going to regret the past four months. :-)
>
>> Thanks for all you have contributed to the IDL community!
>
> Thanks for being the kind of community I can contribute to.
> This place really is the best.
>
> Cheers,
>
> David
>
> --
> David Fanning, Ph.D.
> Fanning Software Consulting, Inc.
> Coyote's Guide to IDL Programming:http://www.idlcoyote.com/
> Sepore ma de ni thui. ("Perhaps thou speakest truth.")
Hey David, this may not be a question you can answer, but I'd like to
know it: what can NG do that CG (coyote graphics) can't, and vice
versa?
|
|
|
Re: Coyote's BIG Idea [message #74515 is a reply to message #74514] |
Mon, 24 January 2011 09:02   |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Gianguido Cianci writes:
> 25 years putting commas after every word you type and still excited
> about it. That's what's cool!
Well, when you put it that way... :-)
You know what is really odd? I'm on the verge of financial
bankruptcy. I haven't made a cent in four months. I've written
a book that I'm not sure anyone is going to want to read.
And yet, the past four months have been, without a doubt,
the most satisfying four months of my professional career.
I've written the best programs I have ever written in my
life, and now I've felt the excitement of a Big Idea.
I don't know what is going to happen in the future, but
I'm pretty sure when I'm laying on my death bed, reviewing
my life, I'm not going to regret the past four months. :-)
> Thanks for all you have contributed to the IDL community!
Thanks for being the kind of community I can contribute to.
This place really is the best.
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
|
|
|
|
Re: Coyote's BIG Idea [message #74517 is a reply to message #74516] |
Mon, 24 January 2011 08:31   |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
David Fanning writes:
> This is friggin' UN-BE-LEAVE-A-BLE!
OK, I have the modified programs ready for you to try out.
There are LOTS of them, so you need a new Coyote Library
download.
Here is how it works. FSC_Window can be used pretty
much like the Window command:
IDL> FSC_Window
Produces a blank window. If you want to draw something
in that window, you have to set the /WINDOW keyword on
any Coyote Graphics routine. This will cause the
FSC_Window to add or replace the command, as necessary,
in its command list and display the graphic.
; Display a line plot in the window.
FSC_Plot, Loaddata(1), /Window
; Now display a filled contour plot with overlay and colorbar.
LoadCT, 33
data = LoadData(2)
FSC_Contour, data, /Fill, Position=[0.1,0.1,0.9,0.75], /Window
FSC_Contour, LoadData(2), /Overplot, COLOR='gray', /Window
FSC_Colorbar, RANGE=[Min(data), Max(data)], /Window
; Now display a surface.
FSC_Surf, data, /Shaded, /Elevation, /Window
I'm working on a configuration routine so that you can globally
configure the Coyote Graphics commands to go into normal graphics
windows or into FSC_Window graphics windows and don't have to set
the WINDOW keyword every time.
Now create several windows.
FSC_Window, WTitle='Window 1'
FSC_Window, WTitle='Window 2'
FSC_Window, WTitle='Window 3'
Gather information about all the FSC windows on the display.
winIDs = FSC_QueryWin(TITLE=titles, COUNT=count)
FOR j=0,count-1 DO Print, winIDs[j], ' ', titles[j]
Select the window entitled "Window 1". You can select on
window index number, title, widget ID, or object reference.
Your choice with different keywords.
FSC_WSet, 'Window 1', /TITLE
Put a plot in this window.
FSC_Plot, Loaddata(1), /Window
Select another window, put a contour in there.
FSC_WSet, 'Window 2', /TITLE
FSC_Contour, data, /Fill, Position=[0.1,0.1,0.9,0.75], /Window
FSC_Contour, LoadData(2), /Overplot, COLOR='gray', /Window
FSC_Colorbar, RANGE=[Min(data), Max(data)], /Window
Select another window, put a surface in there.
FSC_WSet, 'Window 3', /TITLE
FSC_Surf, data, /Shaded, /Elevation, /Window
All windows resizeable. All windows can make PostScript files.
All windows can produce fantastic looking raster image output
if ImageMagick is installed.
UN-FRIGGIN-B-LEAVE-A-BLE!!!
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
|
|
|
Re: Coyote's BIG Idea [message #74586 is a reply to message #74517] |
Tue, 25 January 2011 04:39   |
Jeremy Bailin
Messages: 618 Registered: April 2008
|
Senior Member |
|
|
On Jan 24, 11:31 am, David Fanning <n...@dfanning.com> wrote:
> David Fanning writes:
>> This is friggin' UN-BE-LEAVE-A-BLE!
>
> OK, I have the modified programs ready for you to try out.
> There are LOTS of them, so you need a new Coyote Library
> download.
>
> Here is how it works. FSC_Window can be used pretty
> much like the Window command:
>
> IDL> FSC_Window
>
> Produces a blank window. If you want to draw something
> in that window, you have to set the /WINDOW keyword on
> any Coyote Graphics routine. This will cause the
> FSC_Window to add or replace the command, as necessary,
> in its command list and display the graphic.
>
> ; Display a line plot in the window.
> FSC_Plot, Loaddata(1), /Window
>
> ; Now display a filled contour plot with overlay and colorbar.
> LoadCT, 33
> data = LoadData(2)
> FSC_Contour, data, /Fill, Position=[0.1,0.1,0.9,0.75], /Window
> FSC_Contour, LoadData(2), /Overplot, COLOR='gray', /Window
> FSC_Colorbar, RANGE=[Min(data), Max(data)], /Window
>
> ; Now display a surface.
> FSC_Surf, data, /Shaded, /Elevation, /Window
>
> I'm working on a configuration routine so that you can globally
> configure the Coyote Graphics commands to go into normal graphics
> windows or into FSC_Window graphics windows and don't have to set
> the WINDOW keyword every time.
>
> Now create several windows.
>
> FSC_Window, WTitle='Window 1'
> FSC_Window, WTitle='Window 2'
> FSC_Window, WTitle='Window 3'
>
> Gather information about all the FSC windows on the display.
>
> winIDs = FSC_QueryWin(TITLE=titles, COUNT=count)
> FOR j=0,count-1 DO Print, winIDs[j], ' ', titles[j]
>
> Select the window entitled "Window 1". You can select on
> window index number, title, widget ID, or object reference.
> Your choice with different keywords.
>
> FSC_WSet, 'Window 1', /TITLE
>
> Put a plot in this window.
>
> FSC_Plot, Loaddata(1), /Window
>
> Select another window, put a contour in there.
>
> FSC_WSet, 'Window 2', /TITLE
> FSC_Contour, data, /Fill, Position=[0.1,0.1,0.9,0.75], /Window
> FSC_Contour, LoadData(2), /Overplot, COLOR='gray', /Window
> FSC_Colorbar, RANGE=[Min(data), Max(data)], /Window
>
> Select another window, put a surface in there.
>
> FSC_WSet, 'Window 3', /TITLE
> FSC_Surf, data, /Shaded, /Elevation, /Window
>
> All windows resizeable. All windows can make PostScript files.
> All windows can produce fantastic looking raster image output
> if ImageMagick is installed.
>
> UN-FRIGGIN-B-LEAVE-A-BLE!!!
>
> Cheers,
>
> David
>
> --
> David Fanning, Ph.D.
> Fanning Software Consulting, Inc.
> Coyote's Guide to IDL Programming:http://www.idlcoyote.com/
> Sepore ma de ni thui. ("Perhaps thou speakest truth.")
Well, I know what I'm going to spend today trying out. :-)=
-Jeremy.
|
|
|
Re: Coyote's BIG Idea [message #74653 is a reply to message #74515] |
Tue, 25 January 2011 17:23  |
kisCA
Messages: 78 Registered: January 2011
|
Member |
|
|
Do you know that you are going to make IDL almost as easy to use as
Matlab ?!!
And for free...You are just amazing...
As far as huge research community (NASA, CNRS) are concerned by IDL,
you should ask for sponsorship and/or teaching class to make. No doubt
that, with your sense of teachings, will be a success.
Can't stand to have this book !
PS: Did you think about any translation in French ? :-)
|
|
|