|
|
Home > Company |
|
|
|
|
Serif2D - The Serif 2D Geometry Engine
The Serif 2D Geometry Engine is a standalone DLL that implements a large number of classes concerned with the generation and manipulation of 2D point and polygon data. Serif2D is used by PagePlus, DrawPlus, PhotoPlus, and 3DPlus. Overview Container Classes There are container classes that describe Vectors, PolyLines, Polygons and PolyPolygons and PolyPolyPolygons as collections of Points. There are also container classes that describe bezier curves and will expand them into PolyLines and Polygons using either recursive or iterative algorithms. Bezier curves may be described either parametrically or by control points. Linear Transformation classes There are classes for efficiently performing Linear Transformations such as translations, rotations, skews and scaling. These can be applied to all of the container classes and can be combined and concatenated using overloaded operators such as + and +=. Geometry Classes There are a number of classes that encapsulate the following functions:
Math Utilities We have a number of highly optimized math functions, which use inline assembly code. Notes Clipping and Intersection of arbitrary PolyPolygons by
other arbitrary PolyPolygons is achieved using the GPC
Generic Polygon Clipper,
which was licensed from the Advanced Interfaces Group of Manchester University in the UK.
Anyone who requires this functionality for a commercial product should obtain a license
from them by making a voluntary donation to the Advanced Interfaces Group. |
||||||||||||||||||||||||||||||||||||||||||||