使用MapDotMarkers我有JMapViewer
兩個問題:與JMapViewer
加入
MapDotMarkers
我的地圖後,我想對夫婦每一個彙總表(其上寫在它的一些文字一定Pannel
點,大概關於點的一些描述)。我怎樣才能做到這一點?我應該用什麼方法使
map
在我的屏幕上可見?
使用MapDotMarkers我有JMapViewer
兩個問題:與JMapViewer
加入MapDotMarkers
我的地圖後,我想對夫婦每一個彙總表(其上寫在它的一些文字一定Pannel
點,大概關於點的一些描述)。我怎樣才能做到這一點?
我應該用什麼方法使map
在我的屏幕上可見?
您可以檢查源代碼文件Demo.java與庫JMapViewer一起下載它包含您的問題的答案。您可以使用簡單的幾行簡單地顯示地圖,創建點,添加工具提示。請檢查上面提到的源文件並讓我知道您需要進一步的幫助。你有這個文件(Demo.java)嗎?
不幸的是,在添加彙總列表中的地圖沒有簡單的方法,但是,有一種方法:
加入彙總列表的整體解決方案將基於一個創建自定義MapMarker。您需要添加新的類,例如「SummaryMapMarker」,它擴展了當前的MapMarker類。請檢查JMapViewer源代碼附帶的現有MapMarkerCircle.java(從JMapViewer開源下載)。創建MapMarkerCircle的副本,將其重命名爲像MapMarkerSummary.java之類的內容,並根據您的需要對其進行修改。然後,您可以使用着名的繪圖方法在地圖上輸出任何摘要,即使用Graphics g來使用g.drawLine,g.drawString,g.drawRect等繪製直線,圓形,矩形,文本和圖像。您可以創建任何自定義摘要(任何真正的!)。簡而言之,整個想法是能夠在屏幕上隨意滑動,而基於屏幕像素(x,y)座標。以下內容粘貼供您參考。如果您需要更多詳細信息,請告訴我,以防萬一。我能夠創建精美的摘要並將其添加到地圖查看器中。 MapMarkerSummary類完成後,可以像添加DotMap標記(例如map()。addMapMarker(新的MapMarkerSummary ...)
)public class MapMarkerSummary extends將其添加到主要類中的主面板MapObjectImpl實現MapMarker {
public void paint(Graphics g, Point position, int radio) {
// ...
int size_h = radio;
int size = 64;
g.setColor(Color.blue);
g.draw3DRect(position.x - 5, position.y - 5, 400, 120, true);
g.drawString("20°C", position.x + size - 10, position.y + 25);
g.drawString("30°C", position.x + size - 10, position.y + 37);
g.setColor(Color.gray);
g.drawLine(position.x + size + 18, position.y - 4, position.x + size + 18 , position.y + 112);
}
// ...
}