Re: Sharing brushing (DISPLAY.SelectRange) across multiple

  • To: Flaggs, Don
  • Subject: Re: Sharing brushing (DISPLAY.SelectRange) across multiple
  • From: Bill Hibbard [mailto:billh@xxxxxxxxxxxxx]
  • Date: Tue, 26 Oct 2004 18:25:08 -0700
Bill,

Thanks for the tip!  Unlike data, which can be shared between displays,
separate instances of RangeControl need to be maintained for each
display that are thereafter sync'ed when any one is changed.  Sounds
like a plan.  The example code didn't make use of the syncControl()
methods but rather explicitly updated control state.  Wouldn't just
using syncControl() be easier; is there some hidden gotcha?

thanks again...  dlf


-----Original Message-----
Sent: Tuesday, October 26, 2004 4:20 AM
Cc: visad@xxxxxxxxxxxxxxxx
displays


Hi Don,

You can coordinate RangeControls between multiple DisplayImpls.
See visad/rabin/Rain.java for an exmaple of coordinating
ProjectionControls and ColorControls between multiple Displays.
Note that you need to avoid event loops - see the logic with
in_proj in the ControlChanged() method.

Good luck,
Bill

On Mon, 25 Oct 2004, Flaggs, Don wrote:

> Hi all,
>
> I'm putting together an application where I'd like to create multiple
2D/3D scatterplot views of the same data, to include brushing.
Assigning the same data refs to the multiple views works great.  Is
there an easy way of effectively doing the same kind of thing with
SelectRangeWidget(s) or something else such that "brushing" is
automatically reflected in all views?  The VisAD documentation for
SelectRangeWidget currently says "The DisplayRealType of smap ... should
already be added to a Display" which implies that the standard brushing
is display-specific.
>
> thanks in advance...  dlf
>