Serif - Software With Imagination PagePlus X2. Half Price
Basket: Total:
0 items
$0.00
Login  
PagePlus PhotoPlus DrawPlus WebPlus MoviePlus PanoramaPlus ImpactPlus AlbumPlus FontManager MediaPlus PopArtPlus MontagePlus Other Products
Price List Online Store Purchase & Download Order Direct Upgrade Center Corporate Educational
Contact Support My Account Tutorials Updates & Patches Product Registration FAQs Support Policies Product Manuals
Forums Affiliates Contest Newsletter 'How To' Guides User Submissions Link To Us
OEM Partners Distributors Reseller Partners Become a Partner
About Serif News Media Section Technology Career Opportunities Contact Us License Agreements Legal Notices
Technology
About Serif
News
Media Section
Technology
Text Engine
· Geometry Engine
Graphics Engine
OEM Licensing
Image Warping
Career Opportunities
Contact Us
License Agreements
Terms and Conditions
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:

  • Converting TrueType Text to PolyPolygons.
  • Highly optimized Hit-Testing of arbitrary Polygons and Polylines.
  • Fitting Bezier Curves to sampled point data.
  • Rectangular and Arbitrary Polygon Clipping (see notes)
  • Generation of QuickShapes ™, PolyPolygons generated from parametric data which describe flowers, stars, regular polygons and a wide variety of other shapes and symbols.

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.