mec2
v0.7.9
Published
mec2 - a library for simulating planar mechanisms via corrective impulses
Downloads
14
Maintainers
Readme
mec2
mec2 is a javascript library for simulating and analysing planar mechanisms or linkages. The concept is based on nodes constrained by one of four different vectors. Solving the kinematic equations is done by using Erin Catto's principle of sequential impulses, often used by gaming physics engines.
Its API is minimal and easy to understand. The library is tiny and fast. Mechanisms are described using an easy to read JSON format.
Example
JSON
{
id: '4bar',
nodes: [
{id:'A0',x:100,y:100,base:true},
{id:'A',x:100,y:150},
{id:'B',x:350,y:220},
{id:'B0',x:300,y:100,base:true},
],
constraints: [
{ id:'a',p1:'A0',p2:'A',len:{type:'const'} },
{ id:'b',p1:'A', p2:'B',len:{type:'const'} },
{ id:'c',p1:'B0', p2:'B',len:{type:'const'} },
]
}
Documentation
- todo -
License
mec2 is licensed under the terms of the MIT License.
Change Log
0.7.9 - 2018-08-11
- info view implemented.
0.7.8 - 2018-08-10
- trace view implemented.
0.7.7 - 2018-08-09
- vector view implemented.
- view elements added.
0.7.6 - 2018-08-08
- spring load element added.
0.7.5 - 2018-08-07
- spring load element added.
- added a toJSON method to model and to all element types. model.toJSON() invokes .toJSON() on each element in the model returns a canonical JSON-representation of the model
- implemented a global darkmode flag (default false) for darker canvas backgrounds
- added a different shading for elements when they are selected and not just hovered over
- some minor bug fixes.
0.7.3 - 2018-08-06
- some minor bug fixes.
0.7.0 - 2018-08-05
- first commit.