我正在尝试创建一个org.opengis.filter.Filter
以查找特定几何图形中的特征。创建这个工厂的代码是:
public static Filter createPartiallyContainedFilter(final Geometry area) {
return CommonFactoryFinder.getFilterFactory2(GeoTools.getDefaultHints()).dwithin(
"geometry", area, 40, "centimeter");
}
我遇到的问题是我不知道如何创建几何对象。创建过滤器的方法需要一个类型为 的几何对象org.opengis.geometry.Geometry
,它是一个接口。
我试图创建一个实例,如下所示:
GeometryFactory factory = GeometryFactoryFinder.getGeometryFactory(org.geotools.factory.GeoTools
.getDefaultHints());
factory.createPolygon(...);
但是,这将导致异常:
Exception in thread "main" org.geotools.factory.FactoryNotFoundException: No factory of kind "GeometryFactory" found.
at org.geotools.factory.FactoryRegistry.getServiceProvider(FactoryRegistry.java:375)
at org.geotools.factory.FactoryCreator.getServiceProvider(FactoryCreator.java:145)
at org.geotools.geometry.GeometryFactoryFinder.getGeometryFactory(GeometryFactoryFinder.java:94)
at nl.kadaster.locatie.bis.wfs.pdok.PdokServiceMain.main(PdokServiceMain.java:28)
谁能告诉我如何创建几何对象实例?
真诚的,斯特凡