001 package org.openstreetmap.gui.jmapviewer.interfaces; 002 003 //License: GPL. Copyright 2009 by Stefan Zeller 004 005 import java.awt.Graphics; 006 import java.awt.Point; 007 008 import org.openstreetmap.gui.jmapviewer.Coordinate; 009 import org.openstreetmap.gui.jmapviewer.JMapViewer; 010 011 /** 012 * Interface to be implemented by rectangles that can be displayed on the map. 013 * 014 * @author Stefan Zeller 015 * @see JMapViewer#addMapRectangle(MapRectangle) 016 * @see JMapViewer#getMapRectangleList() 017 */ 018 public interface MapRectangle { 019 020 /** 021 * @return Latitude/Longitude of top left of rectangle 022 */ 023 public Coordinate getTopLeft(); 024 025 /** 026 * @return Latitude/Longitude of bottom right of rectangle 027 */ 028 public Coordinate getBottomRight(); 029 030 /** 031 * Paints the map rectangle on the map. The <code>topLeft</code> and 032 * <code>bottomRight</code> are specifying the coordinates within <code>g</code> 033 * 034 * @param g graphics structure for painting 035 * @param topLeft lop left edge of painting region 036 * @param bottomRight bottom right edge of painting region 037 */ 038 public void paint(Graphics g, Point topLeft, Point bottomRight); 039 }