This post's purpose is to gather in one place all useful info and material needed in order to implement slippy maps in a Swing application using the SwingX-WS library, now that the SwingLabs website is no more -- in spite of the fact that, however, SwingX development is still active.
问题:
回答1:
So, first things first, the as-of-today up-to-date jars, built from the latest sources.
SwingX-ws:
- swingx-ws rev. 317 binaries
- swingx-ws rev. 317 sources
- swingx-ws javadoc
SwingX v. 1.6.5-1 (required runtime dependency, requires Java6 or newer):
- swingx binaries
- swingx sources
- swingx javadoc
- swingx beaninfo (for IDEs' component palettes)
A few words on SwingX: it's an amazing project meant to extend swing functionality with extra widgets (a very well made webstartable demo here, with code samples and everything), nice-looking, powerful, fast and with no funky dependencies. One big plus IMHO is that integrates really beautifully with the modern Nimbus L&F (unlike jide-oss, for example, which, albeit very good itself, integrates poorly with Nimbus -- it has, however, a very nice alternative L&F, called Xerto, but this is another story...).
As for documentation, the sources that showcase swingx-ws use best are a series of articles written by Josh Marinacci, listed here in chronological order:
- Getting started with the Aerith Mapping Component
- NASA Maps in your Swing App
- A Mapping Christmas Present
- Tricked out maps and a new tile provider.
- Building Maps into Your Swing Application with the JXMapViewer
- Mapping Mashups with the JXMapViewer
In the [hopefully unlikely] event of needing to report a bug, the project's issue-tracking page can be found on JIRA.
回答2:
A descendant of swingx-ws called JXMapViewer2 can be found on github. As of April 2019, it seems to be reasonably active.
回答3:
swingx-ws-1.0.jar is compatible with swingx-1.6.jar but not with swingx-all-1.6.4.jar.
If you are using swingx-all-1.6.4.jar and wish to use Tiles as you did with swingx-1.6.jar, here is a workaround.
Copy
org.jdesktop.swingx.util.GraphicsUtilities.javafrom swingx-1.6.4 to a new package of your own (the swingx-1.6 version) :
org.jdesktop.swingx.graphics.GraphicsUtilities.java