/pyslvs

Pyslvs core module.

Primary LanguageCythonGNU Affero General Public License v3.0AGPL-3.0

PyPI Language grade: Python

Pyslvs Libraries

A no-GUI module of mechanism synthesis system and a 2D geometric constraint solver.

Installation

Install from PyPI:

pip install pyslvs

Or install and test from source:

pip install -e .
python test

Documentation

Run the solver through an example:

from pyslvs import example_list, parse_vpoints, t_config, expr_solving

# 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

The documentation of Pyslvs library is on Readthedocs.

If you have any questions, please post on GitHub issue or contact pyslvs@gmail.com.