Tue Feb 28 19:09:56 PST 1995

Release v3.02 Alpha test

(C) COPYRIGHT 1991-1994 Paul J Turner
All Rights Reserved

XMGR IS PROVIDED "AS IS" AND WITHOUT ANY WARRANTY EXPRESS OR IMPLIED. THE
USER ASSUMES ALL RISKS OF USING  XMGR. THERE IS NO CLAIM OF THE
MERCHANTABILITY OR FITNESS FOR A PARTICULAR  PURPOSE.

YOU MAY MAKE COPIES OF XMGR FOR YOUR OWN USE, AND MODIFY THOSE COPIES.
YOU MAY NOT DISTRIBUTE ANY MODIFIED SOURCE CODE OR DOCUMENTATION TO USERS 
AT ANY SITES OTHER THAN YOUR OWN.

Xmgr Release v3.02

This is xmgr Release 3.02, a plotting tool for workstations using Motif/X.
Source code is available via anonymous ftp to:

    ftp.ccalmr.ogi.edu [129.95.72.34]:/CCALMR/pub/acegr/xmgr-3.02.tar.Z

To build xmgr, cd to xmgr-3.02/src, edit the Makefile and type 'make', 
or use the Imakefile. I don't use imake in the course of development so 
there are most likely problems with the Imakefile.

For a demo, in xmgr-3.02/examples is a script 'dotest' (see the file 
README.ex in the examples subdirectory about the particulars of the 
script), edit 'dotest' to make sure that the variable ACEGR is pointing
to the correct executable. You might let me know about problems you may 
encounter running the demos. Some of the demos are for color systems 
only and will not draw meaningful graphs on mono or grayscale systems.

Xmgr 3.02 has been compiled on SGIs, RS6000s, Decstations, DEC
Alpha, Suns (SunOS 4.1.x and Solaris), HP 7xx, and Linux.

On some systems, the file pars.c will need to be compiled separately. Use the 
'cc' command provided in the Makefile to compile pars.c, then 'make' to 
resume the compilation.

RELEASE NOTES:

This version will not compile on systems using X11R3 with Motif 1.0x.

Documentation is in better shape but a lot of work remains.

Linux is now my primary development system.

There is now a mailing list for users of ACE/gr send mail to:

        majordomo@admin.ogi.edu

with a body of (not in the "Subject:" line):

        subscribe acegr

to subscribe. Majordomo is a mail list management package, and automatically
handles additions and removals from the list. For information about majordomo
at our site, sent mail to majordomo@admin.ogi.edu with a body of

        help

Use the address, acegr@admin.ogi.edu, to send mail to the list.

Please use the mailing list for comments, suggestions, and bug reports,
but keep in mind that there are > 150 addresses in the list. Also take note
that, as machines come and go, some subscribers will have addresses on the
list that will not resolve to a deliverable mailbox causing mail to
bounce - if you send mail to the list and get bounced mail back, it is most 
likely being returned from some machine on the list, and not the list host 
machine.

CHANGES:
-----------------------------------------
The following bugs should be closed for 3.02

Assumption about the way realloc() works was incorrect - there is no
guarantee the the additional memory is zero'ed - this led to core dumps
on SGIs when using the -maxsets commandline parameter.

getvptr() in pars.yacc returned pointers from sets in the current graph
only.

arrange() used for the -arrange command line option was broken.

Several problems with links in the HTML documentation.

Numerous functions were declared XtCallbackProc when they should've been
void.
-----------------------------------------
Additions/modifications

From 3.01 to 3.02

* added a new demo, cd to examples and run:

xmgr -arrange 2 2 -b test.com

* No limit on the number of columns of block data. See the -maxblock option.

* Added formats YYMMDD and YYMMDDHMS For tick labeling.

* Read time/date formats from XY data files.

  Before reading the file, toss in a:

@format YYMMDD
# then
    YY-MM-DD y

@format YYMMDDHMS
# then
    YY-MM-DD HH:MM:SS.S y

@format MMDDYY
# then
    MM-DD-YY y

@format MMDDYYHMS
# then
    MM-DD-YY HH:MM:SS.S y

  There is no support for writing time/date formats.

* Colors can be changed on the fly.

* Tick marks and grid lines are now set separately.

* Added as274 for performing the least squares fits for
  polynomials, seems to be fairly robust, the default is
  the original - form the normal equations and use gauss 
  elimination.

