AmMap是用於建立交互式Flash地圖的工具。您可使用此工具來顯示您的辦公室地點,您的行程路線,建立您的經銷商地圖等。照片和插圖可做爲地圖的層和背景,這樣您就能製做不一樣的演示文稿或電子學習工具等。javascript
如下是部分代碼
html
- <script type="text/javascript">
- var w=$("#rbody").width();
- var so = new SWFObject("${pageContext.request.contextPath}/static/chart/ammap.swf", "ammap", w, "600", "8", "#e5f5fd");
- so.addVariable("path", "${pageContext.request.contextPath}/static/chart/");
- so.addVariable("settings_file", escape("${pageContext.request.contextPath}/static/chart/countries.xml"));
- so.addVariable("data_file", escape("${pageContext.request.contextPath}/plan/createamMapXml"));
- so.write("flashcontent");
- lt;/script>
關鍵讀取數據是createamMapXml這個方法
java
- String createamMapXml(HttpServletRequest request, HttpServletResponse response)
- throws Exception {
- SAXBuilder sb = new SAXBuilder();
- InputStream input = Thread.currentThread().getContextClassLoader()
- .getResourceAsStream("china.xml");
- Document doc = sb.build(input);
- String contextPath=request.getContextPath();
- Element map = doc.getRootElement();
- Element movies = new Element("movies");
- marketPriceService.createMap(contextPath, map, movies);
- String xmlStr = formatXml(doc);
- // System.out.println(xmlStr);
- response.setContentType("text/xml");
- return xmlStr;
- }
- public void createMap(String contextPath, Element map, Element movies) {
- List<Bases> list = basesService.getBasesByCurrentStateAndBases();
- Element areas=map.getChild("areas");
- List areaList=areas.getChildren("area");
- for (Iterator<Bases> iterator = list.iterator(); iterator.hasNext();) {
- Bases bases = (Bases) iterator.next();
- // System.out.println(bases.getRegion().getState());
- Element movie = new Element("movie");
- movie.setAttribute("title", bases.getName()==null?"": bases.getName());
- movie.setAttribute("file", "target");
- movie.setAttribute("color", "#FFBB77");
- movie.setAttribute("width", "10");
- movie.setAttribute("height", "10");
-
- movie.setAttribute("long", String.valueOf(bases.getLongitude()));
- movie.setAttribute("lat", String.valueOf(bases.getLatitude()));
- movie.setAttribute("url",
- contextPath+ "/plan/planBaseQuery?baseId=" + bases.getId());
- movie.setAttribute("fixed_size", "true");
- movies.addContent(movie);
- for (Iterator iterator2 = areaList.iterator(); iterator2.hasNext();) {
- Element area = (Element) iterator2.next();
- String title=area.getAttribute("title").getValue();
- if(StringUtils.isNotBlank(title)&&bases.getRegion().getState().contains(area.getAttribute("title").getValue()))
- area.setAttribute("color","#55AA00");
- }
- }
- Element movie = new Element("movie");
- movie.setAttribute("title","北京");
- movie.setAttribute("file", "star.gif");
- movie.setAttribute("color", "#CC0000");
- movie.setAttribute("width", "15");
- movie.setAttribute("height", "15");
- movie.setAttribute("long", "116.235004");
- movie.setAttribute("lat", "40.4850468229644");
- movie.setAttribute("fixed_size", "true");
- movies.addContent(movie);
- map.addContent(movies);
- }