Re: Isurface, inverting the axis without changing default lighting direction [message #70787 is a reply to message #70727] |
Wed, 05 May 2010 12:38   |
penteado
Messages: 866 Registered: February 2018
|
Senior Member Administrator |
|
|
On May 5, 3:24 pm, "Kenneth P. Bowman" <k-bow...@null.edu> wrote:
> In article
> < f460e955-39e9-40d4-be31-0beb89b53...@u20g2000pru.googlegroup s.com >,
> cameron bowles <cameronbowle...@gmail.com> wrote:
>
>> For anyone reading this, I ended up just defininn my "lights_id"
>> idebntifier to be that of Light_1 using this line of code in place of
>> the code in my second post;
>
>> lights_id = itool_obj -> FindIdentifiers('*LIGHT_1', /VISUALIZATIONS)
>
>> it now works a treat and looks good to boot.
>
>> Thanks again Ken and PP.
>
> I just want to make clear that this does not mean that I
> actually understand anything about how the iTools work. ;-)
Yes, they are a bit complicated. As far as I know (somebody please
correct this if I am wrong), the only book on it is the iTool
Developer's Guide, in IDL's help system.
In this particular case, the difference between the object with id
(...)/LIGHTS and the other two (with (...)/LIGHTS/LIGHT and (...)/
LIGHTS/LIGHT_1) is that (...)/LIGHTS is an _IDLITVISUALIZATION, which
is there as a container for the lights, to keep all the objects in a
hierarchy. The ambient and directional lights are IDLITVISLIGHT
objects, which are the actual lights. If you ask one of these two for
their parent, you get the object with the (...)/LIGHTS id:
IDL> light_1=ot->getbyidentifier('/TOOLS/SURFACE TOOL/WINDOW/VIEW_1/
VISUALIZATION LAYER/LIGHTS/LIGHT_1')
IDL> lights=ot->getbyidentifier('/TOOLS/SURFACE TOOL/WINDOW/VIEW_1/
VISUALIZATION LAYER/LIGHTS')
IDL> light_1->getproperty,parent=par & print, par eq lights
1
IDL> print,lights->findidentifiers()
/TOOLS/SURFACE TOOL/WINDOW/VIEW_1/VISUALIZATION LAYER/LIGHTS/LIGHT
/TOOLS/SURFACE TOOL/WINDOW/VIEW_1/VISUALIZATION LAYER/LIGHTS/LIGHT_1
IDL> help,lights
LIGHTS OBJREF = <ObjHeapVar18919(_IDLITVISUALIZATION)>
IDL> help,light_1
LIGHT_1 OBJREF = <ObjHeapVar19107(IDLITVISLIGHT)>
|
|
|