Sky View Café 4.1.4 — Source Code

TERMS OF USE

This code is free for public use in any non-commercial application. All other uses are restricted without prior consent of the author, Kerry Shetline. The author assumes no liability for the suitability of this code in any application.

Any further distribution of this code, and products generated using this code, must include these terms of use, and all original copyright information and attributions of credit provided herein. Any product substantially similar to Sky View Café created using this code must, if publicly distributed, be explicitly cited as a derivative of Sky View Café. Any alterations of the Sky View Café source code, if publicly distributed, must be cited in code comments as modifications from the original Sky View Café sources.


Here is the Java source code for the web version of Sky View Café: svc_source.zip

The source code includes simple Mac OS X and Windows build scripts, but these scripts will likely have to be manually edited to change source and tool paths in order to function correctly. All text files in the source archive are ISO-8859-1 encoded. With the exception of the Windows .bat file (which uses Windows CR/LF line endings), Unix (LF) line endings are used.

The code here has been targeted to run on Java 1.3 or higher, to cover, as-is, without additional user intervention, as wide a range of user browser and Java configurations as possible, while not having to give up too much modern Java capability. (For anyone sadly still running Java 1.1 or 1.2, Sky View Café 3.0 is still available.) There is some Java 1.4 used here, conditionally executed depending on the available JRE, so the code must be compiled using Java 1.4 or higher. I'd dearly love to re-write this code to use generics, "import static", for-each loops, etc., but when I'm targeting general web use, and when I want to avoid imposing the need for updating or installing new software as much as possible, I try to go for as low a common denominator as I can tolerate coding towards, considering also that I don't want to substantially bloat the size of my code (and therefore increase applet download time) by trying to make up for missing Java functionality.

Javadoc for this code? I'm afraid not yet... maybe someday I'll get around to it... during my copious free time. wink


Duke

Package org.shetline.astronomy
Package org.shetline.gui
Package org.shetline.io
Package org.shetline.math
Package org.shetline.skyviewcafe
Package org.shetline.util
Root-level resources
Build resources
Web-hosted resources


Package org.shetline.astronomy:
AstroConstants
AstroEvent
AstronomyUtil
BuildOptions
DSTPolicy
Ecliptic
EclipticBody
EventFinder
HeliocentricPlanets
JupiterInfo
JupitersMoons
MeeusMoon
OSBasedDST
OrbitalElements
PlanetaryMoons
Pluto
SaturnsMoons
SkyObserver
SolarSystem
StarCatalog
UTConvertor
VSOP87Planets
WorldDST
— org.shetline.astronomy resources —
constellations.txt
• stars.dat (extract from svc_source.zip if needed)
• vsop_meeus.dat (extract from svc_source.zip if needed)

Package org.shetline.gui:
ComponentListFocusTraversalPolicy
CustomDialog
FlexibleGridLayout
ImageRetriever
ImageView
KApplet
KPanel
LayoutTweaker
LineupLayout
ListCellSeparatorRenderer
MathPanel
MessageMarquee
MiniAdjustor
MiniLabel
PictureButton
PopupNavigator
PopupPopper
SizedComboBox
SmallerButton
TweakedFlexibleGridLayout
TweakedLineupLayout
WrappedTextLabel
— org.shetline.gui resources —
MiniLabel_charset.gif
generic.gif
unknown.gif

Package org.shetline.io:
ResourceInputStream

Package org.shetline.math:
Angle
MathUser
MathUtil
MinMaxFinder
SphericalPosition
SphericalPosition3D
ZeroFinder

Package org.shetline.skyviewcafe:
AboutBox
AngleEditor
AstroObjectListPane
AtlasQuery
AtlasQueryDialog
BuildOptions
CalendarView
DigitSequenceEditor
EclipticView
GenericPlanetaryView
GenericSkyView
GenericView
IPLocator
InsolationView
JupiterDrawer
MainSkyViewPanel
MapView
MiniMap
MoonDrawer
MoonsView
OrbitView
PlanetDrawer
SaturnDrawer
SkySurveyWindow
SkyView
SkyViewCafeApp
SkyViewFrame
SkyViewPrefs
SkyViewPrefsDialog
TabularView
TimeEditor
ViewOptionsPanel
— org.shetline.skyviewcafe resources —
atlas_query_states.txt
blank_icon.gif
dso_symbol.gif
full_moon.jpg
label_crosshair.gif
larrow_d.gif
larrow_e.gif
larrow_p.gif
marker_aphelion.gif
marker_ascending.gif
marker_descending.gif
marker_eclipse.gif
marker_location.gif
marker_perihelion.gif
marker_subsolar.gif
open_crosshair.gif
rarrow_d.gif
rarrow_e.gif
rarrow_p.gif
search_icon.gif
search_icon_disabled.gif
stop_icon.gif
stop_icon_disabled.gif

Package org.shetline.util:
BrowserLauncher
BundleUtil
GraphicsUtil
StringUtil
Util
WebUtil

Root-level resources:
org-shetline-astronomy.properties
org-shetline-skyviewcafe.properties
org-shetline-util.properties
svcicon.gif

Build resources:
/SkyViewCafe.mf
/build_applet_debug.bat
/build_applet_debug.csh
• lib/AppletStubs.zip (extract from svc_source.zip if needed)
• lib/netscape.jar (extract from svc_source.zip if needed)

Web-hosted resources:
/svextra/grs_longitude.txt
/svextra/insolation_legend.gif
/svextra/jupiter_cyl.jpg
/svextra/moonlight_legend.gif
/svextra/saturn_cyl.jpg
/svextra/small_world.jpg
/svextra/svc_icon.png
/svmaps/maplist_v2.txt
/svmaps/worldmap.jpg
/svmaps/worldmap_night.jpg


The character "Duke" (the graphic used near the top of this page) is a trademark of Sun Microsystems, Inc.