本文整理了Java中org.opengis.filter.FilterFactory2.crosses()
方法的一些代码示例,展示了FilterFactory2.crosses()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。FilterFactory2.crosses()
方法的具体详情如下:
包路径:org.opengis.filter.FilterFactory2
类名称:FilterFactory2
方法名:crosses
[英]Checks if the first geometric operand crosses the second.
[中]检查第一个几何操作数是否与第二个几何操作数相交。
代码示例来源:origin: geotools/geotools
Object cloneFilter(
BinarySpatialOperator bso, Object extraData, Expression ex1, Expression ex2) {
return ff.crosses(ex1, ex2);
}
}.transform(filter, extraData);
代码示例来源:origin: geotools/geotools
/**
*
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated modifiable
*/
public Object parse(ElementInstance instance, Node node, Object value) throws Exception {
Expression[] operands = OGCUtils.spatial(node, filterFactory, geometryFactory);
return filterFactory.crosses(operands[0], operands[1]);
}
}
代码示例来源:origin: geotools/geotools
public BinarySpatialOperator buildSpatialCrossesFilter() throws CQLException {
Literal geom = this.resultStack.popLiteral();
Expression property = this.resultStack.popExpression();
FilterFactory2 ff =
(FilterFactory2)
filterFactory; // TODO this cast must be removed. It depends of Geometry
// implementation
return ff.crosses(property, geom);
}
代码示例来源:origin: geotools/geotools
/**
* @return new instance of {@link Crosses} operation
* @throws CQLException
*/
public Crosses buildCrosses() throws CQLException {
Expression[] params = buildParameters();
return getFilterFactory().crosses(params[0], params[1]);
}
代码示例来源:origin: geotools/geotools
public Object visit(Crosses filter, Object arg1) {
Expression[][] exps = visitBinarySpatialOp(filter);
List combinedFilters = new ArrayList(exps.length);
for (int i = 0; i < exps.length; i++) {
Expression left = exps[i][0];
Expression right = exps[i][1];
Filter unrolled = ff.crosses(left, right, filter.getMatchAction());
combinedFilters.add(unrolled);
}
Filter unrolled = combineOred(combinedFilters);
return unrolled;
}
代码示例来源:origin: geotools/geotools
private Filter mergeOperations(String propertyName, List<SpatialOperation> ops) {
// prepare the property name
PropertyName property = FF.property(propertyName);
// prepare united the geometry
Geometry[] geomArray = new Geometry[ops.size()];
for (int i = 0; i < geomArray.length; i++) {
geomArray[i] = ops.get(i).geometry;
}
GeometryCollection collection =
geomArray[0].getFactory().createGeometryCollection(geomArray);
Geometry united = collection.union();
Literal geometry = FF.literal(united);
// rebuild the filter
Class<?> operation = ops.get(0).operation;
if (BBOX.class.isAssignableFrom(operation)
|| Intersects.class.isAssignableFrom(operation)) {
return FF.intersects(property, geometry);
} else if (Crosses.class.isAssignableFrom(operation)) {
return FF.crosses(property, geometry);
} else if (Overlaps.class.isAssignableFrom(operation)) {
return FF.overlaps(property, geometry);
} else if (Touches.class.isAssignableFrom(operation)) {
return FF.touches(property, geometry);
} else {
throw new IllegalArgumentException("Cannot merge operation " + operation.getName());
}
}
代码示例来源:origin: geotools/geotools
return FILTER_FACT.crosses(left, right);
代码示例来源:origin: geotools/geotools
public Object visit(Crosses filter, Object extraData) {
Expression geometry1 = visit(filter.getExpression1(), extraData);
Expression geometry2 = visit(filter.getExpression2(), extraData);
return getFactory(extraData).crosses(geometry1, geometry2, filter.getMatchAction());
}
代码示例来源:origin: geotools/geotools
static Crosses crosses() {
return f.crosses(f.property("the_geom"), f.literal(geometry()));
}
代码示例来源:origin: geotools/geotools
public static Crosses crosses() {
return f.crosses(f.property("the_geom"), f.literal(geometry()));
}
代码示例来源:origin: geotools/geotools
return factory.crosses(geometry1, geometry2);
代码示例来源:origin: org.geotools/gt-main
Object cloneFilter(BinarySpatialOperator bso, Object extraData, Expression ex1,
Expression ex2) {
return ff.crosses(ex1, ex2);
}
}.transform(filter, extraData);
代码示例来源:origin: org.geotools.xsd/gt-xsd-filter
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated modifiable
*/
public Object parse(ElementInstance instance, Node node, Object value)
throws Exception {
Expression[] operands = OGCUtils.spatial(node, filterFactory, geometryFactory);
return filterFactory.crosses(operands[0], operands[1]);
}
}
代码示例来源:origin: org.geotools/gt2-xml-filter
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated modifiable
*/
public Object parse(ElementInstance instance, Node node, Object value)
throws Exception {
Expression[] operands = OGCUtils.spatial(node, filterFactory, geometryFactory);
return filterFactory.crosses(operands[0], operands[1]);
}
}
代码示例来源:origin: geotools/geotools
public void testCrossesFilter() throws Exception {
FilterFactory2 ff = CommonFactoryFinder.getFilterFactory2(null);
// should match only "r2"
GeometryFactory gf = new GeometryFactory();
PackedCoordinateSequenceFactory sf = new PackedCoordinateSequenceFactory();
LineString ls = gf.createLineString(sf.create(new double[] {2, 3, 4, 3}, 2));
Crosses cs = ff.crosses(ff.property(aname("geom")), ff.literal(ls));
FeatureCollection features = dataStore.getFeatureSource(tname("road")).getFeatures(cs);
checkSingleResult(features, "r2");
}
代码示例来源:origin: org.geotools/gt-app-schema
public Object visit(Crosses filter, Object arg1) {
Expression[][] exps = visitBinarySpatialOp(filter);
List combinedFilters = new ArrayList(exps.length);
for (int i = 0; i < exps.length; i++) {
Expression left = exps[i][0];
Expression right = exps[i][1];
Filter unrolled = ff.crosses(left, right, filter.getMatchAction());
combinedFilters.add(unrolled);
}
Filter unrolled = combineOred(combinedFilters);
return unrolled;
}
代码示例来源:origin: org.geotools/gt-cql
public BinarySpatialOperator buildSpatialCrossesFilter() throws CQLException {
Literal geom = this.resultStack.popLiteral();
Expression property = this.resultStack.popExpression();
FilterFactory2 ff = (FilterFactory2) filterFactory; // TODO this cast must be removed. It depends of Geometry implementation
return ff.crosses(property, geom);
}
代码示例来源:origin: org.geotools/gt-main
public Object visit(Crosses filter, Object extraData) {
Expression geometry1= visit(filter.getExpression1(), extraData);
Expression geometry2= visit(filter.getExpression2(), extraData);
return getFactory(extraData).crosses(geometry1, geometry2);
}
代码示例来源:origin: org.geotools/gt2-main
public Object visit(Crosses filter, Object extraData) {
Expression geometry1=(Expression) filter.getExpression1().accept(this, extraData);
Expression geometry2=(Expression) filter.getExpression2().accept(this, extraData);
return getFactory(extraData).crosses(geometry1, geometry2);
}
代码示例来源:origin: geotools/geotools
filter = fac.contains(expr1, expr2);
assertEquals(filter.getMatchAction(), MatchAction.ANY);
filter = fac.crosses(expr1, expr2);
assertEquals(filter.getMatchAction(), MatchAction.ANY);
filter = fac.disjoint(expr1, expr2);
filter = fac.contains(expr1, expr2, MatchAction.ALL);
assertEquals(filter.getMatchAction(), MatchAction.ALL);
filter = fac.crosses(expr1, expr2, MatchAction.ONE);
assertEquals(filter.getMatchAction(), MatchAction.ONE);
filter = fac.disjoint(expr1, expr2, MatchAction.ALL);
内容来源于网络,如有侵权,请联系作者删除!