Hi all,
I am currently using OpenMap as the basis for a radar maintenance
(non-tactical) display application. I'm using a specialized
LocationLayer to display radar contacts and track gates. Each layer has
its own specialized LocationHandler that receives data from the radar
processor box via the network.
Contacts are displayed as tiny color-coded OMRect objects. Track gates
(bounded regions) are just specialized OMPoly objects. I have modified
my version of the LocationLayer to call update() instead of repaint() so
that new data is drawn without clearing the screen. Each
LocationHandler uses a Swing timer to update the screen about 30 times
per second. It looks pretty cool in spite of the inevitable pauses for
garbage collection, etc.
The user has the ability to clear the screen manually when it becomes
saturated with contacts, but ideally I would like to set a limit on the
number of scans to be displayed at any one time. Then I will actively
erase any contacts older than that limit. Similarly, only the most
recent track gates are valid, so gates from the previous scan need to be
erased to avoid cluttering the display.
Here's my question: how do I erase an OMGraphic without repainting the
entire screen and without disturbing the underlying political map
layer(s)? This display is much too dynamic to be repainted continually.
I have tried bypassing the paint() mechanism and rendering the
OMGraphics manually in XOR mode, which works but has two main drawbacks.
Namely, I can't control colors in XOR mode, and any parts of two
OMGraphics that overlap will negate each other, resulting in a blank spot.
I have considered repainting using a small clipping region around each
OMGraphic, but I assume that would also disturb the underlying layers?
I understand that the way this is often done in X-windows is to declare
two sets of bitplanes. The static background (map) is drawn into the
underlay planes and the dynamic drawing is done in the overlay planes.
Just wondering if anybody has any suggestions for how to achieve the
same effect in Java within the framework of OpenMap...
Sorry for the long post.
Thanks,
George
-- George Uecker george.uecker@dot21rts.com Software Engineer (410) 480-7236 Dot21 Real-Time Systems Inc. (410) 313-7515 fax -- [To unsubscribe to this list send an email to "majdart@bbn.com" with the following text in the BODY of the message "unsubscribe openmap-users"]Received on Fri Dec 28 17:09:35 2001
This archive was generated by hypermail 2.1.8 : Thu May 12 2005 - 07:18:32 EDT