Tube Sheet - plate with 9,000 holes

Show off your FreeCAD projects here!
Post Reply
JoeB
Posts: 18
Joined: Fri Nov 24, 2017 6:30 pm

Tube Sheet - plate with 9,000 holes

Post by JoeB »

FreeCAD is awesome. I don't post very often but this one took some tinkering and maybe this will help the next person:
1) Trying to make a solid disk and using Part Design boolean cut for each hole will take a long time.
2) Didn't know that Daft downgrade will work on arrays so that individual items could be deleted.
3) Didn't know that Draft > Draft to Sketch works backwards in case corrections need to be made to the sketch
4) Forgot about "record macro". Recording a macro when a extruding a sketch in Part workbench shows how to make a script to do this.
I ran this on a Dell Latidue 5410 with an I5 @ 1.7 GHz and it takes about about 5 minutes to:
1) Read in the coordinates
2) Draw all the circles using Draft.makeCircles
3) Make the sketch using Draft.make_sketch
4) Extruding the sketch


OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23141 (Git)
Build type: Release
Branch: master
Hash: 0eba78d40096720f7a637a9a73c382a08b820bca
Python version: 3.8.6
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United States (en_US)
Attachments
sample.JPG
sample.JPG (204.73 KiB) Viewed 2109 times
chrisb
Posts: 38704
Joined: Tue Mar 17, 2015 9:14 am

Re: Tube Sheet - plate with 9,000 holes

Post by chrisb »

Thanks for sharing!
Suggestions: Draft downgrade is not parametric. Another possibility should be a Link Array, where you can set ExpandArray=True. You can then access individual Elements of the array. I could move the unwanted elements out of sight, but I was not able to deactivate them. Does anyone else know how to do that?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
JoeB
Posts: 18
Joined: Fri Nov 24, 2017 6:30 pm

Re: Tube Sheet - plate with 9,000 holes

Post by JoeB »

No I did not consider Lattice2 - but I will and see how that works.
I disagree that Draft is not parametric, because that is exactly what I did to to build this.
I had two concerns with this problem:
1) Can FreeCAD handle this in a reasonable amount of time? And yes it can!
2) How to make this object - for which I have some additional comments

The Draft array of circles has to be downgraded twice, the first time it gets downgraded to a compound, the second time, the compund gets downgraded to faces, and these faces can be be selected and then "draft to Sketch" something along this:
objs = FreeCAD.ActiveDocument.Objects #assuming all the circles are to be in the sketch, if not a routine to select desired elements would be req'd
Draft.make_sketch(objs, autoconstraints=False, addTo=None, delete=True, name="tsht", radiusPrecision=-1)
doc.recompute()
Selecting 9,000 elements manually like "select all" takes a while and is easy to lose them when "draft to sketch" is selected
Using the "delete=true" above deletes the individual faces.
Thank you for your comments
Ozymandias
Posts: 3
Joined: Tue Nov 23, 2021 10:01 pm

Re: Tube Sheet - plate with 9,000 holes

Post by Ozymandias »

How did you do that nice tube sheet?

I'm struggling with it for a while. I'm new with this whole CAD scene.

Could you show me some tutorial to get this done?

(I'm an NDT guy, I have a lot of tubesheet to test. I just get a drawing but that is always filled with another text and to book the welding defects would be difficult..)

Thank you all.
freedman
Posts: 2242
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: Tube Sheet - plate with 9,000 holes

Post by freedman »

Hit the tutorials and ask some questions in the Help section. These are fairly easy to model because you can work off of a standard XY plane. It looks like the only issue to learn about is how to trim away some holes.
Post Reply