@SuppressWarnings("unchecked") public void createMapFor( final CoordinateReferenceSystem crs, final com.vividsolutions.jts.geom.Envelope areaOfInterest, final Graphics2D graphics) throws IOException { Geometry geographicBoundingBox = getGeographicBoundingBox(crs); MapContext mapContext = getMapContext(crs, geographicBoundingBox, areaOfInterest); graphics.setColor(new Color(153, 179, 204)); graphics.fillRect(0, 0, mapWidth, mapHeight); Rectangle paintArea = new Rectangle(mapWidth, mapHeight); mapContext.setAreaOfInterest(areaOfInterest, crs); GTRenderer renderer = new StreamingRenderer(); renderer.setContext(mapContext); RenderingHints hints = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); renderer.setJava2DHints(hints); Map renderingHints = new HashMap(); renderingHints.put("optimizedDataLoadingEnabled", Boolean.TRUE); renderingHints.put(StreamingRenderer.ADVANCED_PROJECTION_HANDLING_KEY, Boolean.TRUE); renderingHints.put(StreamingRenderer.CONTINUOUS_MAP_WRAPPING, Boolean.TRUE); renderer.setRendererHints(renderingHints); renderer.paint(graphics, paintArea, areaOfInterest); }
/** * Set the renderer for this map pane. * * @param renderer the renderer to use */ public void setRenderer(GTRenderer renderer) { if (renderer != null) { Map<Object, Object> hints; if (renderer instanceof StreamingRenderer) { hints = renderer.getRendererHints(); if (hints == null) { hints = new HashMap<Object, Object>(); } if (hints.containsKey(StreamingRenderer.LABEL_CACHE_KEY)) { labelCache = (LabelCache) hints.get(StreamingRenderer.LABEL_CACHE_KEY); } else { labelCache = new LabelCacheImpl(); hints.put(StreamingRenderer.LABEL_CACHE_KEY, labelCache); } renderer.setRendererHints(hints); if (this.content != null) { renderer.setMapContent(this.content); } } } this.renderer = renderer; }