* Allow logging of strings passed to the scanner, should help in
  debugging batch files.

* Tick marks and gridlines are now draw separately - you can have ticks
  OUT while having gridlines.

* Edit points has been rearranged, the popup for the location and the 
  buttons for actions are now in the same popup.

* Added a command that can be used to either truncate or lengthen a set.

   SETNUM LENGTH n
or
   GRAPHNO.SETNUM LENGTH n

s0 length 100
g1.s4 length 1024

* Added commands to kill sets, but save the paramter settings:

# kill the given set, but preserve parameter settings
kill s5 saveall

# kill all sets, but preserve parameter settings
kill sets saveall

* Added arrange command, this does not allow the control over
  the layout that the popup does, but should be useful.

arrange 2, 2
  
  Makes 4 graphs, arranged 2x2.

-----------------------------------------
The following bugs should be closed for 3.01

In Regions/Extract points, the To set is off by one and set 0 cannot
be used as a destination.

HDF variables with names containing imbedded blanks not read.

Nonlinear curve fitting module broken (this is not a 
supported feature).

DX and DY in the yacc grammar refer to X and Y of the current set.
Formerly, these referred to the span of X and Y wrt to the current 
graph.

Selecting the set and graph in Data/Transformations/Histogram have
no effect. Next available set in the current graph is used for the
result.

XYRT data sets can generate errors in PostScript output.
Could be due to small radii.

Delete points in regions causes core dump.

Interpolation module in Data/Transformations not implemented.
For a later release.

Information about hot links was not saved properly, nor was
the popup updated when hot link info was read in from a file.

-----------------------------------------
Changes From 2.xx to 3.00

* Documentation is now done using HTML and Mosaic.

* additional command line parameters for creating sets from
  block data:

  -bxy col1:col2

  will create a set using the current set type (default is XY) using
  column 1 and column 2 from the most recently read set of block data.
  col1 and col2 are integers indicating the number of the column - where
  column number start from 1. For example:

  xmgr -block block.d -bxy 1:4 -bxy 2:6

  will read block.d and generate 2 sets of type XY using columns
  1 and 4 and 2 and 6.

  xmgr -block block.d -type xydy -bxy 1:3:4

  will read  block.d and generate a set of type XYDY (an XY set with
  error bars) using column 1 and 3 for X and Y, and column 4 for the 
  error bars.

* Enhancements to the Interleaf driver, contributed by Kidambi Sreenivas 
  (sree@erc.msstate.edu) with help from Sudarshan Kadambi 
  (sudi@erc.msstate.edu) from the original by Mike Putnam (putnam@nosc.mil).

* Limited netCDF support

With help from Chris Webster (chris@chinook.atd.ucar.EDU), limited support
for netCDF has been included. I may include the ability to slice higher
dimensioned variables, but for now, only 1d variables are supported.

* Sort sets operates on sets of any type

* Prototypes.

* Added Hot links - this allows a set to be linked to a particular file
or pipe. In the Data/Hot links popup are items to link, unlink, and
update the hot link. The only supported set type is XY (this will 
change to include other set types). 

* Added a page layout item like the XView version. There is a problem
with servers that have backing store - if the layout is free (meaning
that the drawing area will resize to fit the size of the main window)
and ACE/gr is resized, the canvas will not expand to fill the frame.
A workaround is to hit the Page/Free toggle to force a new size for
the drawing area.

-----------------------------------
Problems and works in progress:

  * Working on Drag n Drop
  * I'm waiting for the 4.0 release of the Xbae matrix widget before
    completing the additions for the Data/Edit-create sets feature.
  * The Julian date routines do not adjust for local time,
  * Region operations only work on sets of type XY
  * Log plot major tick spacing needs to be in terms of magnitudes.
  * Changing to PostScript fonts has led to problems with the mapping
	of Greek and special characters (Hershey fonts are still used
	for on screen text). I've tried to adhere to the PostScript
	collating sequence for Greek characters - I've not got to the
	special characters yet, so this remains a problem. There is also
	a difference in size between the Hershey and PostScript fonts
	that leads to problems in getting WYSIWYG hardcopy.
  * The fills and patterns drawn on the screen and the .mif output are
	not matched in the PostScript output. I know how to do it,
	but I haven't found the time.

Comments and bug reports to the acegr mailing list:

acegr@admin.ogi.edu

Paul J Turner