Statistics
| Revision:

svn-gvsig-desktop / branches / v2_0_0_prep / libraries / libFMap_mapcontext / src / org / gvsig / fmap / geom / operation / CreateLabels.java @ 29097

History | View | Annotate | Download (1.26 KB)

1
package org.gvsig.fmap.geom.operation;
2

    
3
import org.gvsig.fmap.geom.Geometry;
4
import org.gvsig.fmap.geom.GeometryLocator;
5
import org.gvsig.fmap.geom.GeometryManager;
6
import org.gvsig.fmap.geom.exception.CreateGeometryException;
7
import org.gvsig.fmap.geom.operation.GeometryOperation;
8
import org.gvsig.fmap.geom.operation.GeometryOperationContext;
9
import org.gvsig.fmap.geom.operation.GeometryOperationException;
10
import org.gvsig.fmap.geom.utils.FLabel;
11

    
12
public class CreateLabels extends GeometryOperation{
13
        public static final int CODE = GeometryLocator.getGeometryManager()
14
                        .registerGeometryOperation("createLabels", new CreateLabels());
15

    
16
        public Object invoke(Geometry geom, GeometryOperationContext ctx)
17
                        throws GeometryOperationException {
18
                CreateLabelsOperationContext cloc = (CreateLabelsOperationContext) ctx;
19
                try {
20
                        return createLabels(geom, cloc.getPosition(), cloc.isDublicates());
21
                } catch (CreateGeometryException e) {
22
                        throw new GeometryOperationException(e);
23
                }
24
        }
25

    
26
        public int getOperationIndex() {
27
                return CODE;
28
        }
29

    
30
        private FLabel[] createLabels(Geometry geom, int position,
31
                        boolean duplicates) throws CreateGeometryException {
32
                FLabel[] aux = new FLabel[1];
33
                aux[0] = FLabel.createFLabel(geom);
34

    
35
                return aux;
36
        }
37
}