WorldForge::wfmath 0.3.5 review

by on

WorldForge::wfmath's primary focus is geometric objects

License: GPL (GNU General Public License)
File size: 0K
Developer: Ron Steinke
0 stars award from

WorldForge::wfmath's primary focus is geometric objects. Thus, it includes several shapes (boxes, balls, lines), in addition to the basic math objects that are used to build these shapes (points, vectors, matricies).

Most of the library classes can be divided into two sorts. The first kind are basic mathematical objects, whose members are all fundamental types. The second kind are shapes, which implement the shape class interface described in doc/shape.h. There are four classes of the first kind:

Vector< >
A basic mathematical vector

RotMatrix< >
An orthogonal matrix of determinant 1, useful for describing rotations.

Point< >
A point in space. This basic class also implements the shape interface in doc/shape.h.
A quaternion
The shape classes are:

AxisBox< >
A box oriented parallel to the coordinate axes

Ball< >
Ball< 2 > is a circle, Ball< 3 > is a sphere, etc.

Segment< >
A line segment, defined by its endpoints

RotBox< >
Like AxisBox< >, but it can be rotated to arbitrary angles

Polygon< >
A 2 dimensional polygon contained in a (possibly) larger dimensional space

The library also contains some probability-related functions, as well as wrappers for system time and random number functions.

WFMath requires an ISO C++ compiler. Atlas-C++ is not required in order to build WFMath, but if it is present then some inline conversion function tests will be built.

What's New in This Release:
The Quaternion class has been modified so that in a number of cases when it is initialised from data that would result in corruption, its valid flag is cleared.
Many arithmetic operator functions have been reimplemented to make them more efficient and more compact.

WorldForge::wfmath 0.3.5 search tags