v0.3.0
This is the first version of lintrans that I would consider feature complete according to my initial plan. It is a public beta and things will almost certainly change before v1.0.0.
This version shouldn't really be used in classrooms yet, and is only meant as a review version, available for teachers and students to test and provide feedback on. Version 1.0.0 should hopefully be available by September or October 2022, and that will be recommended for use in classrooms, and by students who are new to the subject.
I highly recommend reading the tutorial, available here.
The Windows .exe
file should work fine, but you might get a warning that the program might be unsafe. This is expected and it's safe to ignore it. The only way to get rid of it would be to pay Microsoft. On macOS, I would need to pay Apple to allow other people to run it at all.
If this warning bothers you or if you want to use lintrans
on macOS, then you can compile the program from its source code. This is a relatively simple process and the tutorial for doing that is available here.
The Linux binary is a dynamically linked ELF compiled on Ubuntu 20.04 and may or may not work on other distros. Compiling is also an option for Linux. See the tutorial above.
Added
- Qt5 and PyQt5 version numbers to the About dialog box
- Basis vectors now snap to integer coordinates in the visual definition dialog
- Allow for transitional animation in sequential animation (comma syntax)
- Info panel to display defined matrices
- Icon for window and taskbar
- Implement saving and loading session files
- Add comprehensive crash reports
- Add parentheses to the numerical definition dialog
- Make display settings resettable
- Save sessions and crash reports to a specific place in the user's home directory
- Add
Quit
action inFile
menu - Add option to label i and j basis vectors
- Add user-friendly bug report and feature suggestion forms that don't require a GitHub account
(Help
>Give feedback
) - The user can now define an arbitrary polygon and see its transformation
- Saved sessions should now work between lintrans versions
- Add usage tutorial
- Add compilation tutorial
- The user can now drag an input vector in the main viewport and see its transformed output
Fixed
- Make program compatible with Python 3.8 and above
- Make link to documentation in help menu actually link properly
- Fix bug with stretches being detected as rotations
- Cancel animation before closing to prevent the app hanging in the background
- Make matrices with a column of 0s only render 1 rank line
- Reduce memory usage by automatically deleting closed dialogs
- Fix bug with matrices that are too small creating lag with too many lines
- Fix bug that caused crashes when animating very large matrices
- Fix bug where
validate_matrix_expression
would return True, but the expression was unable to be
parsed, causing a crash - Fix crash when animation time was 0
- Fix bug where animations would reset to
I
if the user reset before animating - Fix bug that would cause a crash if a matrix indirectly referenced itself