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:
@@ -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]],
|
||||
|
@@ -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
|
||||
)
|
||||
|
@@ -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
|
||||
)
|
||||
|
Reference in New Issue
Block a user