xearth program

Bill Brown brown at zorro.cecer.army.mil
Fri Mar 18 12:46:41 EST 1994


--------------------- INCLUDED FILE ---------------------
RCS $Id: README,v 1.1 1993/07/23 21:16:17 tuna Exp $

README file for xearth, version 0.5
Kirk Lauritz Johnson <tuna at cag.lcs.mit.edu>
23 July 1993


WHAT IS IT?

    Xearth sets the X root window an image of the Earth, as seen from
    your favorite vantage point in space, correctly shaded for the
    current position of the Sun. By default, xearth forks a child
    process that runs in the background, updating the displayed image
    every five minutes to reflect changes in the Sun's position.
    Xearth can also render directly into PPM and GIF files instead of
    drawing in the root window. See the man page for details.


MAJOR CAVEAT

    This version of xearth (version 0.5) only supports eight-bit
    pseudocolor visuals, primarily because I haven't had enough time
    to hack up support for other visuals (and even if I did, I have
    very little access to any other kind of display).


WHERE TO GET IT?

    The latest-and-greatest version of xearth should be available via
    anonymous ftp from cag.lcs.mit.edu:/pub/tuna.


MANIFEST

    README		this file
    Imakefile		for use with "imake"
    Makefile.DIST	for use with "make"
    xearth.man		man page

    dither.c		source code
    extarr.[ch]
    gif.c
    gifint.h
    giflib.h
    gifout.c
    kljcpyrt.h
    mapdata.c
    ppm.c
    sunpos.c
    x11.c
    xearth.[ch]


NOTES

    There are a number of very useful improvements that I'd like to
    make (such as support for other than eight-bit pseudocolor
    visuals, better error recovery, getting options via X resources,
    etc.), but I really should be working on my thesis instead of
    hacking on this.

    The map information used in xearth was derived from the "CIA World
    Data Bank II map database," as taken from some "cbd" files that
    were apparently originally generated by Brian Reid at DECWRL.

    I believe something in dither.c exercises an optimizer bug in
    SunOS 4.1.3 /bin/cc; when I compile this code with -O, I get a
    segmentation violation. The code works fine under all the other
    compilers I can get my hands on, however. So, if possible, don't
    use SunOS 4.1.3 /bin/cc to compile xearth, or, if you have no
    other compilers, don't use optimization to compile dither.c.

    Running in the background on a Sun 4/110, xearth requires around
    30 CPU seconds each time it redraws an image in the root window.
    With the default time-between-redraws of 300 seconds, I hardly
    even notice the extra CPU load. Your mileage may vary, of course,
    especially on slower machines.

    The Graphics Interchange Format(c) is the Copyright property of
    CompuServe Incorporated. GIF(sm) is a Service Mark property of
    CompuServe Incorporated.

    Kudos to Jef Poskanzer for his excellent PBMPLUS toolkit.


IDEAS FOR FUTURE WORK

    Support for other visual classes and depths.

    Support for specifying options via X resources.

    Better error recovery (better than "assert()", anyway).

    Add a "-once" option that draws into the root window, but only
    once, and then sets all the necessary stuff to make it permanent
    (and such that it interacts gracefully with other programs that
    may later write into the root window).

    Add "-land", "-water", and "-bg" options to specify colors other
    than the default green, blue, and black.

    Also draw lines of longitude and latitude (with user defined
    spacing?).

    Add brightly-colored markers highlighting interesting locations on
    the Earth's surface (user specified, of course, possibly by
    including a simple database of, say, city locations so that places
    to highlight could even be specified by name).

    Support for supersampling/antialiasing.

    Add a "-pid" option that prints out the pid of the child process
    after it gets forked.


AUTHOR

    Kirk Johnson <tuna at cag.lcs.mit.edu>

    Patches, bug reports, and suggestions are welcome, although I
    can't guarantee that I'll get around to doing anything about them
    in a timely fashion.


LEGAL STUFF

    Copyright (C) 1989, 1990, 1993 by Kirk Lauritz Johnson.

    Permission to use, copy, modify, distribute, and sell this
    software and its documentation for any purpose is hereby granted
    without fee, provided that the above copyright notice appear in
    all copies and that both that copyright notice and this permission
    notice appear in supporting documentation. The author makes no
    representations about the suitability of this software for any
    purpose. It is provided "as is" without express or implied
    warranty.

    THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
    INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
    IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT
    OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
    LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
    NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
    CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
---------------------------------------------------------



More information about the grass-user mailing list