Skip to content

Releases: KmolYuan/Pyslvs-UI

Pyslvs v19.02.0

26 Feb 04:05
Compare
Choose a tag to compare

Features

  • Add single graph saving function for synthesis collection panel.
  • UI description improvements.
  • Removed "ground enumerate" button of synthesis collection panel.
  • Fix the bug of deleting a point is inside the input pairs.
  • Fix the bug of limitation option when algorithm option loaded.
  • Widget focus behavior correction of tables.
  • Fix the bug of saving a YAML project.
  • Remove "solution" preview function from preview canvas class.
  • Adjustment margin size of preview window.
  • Support the "Categories" key of AppImage desktop file.
  • Enhancement of "link adjust" function.
  • Enhancement of mechanism grammar.
  • Set the table headers to auto resize mode.
  • Change the merge behavior of synthesis result as add to storage.
  • New style selection tip widget instead of QToolTip.
  • Solve the memory leak of Qt dialogs.
  • Unified the IO encoding of text-based files.

Development

  • Stop support Python 3.6 or below.
  • Since become 3.7:
    • Follow the literal type annotation style instead of strings.
    • Recursive import when doing type checking.
    • Generic typing with Qt object is allowed.
  • Change the name of all most camelcase methods to lowercase.
  • Re-design the inherit method of main window classes.
  • Simplified Qt module introduction when imported.
  • Rename "signal" and "slot" introduction of PyQt.
  • Enhancement of enum types.
  • Adjust limitation option of algorithm to "max_gen", "min_fit" and "max_time".
  • BFGS solver:
    • Fix memory leaked.
    • Reformat the wrapper for more readability.
  • Rename the dialog resources as "dialogs".
  • Refactor of all widgets names into underscore lowercase.
  • Add generate source function with "generate_source.py".
  • Environment of Visual Studio 2017 version 15.9 supported.

Pyslvs v18.12.0

30 Dec 06:42
Compare
Choose a tag to compare

Features

  • "External loop" layout for atlas of structural synthesis.
  • Other layout functions are removed from option.
  • Add progress dialog for number synthesis.
  • Fix the error of dimensional synthesis.
  • Fix the bug of number synthesis when import from mechanism.
  • Image background color fixed for structural synthesis atlas.

Development

  • Methods and function naming corrections of Cython libraries.
  • Removed NetworkX requirement.
  • Two functions are moved to core kernel. ("edges_view" and "graph2vpoints")
  • Add "--platform" argument for Qt plugins.
  • Optimization of joint type of "VPoint" class from core kernel.
  • Update SHELL variable of Makefile on Windows platform.
  • Environment of Visual Studio 2017 version 15.8 supported. (_MSC_VER == 1915)

Pyslvs v18.11.0

30 Nov 06:18
Compare
Choose a tag to compare

Features

  • UI improvement of structural synthesis and collection panel.
    • Record inspected information.
    • Show more attributes of the graph.
    • Add "Find by links" and "Find by contracted links" buttons.
    • Add "Link as node" option in structural collection panel, but the layout is readonly.
      Auto match graph assortments that came from "mechanism" page.
  • Add independent option of contracted link assortments.
  • Fix EOF error when loading edge set data from text file.
  • Removed unnecessary layout engine option.

Development

  • Replaced all most NetworkX graph type to Pyslvs graph type.
  • Removed PyDot requirement.
  • Add planar graph checking of atlas algorithm.
  • Performance improvements of atlas algorithm (Object creation and function calling).

Pyslvs v18.10.0

31 Oct 07:18
Compare
Choose a tag to compare

Features

  • UI adjustments of "Synthesis" tab pages.
  • Adjust options of structural synthesis.
  • Remove "time and fitness" data in file format.
  • Chart dialog only shows after the algorithm completed.
  • Fixed bug in batch function of algorithm tasks.

Development

  • Improvements of "Adesign" kernel.
  • Fixed an error caused by DE strategy option.
  • High performance improvements of atlas algorithm.

Pyslvs v18.09.1

17 Oct 13:26
Compare
Choose a tag to compare

Features

  • Fix "Save as" error on Qt slot.
  • New YAML-based file format:
    • Suffix: .pyslvs.yml
    • New text-based format to support version control.

Development

  • Module of important widgets are be moved to __init__.py.
  • Fix compiler option error caused by Python (cygwinccompiler.py).
  • Adjust all functions and "private" methods name with PEP 8.
  • New deploy options of Github releases.

Pyslvs 18.9.0

29 Sep 06:46
Compare
Choose a tag to compare

