From 1004fad157b6f4df8540cdf576471355bb15ab37 Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Fri, 23 Apr 2021 21:20:36 +0800 Subject: [PATCH] use for directly --- src/experimental/_impl/_tiles_wfc_impl.scad | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/src/experimental/_impl/_tiles_wfc_impl.scad b/src/experimental/_impl/_tiles_wfc_impl.scad index c4d35244..26cb5f60 100644 --- a/src/experimental/_impl/_tiles_wfc_impl.scad +++ b/src/experimental/_impl/_tiles_wfc_impl.scad @@ -1,7 +1,6 @@ use ; use ; use ; -use ; use ; use ; use ; @@ -125,26 +124,16 @@ function _wf_entropy(weights, states, state_leng, sumOfWeights, sumOfWeightLogWe function _replaceStatesAt(wf, x, y, states) = let( eigenstates = wf_eigenstates(wf), - rowsBeforeY = slice(eigenstates, 0, y), rowY = eigenstates[y], - rowsAfterY = slice(eigenstates, y + 1), - statesBeforeX = slice(rowY, 0, x), - statesAfterX = slice(rowY, x + 1), - newRowY = concat( - statesBeforeX, - [states], - statesAfterX - ) + leng_rowY = len(rowY), + leng_eigenstates = len(eigenstates), + newRowY = [for(i = 0; i < leng_rowY; i = i + 1) i == x ? states : rowY[i]] ) [ wf_width(wf), wf_height(wf), wf_weights(wf), - concat( - rowsBeforeY, - [newRowY], - rowsAfterY - ) + [for(i = 0; i < leng_eigenstates; i = i + 1) i == y ? newRowY : eigenstates[i]] ]; function wf_not_collapsed_coords(wf) = [