1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-05 14:27:45 +02:00

refactor: sort by key

This commit is contained in:
Justin Lin
2022-04-29 10:59:27 +08:00
parent e4709ab049
commit 65b375995a
3 changed files with 7 additions and 7 deletions

View File

@@ -23,7 +23,7 @@ function _nz_cell_border(cells, p) =
[each cell, norm(cell - p)]
],
idx = len(cells[0]),
sorted_dists = sorted(dists, cmp = function(a, b) a[idx] - b[idx]),
sorted_dists = sorted(dists, key = function(elem) elem[idx]),
sorted0 = sorted_dists[0],
sorted1 = sorted_dists[1],
a = [for(i = [0:idx - 1]) sorted0[i]],

View File

@@ -1,7 +1,7 @@
use <_nz_worley_comm.scad>;
use <../../util/sorted.scad>;
_cmp = function(a, b) a[2] - b[2];
_key = function(elem) elem[2];
function _neighbors(fcord, seed, grid_w) =
let(range = [-1:1])
@@ -25,7 +25,7 @@ function _nz_worley2_classic(p, nbrs, dist) =
dist == "chebyshev" ? [for(nbr = nbrs) [each nbr, _chebyshev(nbr, p)]] :
assert("Unknown distance option")
)
sorted(cells, _cmp)[0];
sorted(cells, key = _key)[0];
function _nz_worley2_border(p, nbrs) =
let(
@@ -33,7 +33,7 @@ function _nz_worley2_border(p, nbrs) =
for(nbr = nbrs)
[each nbr, norm(nbr - p)]
],
sorted_cells = sorted(cells, _cmp),
sorted_cells = sorted(cells, key = _key),
a = [sorted_cells[0].x, sorted_cells[0].y],
m = (a + [sorted_cells[1].x, sorted_cells[1].y]) / 2
)

View File

@@ -1,7 +1,7 @@
use <_nz_worley_comm.scad>;
use <../../util/sorted.scad>;
_cmp = function(a, b) a[3] - b[3];
_key = function(elem) elem[3];
function _neighbors(fcord, seed, grid_w) =
let(range = [-1:1])
@@ -27,7 +27,7 @@ function _nz_worley3_classic(p, nbrs, dist) =
dist == "chebyshev" ? [for(nbr = nbrs) [each nbr, _chebyshev(nbr, p)]] :
assert("Unknown distance option")
)
sorted(cells, _cmp)[0];
sorted(cells, key = _key)[0];
function _nz_worley3_border(p, nbrs) =
let(
@@ -35,7 +35,7 @@ function _nz_worley3_border(p, nbrs) =
for(nbr = nbrs)
[each nbr, norm(nbr - p)]
],
sorted_cells = sorted(cells, _cmp),
sorted_cells = sorted(cells, key = _key),
a = [sorted_cells[0].x, sorted_cells[0].y, sorted_cells[0].z],
m = (a + [sorted_cells[1].x, sorted_cells[1].y, sorted_cells[1].z]) / 2
)