0

我正在尝试创建一个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)

谁能告诉我如何创建几何对象实例?

真诚的,斯特凡

4

0 回答 0