diff --git a/debug.scad b/debug.scad index 9dbcf72..e4cd754 100644 --- a/debug.scad +++ b/debug.scad @@ -3,7 +3,6 @@ // Helpers to make debugging OpenScad code easier. // Includes: // include -// include ////////////////////////////////////////////////////////////////////// diff --git a/shapes2d.scad b/shapes2d.scad index baee3ff..35d1387 100644 --- a/shapes2d.scad +++ b/shapes2d.scad @@ -1593,7 +1593,7 @@ module supershape(step=0.5,m1=4,m2=undef,n1,n2=undef,n3=undef,a=1,b=undef, r=und // Function&Module: reuleaux_polygon() // Usage: As Module // reuleaux_polygon(N, r|d); -// Usage: As Module +// Usage: As Function // path = reuleaux_polygon(N, r|d); // Description: // Creates a 2D Reuleaux Polygon; a constant width shape that is not circular. @@ -1608,13 +1608,17 @@ module supershape(step=0.5,m1=4,m2=undef,n1,n2=undef,n3=undef,a=1,b=undef, r=und // Examples(2D): // reuleaux_polygon(N=3, r=50); // reuleaux_polygon(N=5, d=100); +// Examples(2D): Standard vector anchors are based on extents +// reuleaux_polygon(N=3, d=50) show_anchors(custom=false); +// Examples(2D): Named anchors exist for the tips +// reuleaux_polygon(N=3, d=50) show_anchors(std=false); module reuleaux_polygon(N=3, r, d, anchor=CENTER, spin=0) { assert(N>=3 && (N%2)==1); r = get_radius(r=r, d=d, dflt=1); path = reuleaux_polygon(N=N, r=r); anchors = [ for (i = [0:1:N-1]) let( - ca = 360 - (i+0.5) * 360/N, + ca = 360 - i * 360/N, cp = polar_to_xy(r, ca) ) anchorpt(str("tip",i), cp, unit(cp,BACK), 0), ]; @@ -1641,7 +1645,7 @@ function reuleaux_polygon(N=3, r, d, anchor=CENTER, spin=0) = ], anchors = [ for (i = [0:1:N-1]) let( - ca = 360 - (i+0.5) * 360/N, + ca = 360 - i * 360/N, cp = polar_to_xy(r, ca) ) anchorpt(str("tip",i), cp, unit(cp,BACK), 0), ] diff --git a/version.scad b/version.scad index 014b31b..0f0b646 100644 --- a/version.scad +++ b/version.scad @@ -6,7 +6,7 @@ ////////////////////////////////////////////////////////////////////// -BOSL_VERSION = [2,0,523]; +BOSL_VERSION = [2,0,525]; // Section: BOSL Library Version Functions