Contact: zeng @ zegraph . com      Last update: 20 January 2010

Release of version 2.4 (Septemper, 2009)

Made some changes to the matrix library.

Release of version 2.3 (February, 2007)

1. Remove rarely used functions of ZeGraph and redesign its light, material, and texture objects;
2. Add single quote string in ZeScript. Now everything between two ' or two " is treaded as string;

Release of version 2.2 (January, 2007)

1. Text characters are represented by triangles. All shapes in ZeGraph are presented by points, lines, and polygons.
2. The use of light, texture, and material is redesigned for saving scene to the format of Virtual Reality Modeling Language.

Release of version 2.1 (October, 2006)

1. Thread safe at the function level.
2. Add thread primitive functions to the standard library.
3. Use :: instead of global: for global variable access.
4. Added range rexpression for getting/setting array, string, and user object.

Release ZeGraph library for C (July, 2006)

The library is for users who want to embed ZeGraph in their own program in C.

Use 64-bit integer (May, 2006)

The integer type of ZeScript is now 64-bit.
Allow using expr.expr in place of expr->expr and expr.func() in place of expr.func().
Allow getting and setting ASCII code of a string by array expression, e.g., s[0] and s[0] = 59.

Thread-Safe (March, 2006)

ZeScript core has been re-designed to address the thread-safe issue. It is possible now to execute a string of script code.

New features for ZeGraph (January, 2006)

Added EMF export support.
Added clipping and triangulating for plotting filled map using GSHHS data

New features for ZeScript (December, 2005)

1. Zescript calls user defined __get/__set functions when the variable in array access a[...] is user object type.
2. fixed a bug in the function for anchoring object in plot.

New features for ZeScript (October, 2005)

Extended ZeScript to support switch, do, and goto expressions.

New features for ZeScript and ZeGraph (September, 2005)

    1. Added class object type, which may have meta functions for handling operators.
    2. A anonymous array now may be used as the left operand in an assignment expression to take multiple return from a function.
    3. ZeGraph can nor produce GIF animation.

New feature for ZeScript (August, 2005)

    Function arguments can have default values and passing values to a function can be done through assignment.

wxWindow (July, 2005)

    Added wxWindow library for creating GUI with ZeScript.

ZeScript (June, 2005)

    A new scripting language for ZeGraph that includes good feature of Lua and C-Talk.

C-Talk libraries (February, 2005)

    Added ZeGraph for C-Talk.

From version 1.2.3 to 1.2.4 (October, 2004)

  1. Added FTP_UPLOAD option to the set() function of zeCurl and revised its callback mechanism.
  2. Added "pixels" option to the set() function of zePoint.

From version 1.2.2 to 1.2.3 (September, 2004)

  1. A zeText object can recognize Greek characters by name, e.g., <sym>alpha</sym>.
  2. Added a function to XML script to read grid data.
  3. Added vertex normal calculation function to <ze_vertex> of XML script.
  4. Added size() and transfer() function to the zeBIO object;

From version 1.2.1 to 1.2.2 (August, 2004)

  1. Added "anchor" and "size " options to the set() function of zePlot. This make positioning a axis much easier.
  2. Changed the array used to get and set texture data from double type to unsigned character type.
  3. Added toarray() function to zeRender.
  4. Added "labels" options to the set() function of zeColorBar.
  5. Added XML script for ZeGraph.
  6. Added "position" option to the set() function of zeText.

From version 1.2 to 1.2.1 (August, 2004)

  1. Added size() and get() functions to zeTexture;
  2. Added get(arr) function to zeVertex, zeColor, and zeTexCoord to transfer data from these objects to an array;
  3. Added scale() and translate() functions to zeVertex to perform transformations directly on vertices of a shape object;
  4. Added "red", "green", "blue", and "alpha" parameters to the set() function of zeTexture;
  5. Added Lua script of curve, surface, and iso-surface generators to the shape library;
  6. Made jul2cal() and cal2jul() of zeMath to accept numbers;

From version 1.1 to 1.2 (July, 2004)

  1. Slightly modified Lua source so that for the statement require("myfunc") Lua will first search and, if not found, myfunc.lua in subdirectories of ./packages, ./lib, ./shapes, and ./usr in that order.
  2. Because of the change, calling custom Lua functions is largely simplified. All Lua functions in ./lib in version 1.1 are copied to ./usr. The same functions in ./lib are modified. From now on, ZeGraph will put finalized functions in ./lib, ./packages, ./shapes; and functions in ./usr are subjected to changes.
  3. Added packages to ./packages to further customize make plots.
  4. Added predefined shapes to ./shapes.
  5. Added a function to zeMake for sorting polygons to produce better transparent blending.
  6. Added a function to zeMake to calculate the normal of a plane determined by three points.
  7. Added a function to zeMake to triangulate non-triangle shape data. (Not tessellation!)
  8. Added min() and max() functions to zeVertex to easily calculate the bounding box of a shape.

From version 1.0 to 1.1 (June, 2004)

  1. Fixed a few bugs.
  2. Divided objects and packages in the utility library into two: those involving zeArray remain and others were put in the zeAuxiliaryL.dll.
  3. Substantial changes for the calling convention of the libraries.