Collection of lualatex-printable mathematical objects, including geometric shapes.
Project description
Overview
Mathmaker Lib offers lualatex-printable mathematical objects.
Contact: nh dot techn (hosted by gmail dot com)
Changelog
Version 0.7 (2018-06-18)
Now Points, as well as other basic geometric objects, may be 2D or 3D.
Add first three-dimensional objects: Polyhedron and RightCuboid.
Add first flat representation of polyhedra: ObliqueProjection
Extend units conversions to areas, volumes and conversions between capacities and volumes (from m³ to mm³).
Add ClockTime object to easily deal with times.
Accept floats to initialize Numbers (the float being converted to str).
Patches 0.7.1, 0.7.2, 0.7.3 and 0.7.4 (2018-11-16, 2018-11-20, 2019-02-20 and 2019-02-22)
Fix Number.rounded() for precisions greater than 10 (e.g. 10, 100, 1000 etc.)
Add Number.highest_digitplace() and Number.estimation()
Add ‘siunitx’ variant keyword value to Number.imprint() (in order to print numbers as \num{…})
Modify ClockTime object’s context.
Include a logo.
Bugfix.
Patches 0.7.5 and 0.7.6 (2022-02-11 and 2022-02-15)
Add XAxis object.
Some cleanup.
Version 0.6 (2018-04-12)
A standalone Angle or AnglesSet can be drawn. Enrich Angles’ decorations (hatch marks, labeling, second decoration etc.).
An integer Number can be split as a sum of integers ± 0.5 (or ± 0.25)
Add Number.lowest_nonzero_digit_index()
Patch Number.split() to get a consistent behaviour for integers too (default split will be done at lowest non zero digit place: 500 will be split as 100 + 400, or 200 + 300 etc. and with dig=1, it will be split as 10 + 490, or 20 + 480 etc.).
Fix: Numbers with an angle’s unit should be displayed as \ang{…} rather than \SI{…}{\textdegree}.
Add basic classes to handle LaTeX commands and options’ lists.
Patches 0.6.1 to 0.6.4 (2018-04-13, 2018-04-30, 2018-05-02 and 2018-05-05)
Add a constant in LaTeX module
Add Number.digits_sum()
Add Number.digits and Number.digit()
Add some amsmath symbols.
Version 0.5 (2018-01-10)
Add Number.quantize().
A Number can be converted into a another unit of the same physical quantity.
Accept int as exponent (or even content) of an Exponented.
Fractions can be created from a decimal Number.
Fractions become Evaluable and can be compared to other numbers.
Standalone Units will be printed using siunitx (e.g. as ‘\si{cm}’).
Fix bug: current locale is ignored when printing a number having a unit.
Do not automatically remove possible trailing zeros when printing a Number.
Add the tonne (t) as mass unit.
An optional patch allow Polygons to be drawn to the first vertex again instead of only cycling (default behaviour).
Version 0.4 (2017-12-19)
Add more complex geometric objects: Polygon, Triangle, RightTriangle, EquilateralTriangle, IsoscelesTriangle, Quadrilateral, Rhombus, Rectangle, Square.
Numbers can be “copied” using copy.copy() or copy.deepcopy().
Add Point.rotate().
Add the ability to change the size of Point’s drawn shape (using Point.shape_scale).
Add LineSegment.mark and the ability to change its size (using LineSegment.mark_scale).
mathmakerlib.requires_pkg becomes mathmakerlib.required and will also handle required options and hacks.
Add module mathmakerlib.mmlib_setup to configure the behaviour (default values etc.).
Patch 0.4.1 (2018-01-01)
Fix the locale monkey patch.
Version 0.3 (2017-11-17)
Add basic geometric objects: Point, LineSegment and DividedLineSegment.
Add Fraction.
Add module mathmakerlib.requires_pkg that tells which LaTeX packages will be required to compile the document (like tikz, xcolor, siunitx…).
Version 0.2 (2017-11-01)
Add Sign, Exponented and Unit classes.
Numbers are now Signed objects and may be assigned a Unit.
Patches 0.2.1 and 0.2.2 (2017-11-02)
Bring back Numbers’ hashability.
Add physical_quantity() in unit module.
Initial version 0.1 (2017-10-24)
Number class and decimal numbers’ related functions.
Contributors
Development
Lead developer: Nicolas Hainaux
Clever advices: Olivier Cecillon
Patience and chocolate cakes
Sophie Reboud
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.