Hi M. Katz,
Perhaps you could do something like this:
IDL> oSurface = obj_new('IDLgrSurface', dist(30), style=2, color=[255,0,0])
IDL> oAxis0 = obj_new('IDLgrAxis', 0)
IDL> oAxis1 = obj_new('IDLgrAxis', 1)
IDL> oAxis2 = obj_new('IDLgrAxis', 2, location=[0,1])
IDL> oWindow = obj_new('IDLgrWindow', dimensions=[400,400])
IDL> oView = obj_new('IDLexObjView', [oAxis0, oAxis1, oAxis2, oSurface])
IDL> oView->Normalize, oWindow, /adjust_axes
IDL> xobjview, oView, xsize=400, ysize=400
The ability of xobjview to draw IDLexObjView objects is undocumented. The
oView->Normalize, /adjust_axes is undocumented too.
"Why, Reginald, you have little hidden corners!"-Paul Giamatti in the movie
"Duets"
There is a diagram of some of the IDLex classes at www.paulsorenson.com
under the link "XOBJVIEW: Under the Hood" .
-Paul Sorenson
"M. Katz" <MKatz843@onebox.com> wrote in message
news:4a097d6a.0403301100.3feec1f8@posting.google.com...
> Does anyone have a fairly simple, standalone, interactive surface
> viewer widget they'd be willin to share? I don't need all of the fancy
> on-screen options like iTools, just a procedure like this
>
> show_me_the_surface, data, group_leader=group_leader
>
> where data is a 2d array representing z heights.
>
> I just spent the last hour working with iSurface and then IDL's demo
> program d_surfview.pro trying to make a very very simple, interactive
> surface viewer. While these programs are powerful, they don't really
> fit the bill for me.
>
> Once I cut out 3/4 of the extra widgets, buttons, and event-handling
> routines, from d_surfview, I had made it substantially closer to what
> I'm after, but it's still a hack.
>
> I don't need to have the ability to change color tables, set min/max
> values, change to wireframe, . . . any of that. I just want to put up
> a surface in an object window, in a top level widget, with readable
> axes at the edges, and be able to rotate it with something like
> IDLexRotator class, like trackball. (By the way, is IDLexRotator
> undocumented?)
>
> Thanks,
>
> M. Katz
|