Features

  • Appearance adjustments of main canvas.
  • Add scale mechanism option.
  • Change atlas algorithm "cancel" behavior to "skip":
    • Realized partial searching in atlas algorithm.
    • User can skip and keep partial result at each searching step.
  • Add fully support for Mac OS platform:
    • Standalone executable file compilation.
    • Automatic switch to fusion mode to avoid border too wide.
    • CI testing.
  • Add new examples:
    • "Crank slider (Three bar)"
    • "Slider lifter"
  • Input variable:
    • Support slider joint.
    • Add filter for variable list.

Development

  • Using abstract class to implement partial methods.
  • Redefine solver function of Python-Solvespace.
  • Modules are renamed to lower case.
  • Add AppVeyor CI support.

Pyslvs 18.8.0

31 Aug 09:47
Compare
Choose a tag to compare

Features

  • Important: File format was changed.
  • Add new examples:
    • "Stephenson I"
    • "Watt I"
    • "Watt II"
    • "Lift Tailgate"
    • "Crank lifter"
    • "Inverted slider"
    • "Ten Fold's levers"
  • Selection label function improvement.
  • UI and selection mode improvements.
  • Add FPS counter.
  • Add background settings.
  • Add limitation of input mechanism in UI.
  • Add command line option to choose specified solver when startup.
  • Adjust interface of about dialog.

Development

  • Database module "peewee" rename to "database".
  • Database function improvements.
  • All PyQt slots renaming to short names.
  • Python version should upgrade to 3.6 or above to support formatted string.

Pyslvs 18.7.0

31 Jul 15:26
Compare
Choose a tag to compare

Features

  • Dimensional synthesis data settings and UI has been changed.
  • Input variable settings and UI has been changed.
  • New solving kernel "Sketch Solve" in "pyslvs" core library.
  • Add new examples:
    • "Stephenson II"
    • "Stephenson III"
  • Adjust ask saving message box in "FileWidget" class.

Development

  • Add "Python-Solvespace" kernel as submodule.
  • Merge "-w" flag to "-d" flag.
  • New format with dimensional synthesis function.
  • Example list has been move to "pyslvs" core kernel.
  • Change behavior of auto path preview function.

Pyslvs 18.6.0

30 Jun 12:48
Compare
Choose a tag to compare

Features

  • Free move mode:
    • Linkage editing is supported in expression table.
    • Fix the error of angle updating.
  • Show the values on expression table.
  • Add solution selection mode with expression table.
  • Dimensional synthesis function:
    • Re-designed user interface.

Development

  • Update module "dxfwrite" to "ezdxf".
  • Change "Pyslvs" kernel into submodule, including changelog.

Pyslvs 18.5.0

31 May 13:45
Compare
Choose a tag to compare

Features

  1. Linkage selection mode:
    1. New linkage selection function for both of table widget and main canvas.
    2. Using ctrl + mouse wheel can adjust the tab of entities table widget.
  2. Main canvas:
    1. Add cursor tooltips when dragging on main canvas.
    2. Center zooming function and option with 'by cursor' and 'by canvas center'.
  3. Colors:
    1. Pyslvs can support custom color by using '(R, G, B)' string.
    2. Add color picker in setting interface.
  4. Solvespace format:
    1. Comments will be generate into a new layout in Solvespace format.
    2. Simple reading function for *.slvs format (only support P joint).
    3. New option to generate part files.
  5. Path record:
    1. Add "copy path" function in path context menu.
    2. Path preview function are support P joint.
  6. New solving kernel option "Pyslvs" as default.
  7. Add mouse snapping option (default 1 unit).
  8. Triple ball lifter example.
  9. Shortcut keys adjustment.
  10. "Add" command of storage function will not clean the canvas (should do it by self).
  11. Add "merge linkages" function in link context menu.
  12. Add virtual model option to change linkages appearance.

Development

  1. Expression grammar:
    1. New highlight module Pygments, use to support Python and PMKS expression.
    2. Now PMKS grammar can support color string, one-line annotations, multiple line and indentations.
  2. Cython libraries:
    1. Pyslvs kernel has been independently.
    2. Compile method adjustment.
    3. Merge into 'pyslvs' folder.
    4. Using Python typing for Python functions in Cython libraries.
    5. Add Cython header to sharing declarations between libraries.
    6. Add new "PXY" function to make solution of P joint.
  3. Compile:
    1. Compile process improvement.
    2. Reduce the size while packing AppImage file.
    3. Reduce the size of images.
  4. Solvespace format:
    1. Python API for simple 2D sketch IO.
  5. Modules and objects naming adjustment.
  6. PyQt version should upgrade to 5.10 or above to support Qt graph methods.