math2d
A collection of math utilities for 2D lines, bezier curves and arrangements made of them.
(work in progress)
Version 0.0.0
09Oct2019
program source
github
About
This is a not yet finished collection of math utilities required to deal with polygons or so called arrangements consisting of 2D lines and bezier curves. It is still under heavy development and I do not suggest to use it in its current state.
Major difference to existing math libraries is a method to define the required precision of calculated results.
Features and Development Progress
Feature 
Progress 
Basic Math 
root finding for polynomials up to 4th degree 
90% 
numerical root finding algorithm based on NewtonRaphson 
100% 
Lines 
intersection point of line and ray 
100% 
intersection point of line segments 
100% 
test if point on on line segment 
100% 
determine superposing section of two line segments 
100% 
determine graphical relationship of two line segments 
100% 
Bezier Curves 
intersection points with line segment 
100% 
intersection points of two bezier curves 
80% 
intersection points of one bezier curve with itself 
80% 
extrema in respect to X and Y 
100% 
inflection point 
100% 
split curve at arbitrary point 
100% 
merge two adjacent curves 
100% 
Arrangements of Lines (Polygons) 
planarise (split segments at intersections) 
97% 
identify faces and holes (evenodd and nonzero rule) 
97% 
triangulate faces 
97% 
Arrangements of Lines and Curves 
planarise 
0% 
identify faces and holes 
0% 
triangulate faces 
0% 
separate curved outline from inner polygon 
0% 
Final Tasks 
Source Cleanup/Refactoring 
0% 
Documentation 
0% 
