Thanks for the investigation. Report the issue with patch & test case. Or via
pull request and we should be good to go.
In many cases functionality such as this was tested with small data sets for
completeness / correctness and can be revisited now that we work with larger
datasets and an interactive setting.
For most data stores we expect them to handle this natively based in an index -
what datastore were you testing with ?
--
Jody
On Tuesday, 11 December 2012 at 6:59 PM, Fernando González wrote:
> Hi.
>
> In the context of gvtools, we have a basic viewer with selection
> capabilities. We have followed this approach[1] to manage selection
> and as long as there is no selection (empty Set<FeatureId>), rendering
> is ok. However, the bigger the Set<FeatureId> holding the selection
> is, the slower the rendering goes.
>
> I've identified the problem in FidFilterImpl class which checks if a
> FeatureId is contained in the set of Identifiers by iterating through
> all the elements in the set instead of using the Set.contains method,
> which is much faster typically.
>
> Is it a known issue or should I provide some code to reproduce the
> behaviour easily?
>
> The attached patch (just for testing) makes use of Set.contains and
> works much faster. Quite probably there is a reason why Set.contains
> is not used. For example, the patch instantiates a FeatureId, while
> the FidFilterImpl works with Identifier interface.
>
> I wonder if instead of a HashSet it could be possible to use a TreeSet
> with a comparator that is independent of the concrete implementation
> of Identifier.
>
> Do you think this development would be possible/worth? Is there any
> better approach to manage selection rendering?
>
> Best regards.
>
>
> [1]
> http://docs.geotools.org/latest/userguide/tutorial/map/style.html#creating-a-style-based-on-the-selection
> ------------------------------------------------------------------------------
> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
> Remotely access PCs and mobile devices and provide instant support
> Improve your efficiency, and focus on delivering more value-add services
> Discover what IT Professionals Know. Rescue delivers
> http://p.sf.net/sfu/logmein_12329d2d
> _______________________________________________
> GeoTools-Devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>
>
>
>
> Attachments:
> - fid-filter.patch
>
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
GeoTools-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel