gunzip evolver-2.20.tar.gzExtract the files with
tar xvf evolver.tarThis will unpack into three subdirectories: src (source code), doc (the manual), and fe (sample datafiles). The packed archive is about 2MB, unpacks to about 5MB. You will probably need another 3 or 4 MB to compile. See below for compilation instructions.
Set it up as usual in your system, in .profile or .login or .cshrc or wherever:
Unix C shell:
setenv EVOLVERPATH /usr/you/evolver/fe:/usr/you/evolver/docBourne shell:
EVOLVERPATH=/usr/you/evolver/fe:/usr/you/evolver/doc export EVOLVERPATH
GLUT graphics uses a separate thread to display graphics, so if you use GLUT, you must compile with -DPTHREADS and put -lpthread in GRAPHLIB.
If you want Evolver to be able to use geomview, include -DOOGL in CFLAGS.
If you want Evolver to operate in a higher space dimension n than the default maximum of 4, include -DMAXCOORD=n in CFLAGS. This sets the upper limit of dimensionality, and is used for allocating space in data structures. You can use -DMAXCOORD=3 to save a little memory.
If your system supports the long double data type, you can compute in higher precision by compiling with -DLONGDOUBLE in CFLAGS. But this slows computations, and should be used only by precision fanatics.
You can let the compiler optimize better if you hard-wire the space dimension into the code with the compiler option -DSDIM=n, where n is the desired dimension of space. But such an Evolver can handle only the given space dimension, nothing higher or lower.
Silicon Graphics systems with multiple processors may compile a version that will use all processors for some calculations by including -DSGI_MULTI in CFLAGS. This version will run fine with one processor, also. Currently, the only calculations done in parallel are the "named quantities". The number of processes actually done in parallel can be controlled with the -pn command line option.
The file include.h lists the include files for various systems. If your system isn't listed, you will have to put in a list of your own. Try copying the generic list (or one of the others) and compiling. Your compiler will no doubt be very friendly and helpful in pointing out unfound header files. include.h also has various other system-specific defines. See the GENERIC section of it for comments on these, and include the appropriate ones for your system.
Now try compiling. Hopefully, you will only have to change the system-specific parts of Makefile and include.h to get things to work. If significant changes to other files are needed, let me know.
Test by running on the cube sample file as described in the Tutorial.
Installing geomview
If your system does not have OpenGL/GLUT, I suggest you
get the
geomview package from The Geometry
Center. There are pre-compiled binaries for many unix systems here.
Follow geomview's installation directions, and make sure that geomview
is accessible through your PATH. NOTE: The X windows versions
of geomview seem to require some event to occur in the geomview display
window before it will redraw after loading a new datafile. So if
geomview seems hung, just run the mouse over the window to give it an
event to wake it up.
You should also create an environment variable EVOLVERPATH telling Evolver where to search for various files. Do this by opening Control Panel/System/Advanced/Environment Variables, clicking New under System Variables, entering EVOLVERPATH for the Variable name, and c:\evolver\fe;c:\evolver\doc for the Variable value. You may add further paths of your own to this list if you wish.
To make Evolver start automatically when you click on a *.fe file, you can associate Evolver with the file extension .fe by opening My Computer/Tools/Folder Options/File Types/New, entering the File Extension fe, clicking OK, clicking Change, and browsing for the evolver.exe program. (This sequence of actions may vary on different Windows versions.)
The Windows version uses OpenGL/GLUT graphics. OpenGL is standard in Windows, and all the necessary GLUT components are included in the executable, so you don't have to install anything.
There is a Mac OSX version at Evolver220-OSX.tar.gz. After downloading and unpacking it, you probably get a folder Evolver220-OSX, which has the executable file Evolver, the samples folder fe, and the documentation folder doc. You can move the executable to some place on your PATH, or add the folder to your PATH. You should also create an environment variable EVOLVERPATH containing paths to the fe and doc folders by placing the following line in your {\tt .tcshrc} file, with appropriate modifications:
setenv EVOLVERPATH /User/yourname/Evolver220-OSX/fe:/User/yourname/Evolver220-OSX/doc
This version descends from the unix version, not the Mac OS 9 version, so you must run it from a terminal window. It uses OpenGL GLUT graphics, which are standard with OSX.
The archive file contains:
Installation: All you need to do is unpack in a directory somewhere. The datafiles can go in a different directory, but then you will have to supply path names when using them.
At start-up, you will be asked to enter the name of a datafile in the text window. If the file is not in the same directory, you will have to give the path also. For a Mac, the path character is a colon. Leading colons on the path go to parent folders.
Redirecting output: The Mac doesn't have piping to other programs, so piped output of commands goes to a file. Example:
list vertices | "outfile"Interrupting a repeating command: Hit command-period. Will complete current command and return to command prompt.
Memory partition: The default partition size is 8 Meg. Evolver will run in 2 Meg, but your surfaces won't be able to be very complex. I suggest making the partition as large as you can. You can change the partition size with Finder GetInfo.