discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

not incrementing

BR
Bob Roos
Sun, May 29, 2022 8:41 PM

forgot the libraries
 

Hi nop,
THANK YOU very much.  Here is the finished item:
include <BOSL2/std.scad> 
include <BOSL2/rounding.scad>
 
function flatten(l) = [ for (a = l) for (b = a) b ] ;
   
// router supports,[0,2TiersZ)]},[0,0]
RD = 7;  // rod diameter
Z = RD/cos(30);  // elevation change
X = Z/tan(30);  // horizontal change
W = 30;      // overall width
Xl = W-X;    // location of left edge of slot
Tiers = 3;    // number of vertical sets 
 
Side=[[[0,0]],[[W,0]],for (a = [1:Tiers])[[W,(3*a-1)Z],[Xl,(3a-2)Z],[Xl,(3a-1)Z], [ W,(3a)Z ]],[[ W,(3Tiers+1)Z ]],[[ 0,(3Tiers+1)*Z ]]];
round2d(2)polygon(flatten(Side));
 

Sunday, May 29, 2022, 4:06:11 PM, you wrote:

Use each to add a list as multiple elements.

-- 
have Fun,
 Bob                           mailto:roosbob@wybatap.com

forgot the libraries   > Hi nop, > THANK YOU very much.  Here is the finished item: > include <BOSL2/std.scad>  > include <BOSL2/rounding.scad> >   > function flatten(l) = [ for (a = l) for (b = a) b ] ; >     > // router supports,[0,2*Tiers*Z)]},[0,0] > RD = 7;  // rod diameter > Z = RD/cos(30);  // elevation change > X = Z/tan(30);  // horizontal change > W = 30;      // overall width > Xl = W-X;    // location of left edge of slot > Tiers = 3;    // number of vertical sets  >   > Side=[[[0,0]],[[W,0]],for (a = [1:Tiers])[[W,(3*a-1)*Z],[Xl,(3*a-2)*Z],[Xl,(3*a-1)*Z], [ W,(3*a)*Z ]],[[ W,(3*Tiers+1)*Z ]],[[ 0,(3*Tiers+1)*Z ]]]; > round2d(2)polygon(flatten(Side)); >   > Sunday, May 29, 2022, 4:06:11 PM, you wrote: >> Use each to add a list as multiple elements. --  have Fun,  Bob                           mailto:roosbob@wybatap.com
NH
nop head
Sun, May 29, 2022 8:45 PM

The keyword each does the same your flatten function.

On Sun, 29 May 2022, 21:41 Bob Roos, roosbob@wybatap.com wrote:

forgot the libraries

Hi nop,

THANK YOU very much.  Here is the finished item:

include <BOSL2/std.scad>

include <BOSL2/rounding.scad>

function flatten(l) = [ for (a = l) for (b = a) b ] ;

// router supports,[0,2TiersZ)]},[0,0]

RD = 7;  // rod diameter

Z = RD/cos(30);  // elevation change

X = Z/tan(30);  // horizontal change

W = 30;      // overall width

Xl = W-X;    // location of left edge of slot

Tiers = 3;    // number of vertical sets

Side=[[[0,0]],[[W,0]],for (a =
[1:Tiers])[[W,(3*a-1)Z],[Xl,(3a-2)Z],[Xl,(3a-1)Z], [ W,(3a)Z ]],[[
W,(3
Tiers+1)Z ]],[[ 0,(3Tiers+1)*Z ]]];

round2d(2)polygon(flatten(Side));

Sunday, May 29, 2022, 4:06:11 PM, you wrote:

Use each to add a list as multiple elements.

--
have Fun,
Bob                          mailto:roosbob@wybatap.com
roosbob@wybatap.com

--
have Fun,
Bob                          mailto:roosbob@wybatap.com
roosbob@wybatap.com


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

The keyword each does the same your flatten function. On Sun, 29 May 2022, 21:41 Bob Roos, <roosbob@wybatap.com> wrote: > forgot the libraries > > > > Hi nop, > > > THANK YOU very much. Here is the finished item: > > include <BOSL2/std.scad> > > include <BOSL2/rounding.scad> > > > > function flatten(l) = [ for (a = l) for (b = a) b ] ; > > > > // router supports,[0,2*Tiers*Z)]},[0,0] > > RD = 7; // rod diameter > > Z = RD/cos(30); // elevation change > > X = Z/tan(30); // horizontal change > > W = 30; // overall width > > Xl = W-X; // location of left edge of slot > > Tiers = 3; // number of vertical sets > > > > Side=[[[0,0]],[[W,0]],for (a = > [1:Tiers])[[W,(3*a-1)*Z],[Xl,(3*a-2)*Z],[Xl,(3*a-1)*Z], [ W,(3*a)*Z ]],[[ > W,(3*Tiers+1)*Z ]],[[ 0,(3*Tiers+1)*Z ]]]; > > round2d(2)polygon(flatten(Side)); > > > > > Sunday, May 29, 2022, 4:06:11 PM, you wrote: > > Use each to add a list as multiple elements. > >> >> > -- > have Fun, > Bob mailto:roosbob@wybatap.com > <roosbob@wybatap.com> > > > -- > have Fun, > Bob mailto:roosbob@wybatap.com > <roosbob@wybatap.com> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >