[udig-devel] getBounds of selection/filter
Jody Garnett
jgarnett at refractions.net
Wed Mar 26 09:05:20 PDT 2008
I think there is also a FeatureSource.getBounds( Query ) method .... but
I may be wrong on that....checking:
-
http://javadoc.geotools.fr/2.5/org/geotools/data/FeatureSource.html#getBounds(org.geotools.data.Query)
A brief look at the code shows that this technique will return something
*fast* or return *null*, and is used if the data source
has some kind of optimized code it can run. The fall back position is as
Vince outlined below.
Enjoy,
Jody
> I've solved my own problem here:
>
> FeatureSource resource =
> layer.getResource(FeatureSource.class, ProgressManager.instance().get());
> Query query = new DefaultQuery(
> resource.getSchema().getTypeName(), layer.getFilter(),
> new
> String[]{resource.getSchema().getDefaultGeometry().getName()});
> Envelope ebounds = resource.getBounds(query);
> if( ebounds==null ){
> ebounds=resource.getFeatures(query).getBounds();
> }
> bounds = new ReferencedEnvelope(ebounds, crs);
>
> seems to do the job just fine.
>
> Vince.
>
>
> _______________________________________________
> User-friendly Desktop Internet GIS (uDig)
> http://udig.refractions.net
> http://lists.refractions.net/mailman/listinfo/udig-devel
More information about the udig-devel
mailing list