I need to ask another question about JUMP's/OpenJUMP's rendering system.

Does JUMP/OpenJUMP track the features currently rendered on the
LayerViewPanel? Or does it convert all geometries from a visible layer
into Java2D Shape objects, and then clip those shapes for rendering to
the LayerViewPanel.

I am curious about this because the design will impact my coordinate
selection tools. This will be especially true for large layers. If you
think about it, the user will typically be using the coordinate
selectors when they are zoomed in on a small scale. At this type of
scale only a few of the features in a layer are displayed. If I can do
my searching throught just that set, instead of all the features in
the entire layer, snapping will be much quicker. (Even with a
spatially indexed FeatureCollection this method will be quicker.)

If I can't access a list of currently rendered Features from
JUMP's/OpenJUMP's exisitng rendering framework, where would I
logically add this hook to the code? I'm not looking for anything real
specific, just the classes I should examine more closely.

On a related note, lets say for a moment that JUMP/OpenJUMP does
convert all geometries from a visible layer into Java Shape objects
before clipping those shapes for rendering to the LayerViewPanel.
Would it be quicker to select just the geometries that will be visible
on the LayerViewPanel, and then to convert only those particular
geometries to Java2D Shapes?

I'm thinking the addition of a simple spatial index could be used to
implement this change in the rendering system. That might give us a
performance boost not only for my coordinate selectors, but for
rendering in general.

I don't have an extensive knowledge of JUMP's/OpenJUMP's renderer, and
I realize rendering is complex, so I apologize in advance if my
questions overlook something obvious. I'm just trying to think about
how I can improve the program as I work on my little enhancements.

The Sunburned Surveyor

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to