diff --git a/README.md b/README.md index faa37f7..39e9bc1 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,156 @@ [![Build status][appveyor-badge]][appveyor-link] [![MIT License][license-badge]](LICENSE) +## Screenshots + ![spaghetti.gif](docs/spaghetti.gif) ![spaghetti2.gif](docs/spaghetti2.gif) +## Features + +* Feedback loops +* Custom plugins +* Run-time wiring +* Plugins + +## Rich library of built-in elements + +### Logic Gates + +* AND +* NAND +* NOR +* NOT +* OR + +![logic_gates.gif](docs/logic_gates.gif) + +### Conditionals + +* A ≥ B +* A > B +* A ≡ B +* A < B +* A ≤ B + +![logic_conditionals.gif](docs/logic_conditionals.gif) + +### Memory + +* Set-Reset +* Reset-Set + +![logic_memory.gif](docs/logic_memory.gif) + +### Multiplexing + +* Multiplexer +* Demultiplexer + +![logic_multiplexing.gif](docs/logic_multiplexing.gif) + +### Edge detection + +* Rising edge detection + +![logic_detect_rising.gif](docs/logic_detect_rising.gif) + +* Falling edge detection + +![logic_detect_falling.gif](docs/logic_detect_falling.gif) + +### Math + +* abs(VALUE) + +![math_abs.gif](docs/math_abs.gif) + +* sin(ANGLE) +* cos(ANGLE) + +![math_sincos.gif](docs/math_sincos.gif) + +* lerp(MIN, MAX, T) + +![math_lerp.gif](docs/math_lerp.gif) + +* sign + +![math_sign.gif](docs/math_sign.gif) + +* add +* subtract +* multiply +* divide + +![math_operations.gif](docs/math_operations.gif) + +* add_if +* subtract_if +* multiply_if +* divide_if + +![math_operations_if.gif](docs/math_operations_if.gif) + +* BCD + +![spaghetti.gif](docs/spaghetti.gif) + +### Pneumatic + +* Tank +* Valve + +### Timers + +* Simulation delta time + +![timers_delta_time.gif](docs/timers_delta_time.gif) + +* Clock + +![logic_gates.gif](docs/logic_gates.gif) + +* T_ON + +![timers_t_on.gif](docs/timers_t_on.gif) + +* T_OFF + +![timers_t_off.gif](docs/timers_t_off.gif) + +* T_PULSE + +![logic_detect_falling.gif](docs/logic_detect_falling.gif) + +### Values + +* Const bool +* Const integer +* Const float + +![values_consts.gif](docs/values_consts.gif) + +* min(A, B) +* max(A, B) +* clamp(VALUE, MIN, MAX) + +![values_min_max_clamp.gif](docs/values_min_max_clamp.gif) + +* Degree to radian +* Radian to degree + +![values_convert_angle.gif](docs/values_convert_angle.gif) + +* Int to float +* Float to integer + +![values_convert_int_float.gif](docs/values_convert_int_float.gif) + +* Characteristic curve with editor + +![values_characteristic_curve.gif](docs/values_characteristic_curve.gif) + ## License This project is licensed under the MIT License - see the [LICENSE](https://github.com/aljen/spaghetti/blob/master/LICENSE) file for details. diff --git a/docs/logic_conditionals.gif b/docs/logic_conditionals.gif new file mode 100644 index 0000000..e679c60 --- /dev/null +++ b/docs/logic_conditionals.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d9a0d5136dc7d65b86bbd35d2f0723bfc1bc5ddbe5de346e03279d0ac59dda0 +size 746196 diff --git a/docs/logic_detect_falling.gif b/docs/logic_detect_falling.gif new file mode 100644 index 0000000..2e5c1c1 --- /dev/null +++ b/docs/logic_detect_falling.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e588938f16632bd3c35c09179fed904467c1f417a3d62a823277d9f9365c4ec +size 106569 diff --git a/docs/logic_detect_rising.gif b/docs/logic_detect_rising.gif new file mode 100644 index 0000000..d39450e --- /dev/null +++ b/docs/logic_detect_rising.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d829b27fa47d7e844cbe18604f96e9a441eafc59decbbafcc527ee14f75af2a4 +size 122938 diff --git a/docs/logic_gates.gif b/docs/logic_gates.gif new file mode 100644 index 0000000..671e11a --- /dev/null +++ b/docs/logic_gates.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34b6e700a0275664e17fbdac5ae54939883c0eed2ac97cdd94536fd3ca7bd5eb +size 131925 diff --git a/docs/logic_memory.gif b/docs/logic_memory.gif new file mode 100644 index 0000000..5f12a05 --- /dev/null +++ b/docs/logic_memory.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8f532de37842150c258e3bfe9f3f542b2940858fe64a4a575c2d86f6399c4ac +size 83828 diff --git a/docs/logic_multiplexing.gif b/docs/logic_multiplexing.gif new file mode 100644 index 0000000..4b8ccbb --- /dev/null +++ b/docs/logic_multiplexing.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c68305fba00f2756a3410d5a8050d2897b12786eedebca4cfa6a114f9f4e9b5a +size 211518 diff --git a/docs/math_abs.gif b/docs/math_abs.gif new file mode 100644 index 0000000..9a66556 --- /dev/null +++ b/docs/math_abs.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5a6cc0a1445d35f2e0852dc063abb7f07a17f490fb4b3c885bc35497b9e4b4e +size 57476 diff --git a/docs/math_lerp.gif b/docs/math_lerp.gif new file mode 100644 index 0000000..69add8d --- /dev/null +++ b/docs/math_lerp.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5788a1cd0c9c20eceec53be403f218995d46e47187693193afdcc337860a474 +size 303955 diff --git a/docs/math_operations.gif b/docs/math_operations.gif new file mode 100644 index 0000000..c394ddf --- /dev/null +++ b/docs/math_operations.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e98bd80517232151fcb217733f2a99cedbbb7e99baf49b0249b2bdd82add44b7 +size 590297 diff --git a/docs/math_operations_if.gif b/docs/math_operations_if.gif new file mode 100644 index 0000000..794094c --- /dev/null +++ b/docs/math_operations_if.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa5e7f3988ebe0fca1abe42fbc0b1bc6f3629502002d67475e93367c6875b7e4 +size 537409 diff --git a/docs/math_sign.gif b/docs/math_sign.gif new file mode 100644 index 0000000..fd9707b --- /dev/null +++ b/docs/math_sign.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a96dcde62a2d7feda100a3b859f7ddbb736924378e9ac6b6f12ba5d104044131 +size 64300 diff --git a/docs/math_sincos.gif b/docs/math_sincos.gif new file mode 100644 index 0000000..fe3cb7f --- /dev/null +++ b/docs/math_sincos.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9adef7cfdc5e48e16a3446991a79e4ae899ae902977810c9e0931cb42152adc9 +size 179508 diff --git a/docs/timers_delta_time.gif b/docs/timers_delta_time.gif new file mode 100644 index 0000000..fd381cd --- /dev/null +++ b/docs/timers_delta_time.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3546065ef60565b67840efe5066b5c5657b212aa0058ed7cb0021d1c048e6ef +size 82236 diff --git a/docs/timers_t_off.gif b/docs/timers_t_off.gif new file mode 100644 index 0000000..5ad7cd9 --- /dev/null +++ b/docs/timers_t_off.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb07175a4f1bac4d26c4269e52b0c1cfb086fb191d4aa22cfff7ba95c1bfe874 +size 147772 diff --git a/docs/timers_t_on.gif b/docs/timers_t_on.gif new file mode 100644 index 0000000..120ba5b --- /dev/null +++ b/docs/timers_t_on.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e315a37377996e831e7c70df740fbcc6a1b8dcde8e304c0e53e7d0ec4d28a7d +size 150894 diff --git a/docs/values_characteristic_curve.gif b/docs/values_characteristic_curve.gif new file mode 100644 index 0000000..917398e --- /dev/null +++ b/docs/values_characteristic_curve.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7687b8bf812d2e59e96df413b5de59d97ae77f83497ca8347539143367cafe2 +size 4626656 diff --git a/docs/values_consts.gif b/docs/values_consts.gif new file mode 100644 index 0000000..e6dd3a0 --- /dev/null +++ b/docs/values_consts.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca8746bc1ea232d6f5d79b8c61b5626c14209d89de25a0c5a0a8e7d5842b867e +size 37821 diff --git a/docs/values_convert_angle.gif b/docs/values_convert_angle.gif new file mode 100644 index 0000000..cf14796 --- /dev/null +++ b/docs/values_convert_angle.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34a3195a4b0154c11e106826a3e03f05d0fe551192d398730d917c7ddcc77a12 +size 66079 diff --git a/docs/values_convert_int_float.gif b/docs/values_convert_int_float.gif new file mode 100644 index 0000000..ba368fd --- /dev/null +++ b/docs/values_convert_int_float.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3767f7794b5b38f8eeaf3373532ed36dda1a9247c7898ace0bd0ec9da67af58e +size 153806 diff --git a/docs/values_min_max_clamp.gif b/docs/values_min_max_clamp.gif new file mode 100644 index 0000000..4706a52 --- /dev/null +++ b/docs/values_min_max_clamp.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e001fa8e695ca44142c136c7d9a39275d31f082fe964f333895107d1f928b1c +size 706595