Next: 1.1.2 Overview of GMT
Up: 1.1 What is new
Previous: 1.1 What is new
Contents
Index
Changes are once again a mix of structural improvements, bug fixes, and a few enhancements.
The coastline files (now GSHHS 1.10) have seen minor modifications, the mex supplement now offers
support for Octave, all source code is now fully
64-bit compliant, we have added an isolation mode option (if GMT_TMPDIR is defined, write
temporary and hidden files to that directory),
and the configure/make setup has been further improved (such as honoring CFLAGS and LDFLAGS set by user).
Colors may now be specified
as hexadecimal codes (e.g., #ff0000 for red), and projections can be specified by name
(similar to Proj4). Finally, binary table
data can now be COARDS-compliant netCDF files. As for documentation, we have now switched from
C shell to Bourne shell (although the csh examples are still distributed).
The following lists specific enhancements or new program options:
- gmt_grdio.c is modified so the grid i/o supports the GMT_[DATA
IMG
GRID]DIR environment settings.
- gmt_init.c was enhanced so -U can now interpret a justification (e.g., just/dx/dy on the command line or by setting UNIX_TIME_POS) and we introduced a new default parameter UNIX_TIME_FORMAT which controls the formatting
of the timestamp.
- gmt_io.c now implements -b[i
o]c[var1/...] option to indicate input is netCDF.
- gmtmath recognizes new constants TMIN, TMAX, TINC, and N.
- grdimage uses -N to not clip image at map boundary.
- grdview now uses -Wf to change the facade pen from its default value.
- grdmath recognizes new constants XMIN, XMAX, XINC, NX, and similarly
YMIN, YMAX, YINC, NY.
- mapproject -G+ will compute distances between coordinates in first 4 columns.
- ps2raster has new option -D to specify alternative output directory and -V to report progress.
- psrose has new option -F to disable the plotting of the scale bar.
- psxyz has new option -D to match option set in psxy.
- mgd77/mgd77list added -Ga
brec to limit output to a certain record range.
- spotter/hotspotter added -S to normalize output to percent of CVA maximum.
- spotter/grdspotter is a new program, like hotspotter, but using gridded data as input.
A long list of bugs has been squashed since the last release, the most important are listed below:
- gmt_grdio.c
- : Fixed 3 bugs in GMT_decode_grd_h_info that caused problems parsing -D
option. Explicitly exclude = sign from becoming separator.
- gmt_io.c
- : Now skips blank lines that has leading whitespace.
- gmt_init.c
- : c for seconds was not recognized as TIME_UNIT (expected s,
which is kept for backwards compatibility). -B processing of labels used an internal string that was too short,
which could lead to label truncation. Fixed ``Holiday-bug'' in GMT_parse_J_option introduced 2007-12-21.
GMT_str_tolower could run out of bounds. Probably only affected 32-bit compilers.
GMT_is_a_blank_line is now used wherever ascii input is processed.
- gmt_map.c
- : Fixed bug in radial clipping. The radial clipping would sometimes add arcs using the arc that
exceeds 180 degrees. Added new rectangular clip function using Sutherland/Hodgman algorithm
in order to fix incorrect results in grdlandmask. Minor bug in 4th term in conformal to geodetic lat.
Round-off could mess mapping of west/east to xmin/xmax. Now has a safety valve for checking that this does not occur.
- gmt_plot.c
- : 3-D basemap axis did not use LABEL_OFFSET.
- gmt_proj.c
- : Fixed bug in azimuthal equal area projection that had the
horizon shifted from where it ought to be. Avoid error in GMT_lamb_sph when lat is 90 degrees.
Clip path for general perspective projection was not closed. For -JS: Would set slice to NaN if central meridian was not Greenwich.
For -JR: Longitudes beyond 180 were set to 180.
- gmt_stat.c
- : Bug in GMT_median would sometime give subtle mistakes, most noticeable
when only a few values were passed to the function. Traced to the use
of size_t variables in expressions that could yield a negative value.
Fixed minor issues in GMT_PvQv function.
- gmt_support.c
- : Made GMT_polygon_is_open tolerant of round-off and if
polygon is not open set last to exactly equal first point. GMT_get_annot_label did not
properly honor the ddd.xx setting. Now implements annotation for Gnomonic maps.
In GMT_contour, would occasionally not check internal crossings for some interior contours.
- pslib.c
- : Bug in ps_shorten_path lead to SEGV when path resulted in a single point.
Fixed error in applying pstext's -Djdx/dy shift in paragraph mode (-M).
Redefine rect symbol to be less prone to round-off.
Used internal point_code before it was initialized. This
caused PAGE_COLOR not to work (wrote
NUL
rather than C).
- gmtmath.c
- : Implemented Welford (1962) algorithm in KURT, SKEW and STD operators
for more precise one-pass computation of mean and sum of squares.
- gmtselect.c
- : The -:o option failed to reverse output order.
- grd2xyz.c
- : Do not abort when -R exceeds grid; simply output common region.
For gridline oriented grids: -E returned xll and yll one cell too large. Now writing [xy]llcenter properly.
- grdblend.c
- : Did not pick up node registration before calculating output grid size.
- grdedit.c
- : Adjust z_min and z_max when changing add_offset or scale_factor.
- grdgradient.c
- : With -D and -S the slopes were not set to NaN if data were NaN.
- grdinfo.c
- : Implemented Welford (1962) algorithm for more precise one-pass
computation of mean and sum of squares. zmin==zmax no longer forces -M option.
- grdmask.c
- : Tiny bug for determining which hemisphere (N/S) unlikely to have had any effect.
Needed to allow for some slop when comparing shrink to 0.0 since sometimes the result of acos is 1e-14 or thereabouts.
- grdmath.c
- : Implemented Welford (1962) algorithm in KURT, SKEW and STD operators
for more precise one-pass computation of mean and sum of squares.
- grdview.c
- : The facade (-N) outline was drawn with contour pen.
The -Qc option failed to set the ``build image'' flag and produced
garbage surface tiles. Also, -T[s] produced polygons that were
not checked for wrapping at a periodic map boundary. Clarified that -T cannot take -JZ
z.
- minmax.c
- : Could get confused when longitudes crossed dateline or Greenwich,
and OUTPUT_DEGREE_FORMAT could interfere with result.
- pscontour.c
- : -T option was susceptible to infinite loop if bad record was found.
- pshistogram.c
- : The -R option was processed separately and did not understand time coordinates.
Bug in -F option failed to center bins.
- psmask.c
- : The -D option used the wrong output file name.
- psscale.c
- : Inverted vertical scale, when using filled rectangles:
Colors remained in the original order. Inverted vertical or horizontal
scale, when using rectangles with gradients: Size of rectangles followed
original order, not inverted. In reverse mode, -Eb was plotting
foreground triangle, -Ef background triangle.
- pstext.c
- : Parsing of -C complained about % sign.
- psxy.c
- : If first symbol in list with size was not circle, it got rejected.
When sizes of -Sr or -Sj were read from list, they were always assumed to be in inches.
Drawing arrows with -SvS and time-coordinates did not work as 2nd time coordinate did not get processed properly.
- psxyz.c
- : If first symbol in list with size was not circle, it got rejected.
When sizes of -Sr or -Sj were read from list, they were always assumed to be in inches.
- sample1d.c
- : Calendar time knots did not get properly interpreted with -N.
- mgg/mgd77togmt.c
- : Did not initialize the MGG_SHAREDIR path.
- mgd77/mgd77.c
- : Wrong header order written if mgd77convert ... -Tt was used.
- mgd77/mgd77info.c
- : Could get confused when longitudes crossed dateline or Greenwich,
and OUTPUT_DEGREE_FORMAT could interfere with result.
- mgd77/mgd77sniffer.c
- : Numerous fixes and enhancements; see ChangeLog.
- x2sys/x2sys.c
- : Error in determining which columns had been requested.
- x2sys/x2sys_binlist.c
- : Could create bad bins because of incorrect reallocation of memory.
- x2sys/x2sys_get.c
- : The -L option did not honor any -F or -N settings.
- x2sys/x2sys_put.c
- : Wrong test when replacing older track info lead to data base loss.
- x2sys/x2sys_cross.c
- : Used wrong data column order and computed speed when there is no time.
Next: 1.1.2 Overview of GMT
Up: 1.1 What is new
Previous: 1.1 What is new
Contents
Index
Paul Wessel
2008-05-02