private GeometryAttributeInfo toGeometryAttributeInfo(GeometryDescriptor gdi) { if (gdi != null) { GeometryAttributeInfo gai = new GeometryAttributeInfo(); gai.setEditable(false); gai.setName(gdi.getLocalName()); return gai; } else { return null; } }
@Override public String getGeometryAttributeName() throws LayerException { return fixName(getFeatureInfo().getGeometryType().getName()); }
private static Map<String, String> geometryCriterionToFilters(GeometryCriterion criterion, MapModel mapModel) { Map<String, String> filters = new LinkedHashMap<String, String>(); org.geomajas.gwt.client.spatial.geometry.Geometry mapGeom = GeometryConverter.toGwt(criterion.getGeometry()); String wktGeom = mapGeom.toWkt(); String method; switch (criterion.getOperator()) { case SearchByLocationRequest.QUERY_INTERSECTS: method = "INTERSECTS"; break; case SearchByLocationRequest.QUERY_CONTAINS: method = "CONTAINS"; break; case SearchByLocationRequest.QUERY_TOUCHES: method = "TOUCHES"; break; case SearchByLocationRequest.QUERY_WITHIN: method = "WITHIN"; break; default: return null; } for (String serverLayerId : criterion.getServerLayerIds()) { VectorLayer vl = findVectorLayer(mapModel, serverLayerId); if (vl != null) { String geomAttName = vl.getLayerInfo().getFeatureInfo().getGeometryType().getName(); filters.put(serverLayerId, method + "(" + geomAttName + ", " + wktGeom + ")"); } } return filters; }
@SuppressWarnings({"rawtypes", "deprecation" }) // see GBE-321 public void toShapeFile(File shapeFile, VectorLayer layer, List<InternalFeature> features) throws Exception { if (features.size() == 0) { return; } List<PrimitiveAttributeInfo> attInfos = getPrimitiveAttributeInfo(layer); SimpleFeatureType type = createFeatureType(layer.getId(), layer.getLayerInfo().getFeatureInfo() .getGeometryType().getName(), features.get(0).getGeometry().getGeometryType(), features.get(0) .getGeometry().getSRID(), attInfos); DefaultFeatureCollection collection = new DefaultFeatureCollection(); SimpleFeatureBuilder featureBuilder = new SimpleFeatureBuilder(type); for (InternalFeature feature : features) { featureBuilder.add(feature.getGeometry()); Map<String, Attribute> atts = feature.getAttributes(); for (PrimitiveAttributeInfo pai : attInfos) { featureBuilder.add(atts.get(pai.getName()).getValue()); } SimpleFeature sf = featureBuilder.buildFeature(feature.getId()); collection.add(sf); } buildShapeFile(shapeFile, layer, collection, type); }
private GeometryAttributeInfo toGeometryAttributeInfo(GeometryDescriptor gdi) { if (gdi != null) { GeometryAttributeInfo gai = new GeometryAttributeInfo(); gai.setEditable(false); gai.setName(gdi.getLocalName()); return gai; } else { return null; } }
@SuppressWarnings({"rawtypes", "deprecation" }) // see GBE-321 public void toShapeFile(File shapeFile, VectorLayer layer, List<InternalFeature> features) throws Exception { if (features.size() == 0) { return; } List<PrimitiveAttributeInfo> attInfos = getPrimitiveAttributeInfo(layer); SimpleFeatureType type = createFeatureType(layer.getId(), layer.getLayerInfo().getFeatureInfo() .getGeometryType().getName(), features.get(0).getGeometry().getGeometryType(), features.get(0) .getGeometry().getSRID(), attInfos); DefaultFeatureCollection collection = new DefaultFeatureCollection(); SimpleFeatureBuilder featureBuilder = new SimpleFeatureBuilder(type); for (InternalFeature feature : features) { featureBuilder.add(feature.getGeometry()); Map<String, Attribute> atts = feature.getAttributes(); for (PrimitiveAttributeInfo pai : attInfos) { featureBuilder.add(atts.get(pai.getName()).getValue()); } SimpleFeature sf = featureBuilder.buildFeature(feature.getId()); collection.add(sf); } buildShapeFile(shapeFile, layer, collection, type); }
String geomName = layerInfo.getFeatureInfo().getGeometryType().getName();
/** * Create a simple SLD style. * * @param dvc the dynamic vector layer configuration * @param properties configuration properties * @return the simple sld style */ public static UserStyleInfo createSimpleSldStyle(DynamicVectorLayerConfiguration dvc, Map<String, Object> properties) { UserStyleInfo usi = new UserStyleInfo(); usi.setTitle(getPropValue(STYLENAME, properties, dvc.getClientVectorLayerInfo().getNamedStyleInfo().getName())); usi.setName(usi.getTitle()); FeatureTypeStyleInfo fsi = new FeatureTypeStyleInfo(); fsi.setName(usi.getTitle()); usi.getFeatureTypeStyleList().add(fsi); String geometryName = dvc.getVectorLayerInfo().getFeatureInfo().getGeometryType().getName(); List<RuleInfo> ri = createRules(dvc.getVectorLayerInfo().getLayerType(), properties, geometryName); fsi.getRuleList().addAll(ri); return usi; }