Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / tools / MeasureListenerImpl.java @ 680

History | View | Annotate | Download (2.31 KB)

1 288 vcaballero
package com.iver.cit.gvsig.fmap.tools;
2
3 291 vcaballero
import java.awt.Cursor;
4
import java.awt.Image;
5 288 vcaballero
import java.awt.Point;
6 291 vcaballero
import java.awt.Toolkit;
7 288 vcaballero
8 291 vcaballero
import javax.swing.ImageIcon;
9 288 vcaballero
10 374 fjp
import com.iver.cit.gvsig.fmap.NewMapControl;
11 292 vcaballero
import com.iver.cit.gvsig.fmap.ViewPort;
12
import com.iver.cit.gvsig.fmap.tools.Events.MeasureEvent;
13
import com.iver.cit.gvsig.fmap.tools.Listeners.MeasureListener;
14 291 vcaballero
15 292 vcaballero
16 288 vcaballero
/**
17
 * DOCUMENT ME!
18
 *
19
 * @author Vicente Caballero Navarro
20
 */
21
public class MeasureListenerImpl implements MeasureListener {
22 401 fjp
        private final Image iruler = new ImageIcon(NewMapControl.class.getResource(
23 291 vcaballero
    "images/RulerCursor.gif")).getImage();
24
25
        private Cursor cur = Toolkit.getDefaultToolkit().createCustomCursor(iruler,
26
    new Point(16, 16), "");
27 667 fernando
        protected NewMapControl mapCtrl;
28 288 vcaballero
29
    /**
30
     * Crea un nuevo MeasureListenerImpl.
31
     *
32
     * @param vp DOCUMENT ME!
33
     */
34 374 fjp
    public MeasureListenerImpl(NewMapControl mc) {
35
        this.mapCtrl = mc;
36 288 vcaballero
    }
37
38
    /**
39
     * DOCUMENT ME!
40
     *
41
     * @param event DOCUMENT ME!
42
     */
43
    public void points(MeasureEvent event) {
44
        double dist = 0;
45
        double distAll = 0;
46
47 374 fjp
        ViewPort vp = mapCtrl.getMapContext().getViewPort();
48 288 vcaballero
        for (int i = 0; i < (event.getXs().length - 1); i++) {
49
            dist = 0;
50
51
            Point p = new Point(event.getXs()[i].intValue(),
52
                    event.getXs()[i].intValue());
53
            Point p2 = new Point(event.getXs()[i + 1].intValue(),
54
                    event.getXs()[i + 1].intValue());
55
            dist = vp.toMapDistance((int) p.distance(p2));
56
            distAll += dist;
57
        }
58
59
        System.out.println("Distancia = " + dist + " Distancia Total = " +
60
            (distAll));
61
    }
62 291 vcaballero
63
        /**
64
         * @see com.iver.cit.gvsig.fmap.tools.Listeners.ToolListener#getCursor()
65
         */
66
        public Cursor getCursor() {
67
                return cur;
68
        }
69 363 fernando
70
        /**
71
         * @see com.iver.cit.gvsig.fmap.tools.Listeners.MeasureListener#pointFixed(com.iver.cit.gvsig.fmap.tools.Events.MeasureEvent)
72
         */
73
        public void pointFixed(MeasureEvent event) {
74
        }
75
76
        /**
77
         * @see com.iver.cit.gvsig.fmap.tools.Listeners.ToolListener#cancelDrawing()
78
         */
79
        public boolean cancelDrawing() {
80
                return false;
81
        }
82
83
        /**
84
         * @see com.iver.cit.gvsig.fmap.tools.Listeners.MeasureListener#polylineFinished(com.iver.cit.gvsig.fmap.tools.Events.MeasureEvent)
85
         */
86
        public void polylineFinished(MeasureEvent event) {
87
        }
88 288 vcaballero
}