From c0478728d272c257ae6ffeaa7642aaced15d8929 Mon Sep 17 00:00:00 2001 From: Revar Desmera Date: Mon, 21 Oct 2019 02:28:45 -0700 Subject: [PATCH] Added list_remove_values() --- arrays.scad | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/arrays.scad b/arrays.scad index acad4e0c..6f8c2d14 100644 --- a/arrays.scad +++ b/arrays.scad @@ -227,10 +227,14 @@ function list_set(list=[],indices,values,dflt=0,minlen=0) = // Arguments: // list = The list to remove items from. // elements = The list of indexes of items to remove. +// Example: +// list_insert([3,6,9,12],1); // Returns [3,9,12] +// list_insert([3,6,9,12],[1,3]); // Returns [3,9] function list_remove(list, elements) = !is_list(elements) ? list_remove(list,[elements]) : len(elements)==0 ? list : - let( sortind = list_increasing(elements) ? list_range(len(elements)) : sortidx(elements), + let( + sortind = list_increasing(elements) ? list_range(len(elements)) : sortidx(elements), lastind = elements[select(sortind,-1)] ) assert(lastind