Re: Displaying three images simultaneously (using Object Graphics) [message #46228 is a reply to message #46227] |
Tue, 08 November 2005 10:13   |
Karl Schultz
Messages: 341 Registered: October 1999
|
Senior Member |
|
|
On Mon, 07 Nov 2005 17:07:45 -0800, Victor wrote:
<snip>
> Also,
>> myModel = Obj_New('IDLgrModel')
>> myModel->Add, [myModel_1, myModel_2, myModel_3], POSITION=[10,20,30]*B
>> XOBJVIEW,myModel,TITLE='All 3 images'
> Works, but doesn't give the expected results (just overlays the three
> images, Position keyword seems to have no effect whatso ever)
This approach is the closest you came to the correct way of doing it.
I'm not sure why, but it seems that you have developed the idea
that the POSITION keyword parameter has something to do with spatial
locations. POSITION for IDLgrModel and IDL_Container refers to the
ordering of objects in a container. For example, POSITION=5 means to
insert the object into the container in the 6th position (POSITION is
zero-based). That is, the object will have 5 objects that preceed it in
container order after it is inserted. POSITION is an index, not a spatial
coordinate.
There are a number of ways to change an image's displayed location. The
IDLgrImage LOCATION property is one way that was mentioned by another
poster.
Since you have a model for each image you can also do:
myModel = Obj_New('IDLgrModel')
myModel->Add, [myModel_1, myModel_2, myModel_3]
myModel_1->Translate, 10, 0, 0
myModel_2->Translate, 20, 0, 0
myModel_3->Translate, 30, 0, 0
XOBJVIEW, myModel, TITLE='All 3 images'
Substitute offsets that make sense for your image sizes.
Karl
|
|
|