Incremented Rectangle with preset radii size dependent on shortest side length

Incremented Rectangle with preset radii size dependent on shortest side length

Anonymous
Not applicable
752 Views
6 Replies
Message 1 of 7

Incremented Rectangle with preset radii size dependent on shortest side length

Anonymous
Not applicable

I currently have an incremented rectangle/box at 150mm increments in both X and Y. 

How do i automatically fillet all the corners based on a set of parameters that relate to the shortest side length of the rectangle as it is stretched in both X and Y?

The Parameters for the radius are:

 

SHORTEST SIDE LENGTH   |   RADIUS

<400                                              50

401-800                                      100

801-1200                                     150

1201-1600                                   200

1601-2000                                  250

2000+                                         300

 

Thanks

 

M

 

0 Likes
Accepted solutions (1)
753 Views
6 Replies
Replies (6)
Message 2 of 7

Libbya
Mentor
Mentor

Use a double lookup with range values to control a new linear parameter based on the side lengths.  Add the appropriate scale actions with independent base points to that new linear parameter in order to scale the arcs.  Also add the appropriate stretch actions with the appropriate angle offsets so that the sides are stretched appropriately to meet the arcs as the arcs are scaled.  

0 Likes
Message 3 of 7

Anonymous
Not applicable

Hi Libbya

Thanks for the quick reply

Im new to this block parameter and actions stuff.

So im assuming i will need to add every length multiple of 150mm starting at say 300mm all the way up to 6000mm in the range value list? That's 40 individual values just for the HZ side. ie 300, 450, 600... 5700, 5850, 6000.

Can i just use the Increment dist type and set the increment to 150mm with a dist min of 300mm and a Dist max of 6000mm.

M

 

0 Likes
Message 4 of 7

Libbya
Mentor
Mentor

Lookups (and double lookups) accept range values.  Making a table with all the combinations of increments would be unmanageable.  

 

If you want an actual example, then post the block.  The image files are not really useful.  

0 Likes
Message 5 of 7

Anonymous
Not applicable

Agree with the unmanageable part.

 

CAD dwg attached.

 

Thanks

0 Likes
Message 6 of 7

Libbya
Mentor
Mentor
Accepted solution

Here's a complicated screencast that shows all the necessary steps although I did not complete the entire block.  I hope that you understand the logic behind the double lookups and the rows that I made.  You can include any number of values in a specific cell of a lookup table with each individual value separated by a comma.  Range examples count as a single value.  If you have more than one range in a given cell, then separate each range with a comma.  Range examples include an opening bracket or parenthesis, a value, a comma, another value, and a closing bracket or parenthesis.  If there is a parenthesis next to a value, the value is not included in the range.  If there is a bracket next to a value, the value is included in the range.  If the value is left blank next to a parenthesis, then the range extends infinitely that direction.  

 

(,400] = all values 400 and below

(,400) = all values below 400

[400,) = all values 400 and above

(400,800] = all values from 400 to 800 not including 400 and including 800

 

Because the scale actions have independent base locations, they can be moved/stretched.  In order to add the scale actions to the stretch actions' selection sets, you need to have the system variable BACTIONBARMODE = 0. 

 

See screencast.

 

 

Message 7 of 7

Anonymous
Not applicable

Thanks Libbya

Looks like its working for me.

I will work with it for a day or two and see if i need to add any further radii criteria.

M

0 Likes