MoI discussion forum
MoI discussion forum

Full Version: Batch filleting

Show messages: All  1-20

From: Axel
17 May 2020   [#1]
Hi Michael,

is it possible to carry out filetting on batch objects? I need to fillet the same radius on 73 equal square objects. At the moment I can only do it single by single object. Is there a trick to do that by batch? selecting all does not work, surely MOI does recognize them as one object so it fails.

Any advise much appreciated.

Thanks,
Axel
From: Frenchy Pilou (PILOU)
17 May 2020   [#2] In reply to [#1]
That curious because you can take any volumes for fillet them in the same time !

Post you 3DM for some more help :)


From: Frenchy Pilou (PILOU)
17 May 2020   [#3]
Else I have same problem but with curves! :)


From: Michael Gibson
17 May 2020   [#4] In reply to [#1]
Hi Axel, currently the regular fillet command is limited to only one selected curve for filleting curve corners.

But I have set up a script attached here that will work in batch mode on multiple selected ones like you need.

@Pilou - when you select 2 curves it will do a fillet between those 2, that's for use on 2 unjoined lines like the Autocad fillet drafting command.

- Michael

Attachments:
BatchFilletCurves.zip


From: Frenchy Pilou (PILOU)
17 May 2020   [#5] In reply to [#4]
Good to know! :)
From: Frenchy Pilou (PILOU)
17 May 2020   [#6]
so the French version ;) in some minutes

In fact no need to translate something because that retakes the Fillets translation yet existing!

But for me some headaches before to discover that!

Anyway here the French advice of this new cool one!
https://moiscript.weebly.com/courbes-par-lot.html
From: Axel
17 May 2020   [#7] In reply to [#4]
Hi Michael,

thanks your reply and for the command. Can you point me to how this is used? I installed it into the command folder and restartet, but how to use the batch fillet? I tried it in several ways, I cannot do that with all objects same time. Still need to do that object by object.

Best regards,
Axel
From: Frenchy Pilou (PILOU)
17 May 2020   [#8] In reply to [#7]
Unzipp the file and put the 2 files (.htm & .js) inside the folder commands
Relaunch MOi

Just select your curves

Launch the command by Pressing TAB and write BatchFilletCurves
or Make a shortCut to the command ( BatchFilletCurves on the second column )

Enter the fillet's Radius
et voilĂ  ! ;)


From: Michael Gibson
17 May 2020   [#9] In reply to [#7]
Hi Axel, once you have installed it into MoI's commands folder (either inside the MoI installation folder, or for v4 use the one in appdata/Moi/commands) that will make a new command called BatchFilletCurves available. You can set up a shortcut key with BatchFilletCurves as the command name, or type Tab and type in BatchFilletCurves and push Enter to run it.

To use the command, select all the curves you want to fillet, then run the command. At the prompt for "Pick fillet radius", type in your desired radius and push the 'Done' button and the fillet should be applied to all corners of all the curves you selected.

If you're still having problems can you please post a .3dm file with the curves in it?

- Michael
From: Axel
18 May 2020   [#10] In reply to [#9]
Hello Michael and Pilou,

thank you. That was easy :)



Cheers,
Axel
From: Axel
12 Sep 2020   [#11] In reply to [#10]
Hi Michael,

is here a comprehensive thread where we can find all scripts/commands that have been written? For example this one here could be shifted to such thread to locate it more easily. Or will all scripts/commands made so far be included in your final v4?


Cheers,
Axel
From: Michael Gibson
12 Sep 2020   [#12] In reply to [#11]
Hi Axel, there is a collection of many of them linked to from the resources page on the main web site, http://moi3d.com . Look for the link labeled "Burr's script archive - collection of scripts that have been posted on the forum".

> Or will all scripts/commands made so far be included in your final v4?

No, that is not planned for v4. Many of them are very specific to an individual person's particular needs.

In the future I do want to work on a centralized script archive but until that happens if you need a script you can post a question about it here on the forum and I can direct you to it.

- Michael
From: Axel
19 Sep 2020   [#13] In reply to [#12]
Thanks for the link Michael, that's great to have an accumulative source here.

Cheers,
Axel
From: Axel
11 Feb 2023   [#14] In reply to [#13]
Hi,
is anybody aware of a batch radius command? That should make changes on the radius/diameter by batch on several circles at same time.

In the list I cannot conclude from the names if such was ever made.

Thanks, Axel
From: Michael Gibson
11 Feb 2023   [#15] In reply to [#14]
Hi Axel,

re:
> is anybody aware of a batch radius command? That should make changes on the radius/diameter by
> batch on several circles at same time.

I'm not aware of one so I made a new one for you, attached.

Instructions for installing a plug-in here.

- Michael

Attachments:
BatchEditCircles.zip


From: Axel
12 Feb 2023   [#16] In reply to [#15]
Hi Michael,

fantastic, what a help.

Thank you!

Best regards, Axel
From: AlexPolo
12 Feb 2023   [#17]
Hi Michael,

Great script is it possible to add to this select circles by size rad or diameter so if you a group of circles of varying sizes you can select 1 size and change those only.

regards
Alex.
From: Michael Gibson
12 Feb 2023   [#18] In reply to [#17]
Hi Alex,

re:
> is it possible to add to this select circles by size rad or diameter so if you a group
> of circles of varying sizes you can select 1 size and change those only.

Yes you could modify the script to do that.

Maybe something like this - currently in BatchEditCircles.js on line number 70 it is gathering up the circles, the current code looks like this:

code:
		if ( obj.isCircle )
		{
			circles.addObject( obj );
			var this_radius = obj.conicRadius;
			<...>


You could modify that to only gather up circles of a particular radius value, add something like this (warning untested) - added lines marked with a > at the start of the line, don't put that in the actual code. Oh and also move the line where it calls addObject lower down:

code:
		if ( obj.isCircle )
		{
>			//circles.addObject( obj );       *moved lower*
			var this_radius = obj.conicRadius;

>			// Added code here:
>			var target_radius = 5.0;
>
>			// Don't gather the circle unless it matches the target radius.
>			if ( Math.abs( target_radius - this_radius ) > 1.0e-12 )
>				continue;
>
>			circles.addObject( obj );

			<...>


- Michael
From: AlexPolo
12 Feb 2023   [#19]
as always lightning service many thanks Michael Ill have a play.

regards
Alex.
From: Frenchy Pilou (PILOU)
13 Feb 2023   [#20]
You can also use something like that! ;)
(some more versatile: works with any forms and without edit any codes :)

BoundingBoxCenterMultiple by Michael Gibson https://moiscript.weebly.com/uploads/3/9/3/8/3938813/boundingboxcentermultiple.zip
Can be used to simulate a replacement of objects
By coupling it for example with CopyToPoints or Vclone from MaxSMirnov
http://kyticka.webzdarma.cz/3d/moi/#CopyToPoints
https://moiscript.weebly.com/burman.html (all scripts and commands collected by Burman)

Vclone replaces the vector by the object with size and orientation of the vector!!!



Following with BoundingBoxCenterMultiple & CopyToPoints
Of course a Circle can be used against here a Cylinder! ;)

Show messages: All  1-20