From 859b4f46c65128c6468b8af8e4b570ec7deb62d4 Mon Sep 17 00:00:00 2001 From: Mario Voigt Date: Sat, 25 Dec 2021 21:13:21 +0100 Subject: [PATCH] added random delete --- .../fablabchemnitz/random_delete/meta.json | 20 ++++++++++++++++++ .../random_delete/random_delete.inx | 16 ++++++++++++++ .../random_delete/random_delete.py | 21 +++++++++++++++++++ 3 files changed, 57 insertions(+) create mode 100644 extensions/fablabchemnitz/random_delete/meta.json create mode 100644 extensions/fablabchemnitz/random_delete/random_delete.inx create mode 100644 extensions/fablabchemnitz/random_delete/random_delete.py diff --git a/extensions/fablabchemnitz/random_delete/meta.json b/extensions/fablabchemnitz/random_delete/meta.json new file mode 100644 index 00000000..4cbacabe --- /dev/null +++ b/extensions/fablabchemnitz/random_delete/meta.json @@ -0,0 +1,20 @@ +[ + { + "name": "Random Delete", + "id": "fablabchemnitz.de.random_delete", + "path": "random_delete", + "dependent_extensions": null, + "original_name": "Random Delete", + "original_id": "fablabchemnitz.de.random_delete", + "license": "GNU GPL v3", + "license_url": "https://gitea.fablabchemnitz.de/FabLab_Chemnitz/mightyscape-1.X/src/branch/master/LICENSE", + "comment": "Written by Mario Voigt", + "source_url": "https://gitea.fablabchemnitz.de/FabLab_Chemnitz/mightyscape-1.X/src/branch/master/extensions/fablabchemnitz/random_delete", + "fork_url": null, + "documentation_url": "https://stadtfabrikanten.org/display/IFM/Random+Delete", + "inkscape_gallery_url": null, + "main_authors": [ + "github.com/vmario89" + ] + } +] \ No newline at end of file diff --git a/extensions/fablabchemnitz/random_delete/random_delete.inx b/extensions/fablabchemnitz/random_delete/random_delete.inx new file mode 100644 index 00000000..e6eaf193 --- /dev/null +++ b/extensions/fablabchemnitz/random_delete/random_delete.inx @@ -0,0 +1,16 @@ + + + Random Delete + fablabchemnitz.de.random_delete + 100.0 + This extension allows to delete with a certain probability each of the selected objects. + + all + + + + + + \ No newline at end of file diff --git a/extensions/fablabchemnitz/random_delete/random_delete.py b/extensions/fablabchemnitz/random_delete/random_delete.py new file mode 100644 index 00000000..23f297d9 --- /dev/null +++ b/extensions/fablabchemnitz/random_delete/random_delete.py @@ -0,0 +1,21 @@ +#! /usr/bin/env python3 + +import random +import inkex + +class RandomDelete(inkex.Effect): + + def add_arguments(self, pars): + pars.add_argument("--prob", type=float, default=50, help="Probability of deletion") + + def effect(self): + if len(self.svg.selected) > 0: + for element in self.svg.selection.values(): + if random.random() < self.options.prob/100: + element.delete() + else: + self.msg('Please select some paths first.') + return + +if __name__ == '__main__': + RandomDelete().run() \ No newline at end of file