• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java Intersects类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.opengis.filter.spatial.Intersects的典型用法代码示例。如果您正苦于以下问题:Java Intersects类的具体用法?Java Intersects怎么用?Java Intersects使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Intersects类属于org.opengis.filter.spatial包,在下文中一共展示了Intersects类的18个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: testGeoShapeIntersectsFilter

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Test
public void testGeoShapeIntersectsFilter() throws CQLException, IOException {
    Intersects filter = (Intersects) ECQL.toFilter("INTERSECTS(\"geom\", LINESTRING(0 0,1.1 1.1))");
    List<List<Double>> coords = new ArrayList<>();
    coords.add(ImmutableList.of(0.,0.));
    coords.add(ImmutableList.of(1.1,1.1));
    Map<String,Object> expected = ImmutableMap.of("bool", 
            ImmutableMap.of("must", MATCH_ALL, "filter", ImmutableMap.of("geo_shape", 
                    ImmutableMap.of("geom", ImmutableMap.of("shape", 
                            ImmutableMap.of("coordinates", coords, "type", "LineString"),
                            "relation", "INTERSECTS")))));

    builder.visit(filter, null);
    assertTrue(builder.createFilterCapabilities().fullySupports(filter));
    // TODO: Why doesn't equality check on objects work here
    assertEquals(expected.toString(), builder.getQueryBuilder().toString());
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:18,代码来源:ElasticFilterTest.java


示例2: testGeoShapeIntersectsFilterReversed

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Test
public void testGeoShapeIntersectsFilterReversed() throws CQLException, IOException {
    Intersects filter = (Intersects) ECQL.toFilter("INTERSECTS(LINESTRING(0 0,1.1 1.1), \"geom\")");
    List<List<Double>> coords = new ArrayList<>();
    coords.add(ImmutableList.of(0.,0.));
    coords.add(ImmutableList.of(1.1,1.1));
    Map<String,Object> expected = ImmutableMap.of("bool", 
            ImmutableMap.of("must", MATCH_ALL, "filter", ImmutableMap.of("geo_shape", 
                    ImmutableMap.of("geom", ImmutableMap.of("shape", 
                            ImmutableMap.of("coordinates", coords, "type", "LineString"),
                            "relation", "INTERSECTS")))));

    builder.visit(filter, null);
    assertTrue(builder.createFilterCapabilities().fullySupports(filter));
    assertEquals(expected.toString(), builder.getQueryBuilder().toString());
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:17,代码来源:ElasticFilterTest.java


示例3: testGeoPolygonFilter

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Test
public void testGeoPolygonFilter() throws CQLException {
    Intersects filter = (Intersects) ECQL.toFilter("INTERSECTS(\"geo_point\", POLYGON((0 0, 0 1.1, 1.1 1.1, 1.1 0, 0 0)))");
    List<List<Double>> points = ImmutableList.of(
            ImmutableList.of(0.,0.),
            ImmutableList.of(0.,1.1),
            ImmutableList.of(1.1,1.1),
            ImmutableList.of(1.1,0.),
            ImmutableList.of(0.,0.));
    Map<String,Object> expected = ImmutableMap.of("bool", 
            ImmutableMap.of("must", MATCH_ALL, "filter", ImmutableMap.of("geo_polygon", 
                    ImmutableMap.of("geo_point", ImmutableMap.of("points", points)))));

    builder.visit(filter, null);
    assertTrue(builder.createFilterCapabilities().fullySupports(filter));
    assertEquals(expected, builder.getQueryBuilder());
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:18,代码来源:ElasticFilterTest.java


示例4: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Override
public Object visit(
		final Intersects filter,
		Object data ) {
	if (!this.attributeOfInterest.equals(filter.getExpression1().toString())) {
		return new ExtractGeometryFilterVisitorResult(
				infinity(),
				null);
	}
	data = filter.getExpression2().accept(
			this,
			data);
	return new ExtractGeometryFilterVisitorResult(
			(Geometry) data,
			CompareOperation.INTERSECTS);
}
 
开发者ID:locationtech,项目名称:geowave,代码行数:17,代码来源:ExtractGeometryFilterVisitor.java


示例5: testFilters

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Test
public void testFilters() throws LayerException {
	Style style = styleConverterService.convert(layerBeansMixedGeometryStyleInfoSld.getUserStyle());
	List<Rule> rules = style.featureTypeStyles().get(0).rules();
	assertThat(rules.get(0).getFilter()).isInstanceOf(BBOX.class);
	assertThat(rules.get(1).getFilter()).isInstanceOf(Contains.class);
	assertThat(rules.get(2).getFilter()).isInstanceOf(Crosses.class);
	assertThat(rules.get(3).getFilter()).isInstanceOf(Disjoint.class);
	assertThat(rules.get(4).getFilter()).isInstanceOf(Equals.class);
	assertThat(rules.get(5).getFilter()).isInstanceOf(Intersects.class);
	assertThat(rules.get(6).getFilter()).isInstanceOf(Overlaps.class);
	assertThat(rules.get(7).getFilter()).isInstanceOf(Touches.class);
	assertThat(rules.get(8).getFilter()).isInstanceOf(Within.class);
	NamedStyleInfo namedStyleInfo = styleConverterService.convert(
			layerBeansMixedGeometryStyleInfoSld.getUserStyle(), featureInfo);
	Assert.assertEquals(9, namedStyleInfo.getFeatureStyles().size());
}
 
开发者ID:geomajas,项目名称:geomajas-project-server,代码行数:18,代码来源:StyleConverterServiceTest.java


示例6: visitGeoShapeBinarySpatialOperator

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
void visitGeoShapeBinarySpatialOperator(BinarySpatialOperator filter, Expression e1, Expression e2, 
        boolean swapped, Object extraData) {

    if (filter instanceof Disjoint) {
        shapeRelation = SpatialRelation.DISJOINT;
    } else if ((!swapped && filter instanceof Within) || (swapped && filter instanceof Contains)) {
        shapeRelation = SpatialRelation.WITHIN;
    } else if (filter instanceof Intersects || filter instanceof BBOX) {
        shapeRelation = SpatialRelation.INTERSECTS;
    } else {
        FilterToElastic.LOGGER.fine(filter.getClass().getSimpleName() 
                + " is unsupported for geo_shape types");
        shapeRelation = null;
        delegate.fullySupported = false;
    }

    if (shapeRelation != null) {
        e1.accept(delegate, extraData);
        key = (String) delegate.field;
        e2.accept(delegate, extraData);
        shapeBuilder = delegate.currentShapeBuilder;
    }

    if (shapeRelation != null && shapeBuilder != null) {
        delegate.queryBuilder = ImmutableMap.of("bool", ImmutableMap.of("must", MATCH_ALL,
                "filter", ImmutableMap.of("geo_shape", 
                        ImmutableMap.of(key, ImmutableMap.of("shape", shapeBuilder, "relation", shapeRelation)))));
    } else {
        delegate.queryBuilder = MATCH_ALL;
    }
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:32,代码来源:FilterToElasticHelper.java


示例7: createFilterCapabilities

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
/**
 * Sets the capabilities of this filter.
 *
 * @return FilterCapabilities for this Filter
 */
protected FilterCapabilities createFilterCapabilities() {
    FilterCapabilities capabilities = new FilterCapabilities();

    capabilities.addAll(FilterCapabilities.LOGICAL_OPENGIS);
    capabilities.addAll(FilterCapabilities.SIMPLE_COMPARISONS_OPENGIS);
    capabilities.addType(PropertyIsNull.class);
    capabilities.addType(PropertyIsBetween.class);
    capabilities.addType(Id.class);
    capabilities.addType(IncludeFilter.class);
    capabilities.addType(ExcludeFilter.class);
    capabilities.addType(PropertyIsLike.class);

    // spatial filters
    capabilities.addType(BBOX.class);
    capabilities.addType(Contains.class);
    //capabilities.addType(Crosses.class);
    capabilities.addType(Disjoint.class);
    //capabilities.addType(Equals.class);
    capabilities.addType(Intersects.class);
    //capabilities.addType(Overlaps.class);
    //capabilities.addType(Touches.class);
    capabilities.addType(Within.class);
    capabilities.addType(DWithin.class);
    capabilities.addType(Beyond.class);

    //temporal filters
    capabilities.addType(After.class);
    capabilities.addType(Before.class);
    capabilities.addType(Begins.class);
    capabilities.addType(BegunBy.class);
    capabilities.addType(During.class);
    capabilities.addType(Ends.class);
    capabilities.addType(EndedBy.class);
    capabilities.addType(TContains.class);
    capabilities.addType(TEquals.class);

    return capabilities;
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:44,代码来源:FilterToElastic.java


示例8: testIntersectsFilter

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Test
public void testIntersectsFilter() throws Exception {
    init("not-active","geo3");
    FilterFactory2 ff = (FilterFactory2) dataStore.getFilterFactory();
    GeometryFactory gf = new GeometryFactory();
    PackedCoordinateSequenceFactory sf = new PackedCoordinateSequenceFactory();
    Polygon ls = gf.createPolygon(sf.create(new double[] { 6, 6, 7, 6, 7, 7, 6, 7, 6, 6 }, 2));
    Intersects f = ff.intersects(ff.property("geo3"), ff.literal(ls));
    SimpleFeatureCollection features = featureSource.getFeatures(f);
    assertEquals(1, features.size());
    SimpleFeatureIterator fsi = features.features();
    assertTrue(fsi.hasNext());
    assertEquals(fsi.next().getID(), "active.13");
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:15,代码来源:ElasticGeometryFilterIT.java


示例9: testEmptyGeoShape

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Test
public void testEmptyGeoShape() throws CQLException {
    LineString ls = gf.createLineString(new Coordinate[0]);
    Intersects filter = ff.intersects(ff.property("geom"), ff.literal(ls));

    Map<String,Object> expected = ImmutableMap.of("bool", ImmutableMap.of("must_not",MATCH_ALL));

    builder.visit(filter, null);
    assertTrue(builder.createFilterCapabilities().fullySupports(filter));
    assertEquals(expected, builder.getQueryBuilder());
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:12,代码来源:ElasticFilterTest.java


示例10: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Override
public Object visit(
		final Intersects filter,
		final Object extraData ) {
	if (!usesProperty(filter)) {
		return Filter.INCLUDE;
	}
	return super.visit(
			filter,
			extraData);
}
 
开发者ID:locationtech,项目名称:geowave,代码行数:12,代码来源:PropertyIgnoringFilterVisitor.java


示例11: visitBinarySpatialOperator

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
void visitBinarySpatialOperator(BinarySpatialOperator filter, Expression e1, Expression e2, 
    boolean swapped, Object extraData) throws IOException {
    
    String closingParenthesis = ")";
    if (filter instanceof Equals) {
        out.write("Equals");
    } else if (filter instanceof Disjoint) {
        out.write("NOT (\"Intersect\"");
        closingParenthesis += ")";
    } else if (filter instanceof Intersects || filter instanceof BBOX) {
        out.write("\"Intersect\"");
    } else if (filter instanceof Crosses) {
        out.write("Crosses");
    } else if (filter instanceof Within) {
        if(swapped)
            out.write("Contains");
        else
            out.write("Within");
    } else if (filter instanceof Contains) {
        if(swapped)
            out.write("Within");
        else
            out.write("Contains");
    } else if (filter instanceof Overlaps) {
        out.write("Overlaps");
    } else if (filter instanceof Touches) {
        out.write("Touches");
    } else {
        throw new RuntimeException("Unsupported filter type " + filter.getClass());
    }
    out.write("(");

    e1.accept(delegate, extraData);
    out.write(", ");
    e2.accept(delegate, extraData);

    out.write(closingParenthesis);
}
 
开发者ID:DennisPallett,项目名称:gt-jdbc-monetdb,代码行数:39,代码来源:FilterToSqlHelper.java


示例12: visitGeoPointBinarySpatialOperator

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
void visitGeoPointBinarySpatialOperator(BinarySpatialOperator filter, Expression e1, Expression e2, 
        boolean swapped, Object extraData) {

    e1.accept(delegate, extraData);
    key = (String) delegate.field;
    e2.accept(delegate, extraData);

    final Geometry geometry = delegate.currentGeometry;

    if (geometry instanceof Polygon &&
            ((!swapped && filter instanceof Within) 
                    || (swapped && filter instanceof Contains)
                    || filter instanceof Intersects)) {
        final Polygon polygon = (Polygon) geometry;
        final List<List<Double>> points = new ArrayList<>();
        for (final Coordinate coordinate : polygon.getCoordinates()) {
            points.add(ImmutableList.of(coordinate.x, coordinate.y));
        }
        delegate.queryBuilder = ImmutableMap.of("bool", ImmutableMap.of("must", MATCH_ALL,
                "filter", ImmutableMap.of("geo_polygon", 
                        ImmutableMap.of(key, ImmutableMap.of("points", points)))));
    } else if (filter instanceof BBOX) {
        final Envelope envelope = geometry.getEnvelopeInternal();
        final double minY = clipLat(envelope.getMinY());
        final double maxY = clipLat(envelope.getMaxY());
        final double minX, maxX;
        if (envelope.getWidth() < 360) {
            minX = clipLon(envelope.getMinX());
            maxX = clipLon(envelope.getMaxX());
        } else {
            minX = -180;
            maxX = 180;
        }
        delegate.queryBuilder = ImmutableMap.of("bool", ImmutableMap.of("must", MATCH_ALL,
                "filter", ImmutableMap.of("geo_bounding_box", ImmutableMap.of(key, 
                        ImmutableMap.of("top_left", ImmutableList.of(minX, maxY), 
                                "bottom_right", ImmutableList.of(maxX, minY))))));
    } else {
        FilterToElastic.LOGGER.fine(filter.getClass().getSimpleName() 
                + " is unsupported for geo_point types");
        delegate.fullySupported = false;
        delegate.queryBuilder = MATCH_ALL;
    }
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:45,代码来源:FilterToElasticHelper.java


示例13: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
public Object visit(Intersects filter, Object extraData) {
    return visitBinarySpatialOperator((BinarySpatialOperator)filter, extraData);
}
 
开发者ID:ngageoint,项目名称:elasticgeo,代码行数:4,代码来源:FilterToElastic.java


示例14: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Override
public Object visit(Intersects filter, Object extraData) {
    return visitBinarySpatialOperator((BinarySpatialOperator)filter, extraData);
}
 
开发者ID:DennisPallett,项目名称:gt-jdbc-monetdb-simple,代码行数:5,代码来源:FilterToSQL.java


示例15: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Override
public Object visit(
		final Intersects filter,
		final Object data ) {
	return new TemporalConstraints();
}
 
开发者ID:locationtech,项目名称:geowave,代码行数:7,代码来源:ExtractTimeFilterVisitor.java


示例16: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
@Override
public Object visit(
		final Intersects filter,
		final Object data ) {
	return new PropertyConstraintSet();
}
 
开发者ID:locationtech,项目名称:geowave,代码行数:7,代码来源:PropertyFilterVisitor.java


示例17: createFilterCapabilities

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
public static FilterCapabilities createFilterCapabilities(boolean encodeFunctions) {
    FilterCapabilities caps = new FilterCapabilities();
    caps.addAll(SQLDialect.BASE_DBMS_CAPABILITIES);

    // adding the spatial filters support
    caps.addType(BBOX.class);
    caps.addType(Contains.class);
    caps.addType(Crosses.class);
    caps.addType(Disjoint.class);
    caps.addType(Equals.class);
    caps.addType(Intersects.class);
    caps.addType(Overlaps.class);
    caps.addType(Touches.class);
    caps.addType(Within.class);
    caps.addType(DWithin.class);
    caps.addType(Beyond.class);
    
    //temporal filters
    caps.addType(After.class);
    caps.addType(Before.class);
    caps.addType(Begins.class);
    caps.addType(BegunBy.class);
    caps.addType(During.class);
    caps.addType(TOverlaps.class);
    caps.addType(Ends.class);
    caps.addType(EndedBy.class);
    caps.addType(TEquals.class);

    if(encodeFunctions) {
        // add support for string functions
        caps.addType(FilterFunction_strConcat.class);
        caps.addType(FilterFunction_strEndsWith.class);
        caps.addType(FilterFunction_strStartsWith.class);
        caps.addType(FilterFunction_strEqualsIgnoreCase.class);
        caps.addType(FilterFunction_strIndexOf.class);
        caps.addType(FilterFunction_strLength.class);
        caps.addType(FilterFunction_strToLowerCase.class);
        caps.addType(FilterFunction_strToUpperCase.class);
        caps.addType(FilterFunction_strReplace.class);
        caps.addType(FilterFunction_strSubstring.class);
        caps.addType(FilterFunction_strSubstringStart.class);
        caps.addType(FilterFunction_strTrim.class);
        caps.addType(FilterFunction_strTrim2.class);
        
        // add support for math functions
        caps.addType(FilterFunction_abs.class);
        caps.addType(FilterFunction_abs_2.class);
        caps.addType(FilterFunction_abs_3.class);
        caps.addType(FilterFunction_abs_4.class);
        caps.addType(FilterFunction_ceil.class);
        caps.addType(FilterFunction_floor.class);
    }

    return caps;
}
 
开发者ID:DennisPallett,项目名称:gt-jdbc-monetdb,代码行数:56,代码来源:FilterToSqlHelper.java


示例18: visit

import org.opengis.filter.spatial.Intersects; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public Object visit(Intersects filter, Object userData) {
	String finalName = parsePropertyName(geomName, userData);
	return SpatialRestrictions.intersects(finalName, asGeometry(getLiteralValue(filter.getExpression2())));
}
 
开发者ID:geomajas,项目名称:geomajas-project-server,代码行数:7,代码来源:CriteriaVisitor.java



注:本文中的org.opengis.filter.spatial.Intersects类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java BatchGraph类代码示例发布时间:2022-05-23
下一篇:
Java ItemBoundable类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap