Re: selecting model objects [message #20789 is a reply to message #20788] |
Wed, 26 July 2000 00:00   |
Rick Towler
Messages: 821 Registered: August 1998
|
Senior Member |
|
|
O.K. Mystery is solved.
When you set the /select_target keyword on a model the window->select
method will only return that models obj reference. If the model (the
parent) contains other models with their /select_target keywords set
selecting >anything< will return only the parent models obj reference.
This makes sense, too bad it isn't thoroughly documented.
My problem will be solved by adding another model that doesn't have the
/select_target keyword set and sticking everything in that.
mapModel=obj_new('idlgrmodel', /select_target)
drifterModel1=obj_new('idlgrmodel', /select_target)
drifterModeln=obj_new('idlgrmodel', /select_target)
topModel=obj_new('idlgrmodel')
topmodel->add, [mapModel,drifterModel1,drifterModeln]
now I can translate/scale topModel and still select the child models
within it.
-Rick
Rick Towler wrote:
>
> Hi all,
>
> I have a base model (a map) that contains other models (geographic
> data). I need to select data within the map using the IDLgrWindow
> Select method. Right now I am only getting the base model returned.
>
> object heirarchy is: [data_model]->[map_model]->[oView]->[oWindow]
>
> ; my select code
> item = oWindow->Select(oView, [event.x, event.y])
>
> item contains the reference to map_model only.
>
> A key point is that I need to anchor the geographic data to the map and
> I need to be able to translate and scale the map. Because of this I
> haven't been able to add the data objects directly to the view since
> each of the objects would translate/scale independently and the
> geographic data would be dereferenced from the underlying map.
>
> is it possible to select a model (or atom) that is contained in another
> model that is contained in a view?
>
> If not, is there a way to "join" 2 or more models so when translating or
> scaling they behave as 1?
>
> thanks!
>
> -Rick Towler
|
|
|