A GUI-based (PyQt5) tool used to design 2D linkage mechanism.
- Planar Linkages Simulation
- Python-Solvespace: Kernel from Solvespace with Cython bundle.
- Pyslvs: Kernel from Sketch Solve with Cython.
- Mechanical Synthesis
- Number Synthesis: Combine the attributes of mechanism.
- Structural Synthesis: Cython algorithm used to find out structural possibilities of the mechanism.
- Dimensional Synthesis: Kernel from the three Cython algorithms (rewrite).
- Websites
- Readthedocs (stable / latest)
- Content Management System (to be maintained)
- Blog Framework (to be maintained)
- Others
If you have any question, please post on GitHub issue or contact pyslvs@gmail.com.
Download portable executable file of your platform.
pip install pyslvs-ui
Branch master
is in development, use stable
branch to install stable dependencies directly.
git checkout stable
python setup.py install
Or, build master
branch step by step follow the documentation.
Pyslvs has a solver backend that can works without the GUI:
from pyslvs import example_list, parse_vpoints, t_config
# Get example with name
expr, inputs = example_list("Jansen's linkage (Single)")
# Parse the mechanism expression into a list of joint data
vpoints = parse_vpoints(expr)
# Config joint data and control data for the solver
exprs = t_config(vpoints, inputs)
# Solve the position
result = expr_solving(exprs, vpoints, {pair: 0. for pair in inputs})
# Get the result from joint 7
x, y = result[7]
print(x, y) # -43.170055 -91.753226
Please see the documentation for more information.
The documentation of Pyslvs and kernel API. Start it from sources:
pip install mkdocs
pip install -r doc-requirements.txt
mkdocs serve
Please see the reference.