Revision 280

View differences:

org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.point/src/main/java/org/gvsig/vectorediting/lib/prov/point/PointEditingProvider.java
29 29

  
30 30
import org.gvsig.fmap.dal.feature.FeatureStore;
31 31
import org.gvsig.fmap.geom.Geometry;
32
import org.gvsig.fmap.geom.GeometryLocator;
33
import org.gvsig.fmap.geom.aggregate.MultiPoint;
32 34
import org.gvsig.fmap.geom.primitive.Point;
35
import org.gvsig.fmap.geom.type.GeometryType;
33 36
import org.gvsig.tools.dynobject.DynObject;
34 37
import org.gvsig.tools.service.spi.ProviderServices;
35 38
import org.gvsig.vectorediting.lib.api.EditingServiceParameter;
......
130 133
        Point geometry = null;
131 134
        try {
132 135
            int subtype = editingProviderServices.getSubType(featureStore);
136
            GeometryType geomType =
137
                editingProviderServices.getGeomType(featureStore);
133 138
            geometry =
134 139
                editingProviderServices.createPoint(valuePoint.getX(),
135 140
                    valuePoint.getY(), subtype);
141

  
142
            if (geomType.isTypeOf(MULTIPOINT)) {
143
                MultiPoint multiPoint;
144
                multiPoint = GeometryLocator.getGeometryManager().createMultiPoint(subtype);
145
                multiPoint.addPoint(geometry);
146
                return multiPoint;
147
            }
148

  
136 149
        } catch (Exception e) {
137 150
            throw new FinishServiceException("Can't finalize " + this.getName()
138 151
                + "with X=" + valuePoint.getX() + " Y= " + valuePoint.getY(), e);

Also available in: Unified diff