diff --git a/examples/dragon/dragon_and_pearl.scad b/examples/dragon/dragon_and_pearl.scad index 5d0c8d9c..11b9d731 100644 --- a/examples/dragon/dragon_and_pearl.scad +++ b/examples/dragon/dragon_and_pearl.scad @@ -41,9 +41,9 @@ module tail() { module dragon_and_perl() { function __angy_angz(p1, p2) = let( - dx = p2[0] - p1[0], - dy = p2[1] - p1[1], - dz = p2[2] - p1[2], + dx = p2.x - p1.x, + dy = p2.y - p1.y, + dz = p2.z - p1.z, ya = atan2(dz, sqrt(pow(dx, 2) + pow(dy, 2))), za = atan2(dy, dx) ) [ya, za]; diff --git a/examples/dragon/infinity_dragon.scad b/examples/dragon/infinity_dragon.scad index 9e8b0f31..a34f7241 100644 --- a/examples/dragon/infinity_dragon.scad +++ b/examples/dragon/infinity_dragon.scad @@ -41,9 +41,9 @@ module tail() { module infinity_dragon() { function __angy_angz(p1, p2) = let( - dx = p2[0] - p1[0], - dy = p2[1] - p1[1], - dz = p2[2] - p1[2], + dx = p2.x - p1.x, + dy = p2.y - p1.y, + dz = p2.z - p1.z, ya = atan2(dz, sqrt(pow(dx, 2) + pow(dy, 2))), za = atan2(dy, dx) ) [ya, za]; diff --git a/examples/dragon/torus_knot_dragon.scad b/examples/dragon/torus_knot_dragon.scad index 2375aa76..85e68ce3 100644 --- a/examples/dragon/torus_knot_dragon.scad +++ b/examples/dragon/torus_knot_dragon.scad @@ -25,9 +25,9 @@ module torus_knot_dragon() { function __angy_angz(p1, p2) = let( - dx = p2[0] - p1[0], - dy = p2[1] - p1[1], - dz = p2[2] - p1[2], + dx = p2.x - p1.x, + dy = p2.y - p1.y, + dz = p2.z - p1.z, ya = atan2(dz, sqrt(dx * dx + dy * dy)), za = atan2(dy, dx) ) [ya, za]; diff --git a/src/__comm__/__angy_angz.scad b/src/__comm__/__angy_angz.scad index 480b758e..0a5b8481 100644 --- a/src/__comm__/__angy_angz.scad +++ b/src/__comm__/__angy_angz.scad @@ -1,8 +1,8 @@ function __angy_angz(p1, p2) = let( - dx = p2[0] - p1[0], - dy = p2[1] - p1[1], - dz = p2[2] - p1[2], + dx = p2.x - p1.x, + dy = p2.y - p1.y, + dz = p2.z - p1.z, ya = atan2(dz, sqrt(dx * dx + dy * dy)), za = atan2(dy, dx) ) [ya, za]; \ No newline at end of file diff --git a/src/__comm__/__to2d.scad b/src/__comm__/__to2d.scad index 865cfcda..919caf55 100644 --- a/src/__comm__/__to2d.scad +++ b/src/__comm__/__to2d.scad @@ -1 +1 @@ -function __to2d(p) = [p[0], p[1]]; \ No newline at end of file +function __to2d(p) = [p.x, p.y]; \ No newline at end of file diff --git a/src/__comm__/__to3d.scad b/src/__comm__/__to3d.scad index af3d63aa..9058a1db 100644 --- a/src/__comm__/__to3d.scad +++ b/src/__comm__/__to3d.scad @@ -1 +1 @@ -function __to3d(p) = [p[0], p[1], 0]; \ No newline at end of file +function __to3d(p) = [p.x, p.y, 0]; \ No newline at end of file diff --git a/src/__comm__/__to_ang_vect.scad b/src/__comm__/__to_ang_vect.scad index 778d587e..acb0f6a6 100644 --- a/src/__comm__/__to_ang_vect.scad +++ b/src/__comm__/__to_ang_vect.scad @@ -1,6 +1,6 @@ function __to_3_elems_ang_vect(a) = let(leng = len(a)) leng == 3 ? a : - leng == 2 ? [a[0], a[1], 0] : [a[0], 0, 0]; + leng == 2 ? [a.x, a.y, 0] : [a.x, 0, 0]; function __to_ang_vect(a) = is_num(a) ? [0, 0, a] : __to_3_elems_ang_vect(a); \ No newline at end of file diff --git a/src/__comm__/__trapezium.scad b/src/__comm__/__trapezium.scad index 3e948792..cdfab3ac 100644 --- a/src/__comm__/__trapezium.scad +++ b/src/__comm__/__trapezium.scad @@ -7,7 +7,7 @@ function __trapezium(length, h, round_r) = l_half_trapezium = [ for(i = 0; i <= to; i = i + 1) let(pt = r_half_trapezium[to - i]) - [-pt[0], pt[1]] + [-pt.x, pt.y] ] ) concat( diff --git a/src/__comm__/_convex_hull2.scad b/src/__comm__/_convex_hull2.scad index a952fcd5..dc1249c9 100644 --- a/src/__comm__/_convex_hull2.scad +++ b/src/__comm__/_convex_hull2.scad @@ -1,7 +1,7 @@ use <../util/slice.scad>; function _convex_hull_lt_than_by_xy(p1, p2) = - p1[0] < p2[0] || (p1[0] == p2[0] && p1[1] < p2[1]); + p1.x < p2.x || (p1.x == p2.x && p1.y < p2.y); function _convex_hull_sort_by_xy(lt) = let(leng = len(lt)) @@ -15,15 +15,7 @@ function _convex_hull_sort_by_xy(lt) = // oa->ob ct_clk : greater than 0 function _convex_hull_impl_dir(o, a, b) = - let( - ox = o[0], - oy = o[1], - ax = a[0], - ay = a[1], - bx = b[0], - by = b[1] - ) - (ax - ox) * (by - oy) - (ay - oy) * (bx - ox); + (a.x - o.x) * (b.y - o.y) - (a.y - o.y) * (b.x - o.x); function _convex_hull_convex_hull_lower_m(chain, p, m) = (m >= 2 && _convex_hull_impl_dir(chain[m - 2], chain[m - 1], p) <= 0) ? _convex_hull_convex_hull_lower_m(chain, p, m - 1) : m; diff --git a/src/__comm__/_convex_hull3.scad b/src/__comm__/_convex_hull3.scad index c485e879..d34d8207 100644 --- a/src/__comm__/_convex_hull3.scad +++ b/src/__comm__/_convex_hull3.scad @@ -1,13 +1,9 @@ function is_zero(p) = p == [0, 0, 0]; function _cmp(a, b) = - let( - ax = a[0], ay = a[1], az = a[2], - bx = b[0], by = b[1], bz = b[2] - ) - ax != bx ? ax < bx : - ay != by ? ay < by : - az < bz; + a.x != b.x ? a.x < b.x : + a.y != b.y ? a.y < b.y : + a.z < b.z; function _convex_hull_sort_by_xyz(pts) = let(leng = len(pts))