Package org.esa.snap.core.util
Class FeatureUtils
java.lang.Object
org.esa.snap.core.util.FeatureUtils
Unstable API. Use at own risk.
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic org.geotools.feature.DefaultFeatureCollection
clipCollection
(org.geotools.feature.FeatureCollection<org.opengis.feature.simple.SimpleFeatureType, org.opengis.feature.simple.SimpleFeature> sourceCollection, org.opengis.referencing.crs.CoordinateReferenceSystem defaultSourceCrs, org.locationtech.jts.geom.Geometry clipGeometry, org.opengis.referencing.crs.CoordinateReferenceSystem clipCrs, String targetID, org.opengis.referencing.crs.CoordinateReferenceSystem targetCrs, ProgressMonitor pm) Clips the givensourceCollection
against theclipGeometry
and reprojects the clipped features to the targetCrs.static org.geotools.feature.DefaultFeatureCollection
clipFeatureCollectionToProductBounds
(org.geotools.feature.FeatureCollection<org.opengis.feature.simple.SimpleFeatureType, org.opengis.feature.simple.SimpleFeature> featureCollection, Product product, FeatureUtils.FeatureCrsProvider crsProvider, ProgressMonitor pm) static org.geotools.feature.DefaultFeatureCollection
createFeatureCollection
(URL url, org.opengis.referencing.crs.CoordinateReferenceSystem targetCrs, org.locationtech.jts.geom.Geometry clipGeometry) static String
createFeatureId
(int base) static String
createFeatureTypeName
(String defaultGeometry) static org.locationtech.jts.geom.Geometry
createGeoBoundaryPolygon
(Product product) static org.geotools.data.FeatureSource
<org.opengis.feature.simple.SimpleFeatureType, org.opengis.feature.simple.SimpleFeature> getFeatureSource
(URL url) static org.geotools.geometry.jts.GeometryCoordinateSequenceTransformer
getTransform
(org.opengis.referencing.crs.CoordinateReferenceSystem sourceCrs, org.opengis.referencing.crs.CoordinateReferenceSystem targetCrs) static org.geotools.feature.FeatureCollection
<org.opengis.feature.simple.SimpleFeatureType, org.opengis.feature.simple.SimpleFeature> loadFeatureCollectionFromShapefile
(File shapefile) static org.geotools.feature.DefaultFeatureCollection
loadShapefileForProduct
(File file, Product product, FeatureUtils.FeatureCrsProvider crsProvider, ProgressMonitor pm)
-
Constructor Details
-
FeatureUtils
public FeatureUtils()
-
-
Method Details
-
createFeatureCollection
public static org.geotools.feature.DefaultFeatureCollection createFeatureCollection(URL url, org.opengis.referencing.crs.CoordinateReferenceSystem targetCrs, org.locationtech.jts.geom.Geometry clipGeometry) throws IOException - Throws:
IOException
-
getFeatureSource
public static org.geotools.data.FeatureSource<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> getFeatureSource(URL url) throws IOException - Throws:
IOException
-
loadShapefileForProduct
public static org.geotools.feature.DefaultFeatureCollection loadShapefileForProduct(File file, Product product, FeatureUtils.FeatureCrsProvider crsProvider, ProgressMonitor pm) throws IOException - Throws:
IOException
-
clipFeatureCollectionToProductBounds
public static org.geotools.feature.DefaultFeatureCollection clipFeatureCollectionToProductBounds(org.geotools.feature.FeatureCollection<org.opengis.feature.simple.SimpleFeatureType, org.opengis.feature.simple.SimpleFeature> featureCollection, Product product, FeatureUtils.FeatureCrsProvider crsProvider, ProgressMonitor pm) -
loadFeatureCollectionFromShapefile
public static org.geotools.feature.FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> loadFeatureCollectionFromShapefile(File shapefile) throws IOException - Throws:
IOException
-
createFeatureTypeName
-
createFeatureId
-
clipCollection
public static org.geotools.feature.DefaultFeatureCollection clipCollection(org.geotools.feature.FeatureCollection<org.opengis.feature.simple.SimpleFeatureType, org.opengis.feature.simple.SimpleFeature> sourceCollection, org.opengis.referencing.crs.CoordinateReferenceSystem defaultSourceCrs, org.locationtech.jts.geom.Geometry clipGeometry, org.opengis.referencing.crs.CoordinateReferenceSystem clipCrs, String targetID, org.opengis.referencing.crs.CoordinateReferenceSystem targetCrs, ProgressMonitor pm) Clips the givensourceCollection
against theclipGeometry
and reprojects the clipped features to the targetCrs.- Parameters:
sourceCollection
- the feature collection to be clipped and reprojected. If it does not have an associated CRS, the one specified bydefaultSourceCrs
is used.defaultSourceCrs
- ifsourceCollection
does not have an associated CRS, this one is used.clipGeometry
- the geometry used for clippingclipCrs
- the CRS of theclipGeometry
targetID
- the ID of the resultingFeatureCollection
. Ifnull
the ID of the sourceCollection is used.targetCrs
- the CRS theFeatureCollection
is reprojected to. Ifnull
no reprojection is applied.- Returns:
- the clipped and possibly reprojected
FeatureCollection
- Throws:
IllegalStateException
- if thesourceCollection
has no associated CRS anddefaultSourceCrs
isnull
-
getTransform
public static org.geotools.geometry.jts.GeometryCoordinateSequenceTransformer getTransform(org.opengis.referencing.crs.CoordinateReferenceSystem sourceCrs, org.opengis.referencing.crs.CoordinateReferenceSystem targetCrs) -
createGeoBoundaryPolygon
-