Package org.geotools.data.crs
Class ReprojectFeatureResults
Object
AbstractFeatureCollection
ReprojectFeatureResults
- All Implemented Interfaces:
SimpleFeatureCollection
,FeatureCollection<SimpleFeatureType,
SimpleFeature>
ReprojectFeatureReader provides a reprojection for FeatureTypes.
ReprojectFeatureResults is a wrapper used to reproject GeometryAttributes to a user supplied CoordinateReferenceSystem from the original CoordinateReferenceSystem supplied by the original FeatureResults.
Example Use:
ReprojectFeatureResults results =
new ReprojectFeatureResults( originalResults, reprojectCS );
CoordinateReferenceSystem originalCS =
originalResults.getFeatureType().getDefaultGeometry().getCoordinateSystem();
CoordinateReferenceSystem newCS =
results.getFeatureType().getDefaultGeometry().getCoordinateSystem();
assertEquals( reprojectCS, newCS );
- Author:
- aaime, $Author: jive $ (last modification)
-
Field Summary
Fields inherited from class AbstractFeatureCollection
id, schema
-
Constructor Summary
ConstructorsConstructorDescriptionReprojectFeatureResults
(FeatureCollection<SimpleFeatureType, SimpleFeature> results, CoordinateReferenceSystem destinationCS) Creates a new reprojecting feature results -
Method Summary
Modifier and TypeMethodDescriptionvoid
accepts
(FeatureVisitor visitor, ProgressListener progress) Visit the contents of a feature collection.protected boolean
canDelegate
(FeatureVisitor visitor) void
closeIterator
(Iterator close) This method computes reprojected bounds the hard way, but computing them feature by feature.Returns the feature results wrapped by this reprojecting feature resultsFactory method used to open an iterator over collection contents for use byAbstractFeatureCollection.iterator()
andAbstractFeatureCollection.features()
.int
size()
Returns the number of elements in this collection.Methods inherited from class AbstractFeatureCollection
contains, containsAll, features, getID, getSchema, isEmpty, iterator, sort, subCollection, toArray, toArray
-
Constructor Details
-
ReprojectFeatureResults
public ReprojectFeatureResults(FeatureCollection<SimpleFeatureType, SimpleFeature> results, CoordinateReferenceSystem destinationCS) throws IOException, SchemaException, TransformException, OperationNotFoundException, NoSuchElementException, FactoryExceptionCreates a new reprojecting feature results
-
-
Method Details
-
openIterator
Description copied from class:AbstractFeatureCollection
Factory method used to open an iterator over collection contents for use byAbstractFeatureCollection.iterator()
andAbstractFeatureCollection.features()
.If you return an instance of FeatureIterator some effort is taken to call the
FeatureIterator.close()
internally, however we cannot offer any assurance that client code usingAbstractFeatureCollection.iterator()
will perform the same check.- Specified by:
openIterator
in classAbstractFeatureCollection
- Returns:
- Iterator over collection contents
-
closeIterator
-
size
public int size()Description copied from class:AbstractFeatureCollection
Returns the number of elements in this collection.- Specified by:
size
in interfaceFeatureCollection<SimpleFeatureType,
SimpleFeature> - Specified by:
size
in classAbstractFeatureCollection
- Returns:
- Number of items, or Interger.MAX_VALUE
- See Also:
-
getBounds
This method computes reprojected bounds the hard way, but computing them feature by feature. This method could be faster if computed the reprojected bounds by reprojecting the original feature bounds a Shape object, thus getting the true shape of the reprojected envelope, and then computing the minumum and maximum coordinates of that new shape. The result would not a true representation of the new bounds, but it would be guaranteed to be larger that the true representation.- Specified by:
getBounds
in interfaceFeatureCollection<SimpleFeatureType,
SimpleFeature> - Specified by:
getBounds
in classAbstractFeatureCollection
- Returns:
- An Envelope containing the total bounds of this collection.
- See Also:
-
org.geotools.data.FeatureResults#getBounds()
-
getOrigin
Returns the feature results wrapped by this reprojecting feature results -
accepts
Description copied from interface:FeatureCollection
Visit the contents of a feature collection.The order of traversal is dependent on the FeatureCollection implementation; some collections are able to make efficient use of an internal index in order to quickly visit features located in the same region.
- Specified by:
accepts
in interfaceFeatureCollection<SimpleFeatureType,
SimpleFeature> - Overrides:
accepts
in classAbstractFeatureCollection
- Parameters:
visitor
- Closure applied to each feature in turn.progress
- Used to report progress, may be used to interrupt the operation- Throws:
IOException
-
canDelegate
-