AmMap是用于创建交互式Flash地图的工具。您可以使用此工具来显示您的办公室地点,您的行程路线,创建您的经销商地图等。照片和插图可作为地图的层和背景,这样您就能制作不同的演示文稿或电子学习工具等。
点击进入下载页面
以下是部分代码
- <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这个方法
- 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(0);
- 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);
- }