**NOTE:**This thread has been moved to here!

Hello ladies and gents! Here is MLib:

What?

MLib is a math and collisions library.

Check out the GitHub to see more information.

You can download it below.

**History:**Most recent updates are in red

**v. 2.0.0**-

*Made mlib.shape and made numberous bug fixes.*

**v. 1.9.4**-

*Made mlib.math.prime faster and removed ability to test multiple numbers at once. Thanks Robin!*

**v. 1.9.3**-

*Fixed polygon.area and polygon.centroid*

**v. 1.9.2**-

*Updated to 0.9.0.*

**v. 1.9.1**-

*Made mlib.line.closestPoint able to take either two points on the slope or the slope and intercept.*

**v. 1.9.0**-

*Added mlib.lineSegmentIntersects (no affiliation with previous one (changed to mlib.line.segment.intersect)) and mlib.line.closestPoint*

**v. 1.8.3**-

*Changed naming mechanism to be more organized.*

**v. 1.8.2**-

*"Fixed" mlib.lineSegmentsIntersect AGAIN!!!!*

**v. 1.8.1**-

*Removed a print statement.*

**v. 1.8.0**-

*mlib.pointInPolygon added*

**v. 1.7.5**-

*mlib.lineSegmentsIntersect vertical lines fixed again. This time for real. I promise... or hope, at least...*

**v. 1.7.4**-

*mlib.lineSegmentsIntersect vertical parallels fixed*

**v. 1.7.3**-

*mlib.lineSegmentsIntersect parallels fixed*

**v. 1.7.2**-

*mlib.lineSegmentsIntersect now handles vertical lines*

**v. 1.7.1**-

*mlib.lineSegmentsIntersect now returns the two places in between where the line segments begin to intersect.*

**v. 1.7.0**-

*Added mlib.circlesIntersect, mlib.pointOnLineSegment, mlib.linesIntersect, and mlib.lineSegmentsIntersect*

**v. 1.6.1**-

*Employed usage of summations for mlib.getPolygonArea and mlib.getPolygonCentroid and removed area as an argument for mlib.getPolygonCentroid.*

**v. 1.6.0**-

*Added several functions.*

**v. 1.5.0**-

*Made lots of changes to syntax to make it easier to use (hopefully). I also put out specs.*

**v. 1.4.1**-

*Localized mlib. Thanks, Yonaba!*

**v. 1.4.0**-

*Added mlib.getPolygonCentroid (gets the midpoint of a non-self-intersecting polygons)*

**v. 1.3.2**-

*Made mlib.getPrime take tables as arguments, so you can check all the values of a table.*

**v. 1.3.1**-

*Changed name method to mlib.getPolygonArea*

**v. 1.3.0**-

*Added mlib.get_polygon_area and removed mlib.get_convex_area and mlib.get_triangle_area since they are repetitive.*

**v. 1.2.2**-

*Made functions return faster, functions that previously returned tables now return multiple arguments.*

**v. 1.2.1**-

*Localized functions, made tables acceptable as arguments, refined function speed, mlib.get_mode now returns number most repeated as well as how many times.*

**v. 1.2.0**-

*Added mlib.get_angle*

**v. 1.1.0**-

*Added mlib.get_convex_area*

**v. 1.0.4**-

*Fixed get_mode to handle bimodials.*

**v. 1.0.3**-

*Prime Checker optimized (hopefully final update on this.)*

**v. 1.0.2**-

*Prime checker now works! (At least to 1000. I haven't tested any further)*

**v. 1.0.1**-

*'Fixed' the prime checker*

**v. 1.0.0**-

*Initial release*