Revision 779

View differences:

trunk/applications/appgvSIG/src/com/iver/cit/gvsig/gui/toolListeners/AreaListener.java
1
package com.iver.cit.gvsig.gui.toolListeners;
2

  
3
import java.awt.Point;
4
import java.awt.geom.Point2D;
5

  
6
import com.iver.andami.PluginServices;
7
import com.iver.cit.gvsig.fmap.NewMapControl;
8
import com.iver.cit.gvsig.fmap.ViewPort;
9
import com.iver.cit.gvsig.fmap.tools.AreaListenerImpl;
10
import com.iver.cit.gvsig.fmap.tools.Events.MeasureEvent;
11

  
12

  
13
/**
14
 * DOCUMENT ME!
15
 *
16
 * @author Vicente Caballero Navarro
17
 */
18
public class AreaListener extends AreaListenerImpl {
19
	/**
20
     * Crea un nuevo AreaListener.
21
     *
22
     * @param vp DOCUMENT ME!
23
     */
24
    public AreaListener(NewMapControl mc) {
25
    	super(mc);
26
    }
27

  
28
    /**
29
     * DOCUMENT ME!
30
     *
31
     * @param event DOCUMENT ME!
32
     */
33
    public void points(MeasureEvent event) {
34
        this.event = event;
35

  
36
        double dist = 0;
37
        double distAll = 0;
38

  
39
        ViewPort vp = mapCtrl.getMapContext().getViewPort();
40
        for (int i = 0; i < (event.getXs().length - 1); i++) {
41
            dist = 0;
42

  
43
            Point p = new Point(event.getXs()[i].intValue(),
44
                    event.getXs()[i].intValue());
45
            Point p2 = new Point(event.getXs()[i + 1].intValue(),
46
                    event.getXs()[i + 1].intValue());
47
            dist = vp.toMapDistance((int) p.distance(p2));
48
            distAll += dist;
49
        }
50

  
51
        System.out.println("Per?metro = " + distAll + " ?rea = " +
52
            (returnArea(vp.toMapPoint(
53
                    new Point2D.Double(
54
                        event.getXs()[event.getXs().length - 2].doubleValue(),
55
                        event.getYs()[event.getYs().length - 2].doubleValue())))));
56
    
57
        PluginServices.getMainFrame().getStatusBar().setMessage("1",
58
    			"Per?metro :" + distAll + "");
59
    		PluginServices.getMainFrame().getStatusBar().setMessage("2",
60
    			"?rea :" + (returnArea(vp.toMapPoint(
61
                        new Point2D.Double(
62
                                event.getXs()[event.getXs().length - 2].doubleValue(),
63
                                event.getYs()[event.getYs().length - 2].doubleValue())))) + "");
64
    }
65

  
66
    
67
}
0 68

  

Also available in: Unified diff