How did I do this?

Hi,
This is in response to a note on the GISARCH mailing list by Alan Vince alan@postex.demon.co.uk in which he asked for technical details. OK.

This is very much like what I have described elsewhere on this server for the production of MPEGs from Arc/Info coverages.

Essentially you just do a series of SCREENSAVEs, and find some way to string the images together. The nitty-gritty Arc/Info stuff is:

  1. After starting Arcplot (I'm on a sun with AI 7.0.1) I set to display to a standard size:
    display 9999 size canvase 150 200
    
    That way I have standard-sized images.
  2. I run the following aml:
    &args bdate bframe numframe
    /* animation.aml Written by Erich Schroeder, Illinois State Museum
    /* sometime in late 1995, greatly modified for different purposes..
    /*
    /* The goal of this aml is just to do a series of screensaves to create
    /* some frames to be animated in some way.  The arguments are:
    /* bdate = begining date for this part of the animation.
    /* bframe = beginning frame number for this part of the animation
    /*          (note: not really used much in this incarnation of the aml)
    /* numframe = the number of iterations (frames) to be produced in this run.
    /*
    /* I run this in grouping of about 20 or so.  The land records data set is
    /* large (over 500,000 90-byte records) so it ties up the machine pretty well.
    /*
    /* First, set up two relations called "mm" and "max" to use.
    /* "mm" is the basic relation to tie the coverage and the info file together.
    /* "max" helps in identifying sections that are completely in private
    /* ownership by the year in question.
    relate add
    mm
    statepur
    info
    trs
    trs
    ordered
    auto
    max
    maxyear
    info
    trs
    trs
    ordered
    auto
    ~
    /*
    /* Set up an ending point...
    /*
    &s eframe = %bframe% + %numframe%
    /*
    /* standard arcplot stuff
    /*
    shadeset color
    mape /illinois/admin/county-nl
    mapposition cen cen
    /*
    /* Make a map for one year...save it...and loop around.
    /*
    &do i = %bframe% &to %eframe% &by 1
    clear
    arcs /illinois/admin/state-nl
    move 0.05 0.15
    textsize .1
    text %bdate%
    clearselect
    reselect state2 poly max//year lt %bdate%
    polygonshades state2 2
    nselect state2 poly
    reselect state2 poly mm//year eq %bdate%
    polygonshades state2 7
    &type done with %bdate%, frame %i%
    screensave pur%bdate%.ras
    &s bdate = %bdate% + 1
    &end
    &type final values==== bdate, %bdate%, frame %i%
    
    &return
    
  3. Keep on running this until it is done. If you want to make an MPEG, read up on Mpeg_encode.
  4. Translate the sunraster screensave files to gifs. I used XV.
  5. The Server-Push is done with a perl script called animate.cgi that I downloaded from http://pobox.com/pobox/ (strange, I'm not able to get to them now). The script is very well commented.
I'm not sure what the best way to do this is...probably the best way doesn't exist yet.

Thanks for visiting,

Erich Schroeder
Illinois State Museum
GIS Laboratory
1011 East Ash Street
Springfield, IL 62703

erich@museum.state.il.us