001 package org.openstreetmap.gui.jmapviewer; 002 003 //License: GPL. Copyright 2008 by Jan Peter Stotz 004 005 import java.awt.Color; 006 import java.awt.Graphics; 007 import java.awt.Point; 008 009 import org.openstreetmap.gui.jmapviewer.interfaces.MapMarker; 010 011 /** 012 * A simple implementation of the {@link MapMarker} interface. Each map marker 013 * is painted as a circle with a black border line and filled with a specified 014 * color. 015 * 016 * @author Jan Peter Stotz 017 * 018 */ 019 public class MapMarkerDot implements MapMarker { 020 021 double lat; 022 double lon; 023 Color color; 024 025 public MapMarkerDot(double lat, double lon) { 026 this(Color.YELLOW, lat, lon); 027 } 028 029 public MapMarkerDot(Color color, double lat, double lon) { 030 super(); 031 this.color = color; 032 this.lat = lat; 033 this.lon = lon; 034 } 035 036 public double getLat() { 037 return lat; 038 } 039 040 public double getLon() { 041 return lon; 042 } 043 044 public void paint(Graphics g, Point position) { 045 int size_h = 5; 046 int size = size_h * 2; 047 g.setColor(color); 048 g.fillOval(position.x - size_h, position.y - size_h, size, size); 049 g.setColor(Color.BLACK); 050 g.drawOval(position.x - size_h, position.y - size_h, size, size); 051 } 052 053 @Override 054 public String toString() { 055 return "MapMarker at " + lat + " " + lon; 056 } 057 058 }