Using PartDesignNext correctly
Forum rules
and Helpful information
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help
Also, be nice to others! Read the FreeCAD code of conduct!
Also, be nice to others! Read the FreeCAD code of conduct!
Using PartDesignNext correctly
Hi all,
I would like to get some input on using the PartDesign work bench correctly?
The part I'm designing has many flanges and as created the first flange I looked at the dependency graph and it does not look very linear. I have read repeatedly that the dependency graph should be linear, and after adding the first flange I can see its not going to be that way.
Thanks.
OS: Ubuntu 16.04.1 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8759 (Git)
Build type: None
Branch: master
Hash: 01996d8f139628f249dfb79093a65a93c8104dde
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
I would like to get some input on using the PartDesign work bench correctly?
The part I'm designing has many flanges and as created the first flange I looked at the dependency graph and it does not look very linear. I have read repeatedly that the dependency graph should be linear, and after adding the first flange I can see its not going to be that way.
Thanks.
OS: Ubuntu 16.04.1 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8759 (Git)
Build type: None
Branch: master
Hash: 01996d8f139628f249dfb79093a65a93c8104dde
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
- Attachments
-
- 32T067_v2.fcstd
- (107.1 KiB) Downloaded 88 times
Re: Using PartDesignNext correctly
Hi Sal,
Up to 0.16, the only way to use PartDesign features on an existing solid was to map sketches on faces, this automatically produced a linear graph. But now in 0.17, you have a BodyOrigin supplying standard planes on which you can map sketches, you can also create custom datum geometry... And the Body container wraps everything up. So the "linear rule" no longer applies.
You're doing fine. That advice is not valid anymore with PartDesignNext.salp wrote:I looked at the dependency graph and it does not look very linear. I have read repeatedly that the dependency graph should be linear
Up to 0.16, the only way to use PartDesign features on an existing solid was to map sketches on faces, this automatically produced a linear graph. But now in 0.17, you have a BodyOrigin supplying standard planes on which you can map sketches, you can also create custom datum geometry... And the Body container wraps everything up. So the "linear rule" no longer applies.
Re: Using PartDesignNext correctly
NormandC, Thanks for the encouragement.
Since there are only 2 flange sizes i created one of each and cloned the rest (this definitely does not look right
) however I'm unable to join all the pieces together with the boolean join operation.
The piece is created entirely in PartDesign, should I be looking at a different method to accomplish this?
OS: Ubuntu 16.04.1 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8764 (Git)
Build type: None
Branch: master
Hash: efff1b7773ec20d32efba878c3900076918232d4
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Since there are only 2 flange sizes i created one of each and cloned the rest (this definitely does not look right

The piece is created entirely in PartDesign, should I be looking at a different method to accomplish this?
OS: Ubuntu 16.04.1 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8764 (Git)
Build type: None
Branch: master
Hash: efff1b7773ec20d32efba878c3900076918232d4
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Re: Using PartDesignNext correctly
No, it's definitely not.salp wrote:The piece is created entirely in PartDesign
As soon as you made a Part Mirror of the AdditivePipe, your model stopped being a PartDesign model. You shouldn't have created a Part Mirror, because it mirrored the whole body of the model, not only the AdditivePipe which being a PartDesign feature was automatically fused to Pad. It also created a completely separate solid. You should have used a PartDesign Mirrored feature instead.
Then you compounded the problem by making separate bodies for the flanges, and creating Draft Clones out of them. Then you made a Compound of it all, but a compound is only a group of distinct separate bodies, it does not fuse anything. Was that you intention? I'd think that what you need here is to fuse everything?
Sorry, gotta go, will try to come here later tonight.
Re: Using PartDesignNext correctly
I thought I did it all in Part Design
I read your comments, and I'm going to try it again and will post my results.
Thank you for the help, it really is appreciated.
Sal

I read your comments, and I'm going to try it again and will post my results.
Thank you for the help, it really is appreciated.
Sal
Re: Using PartDesignNext correctly
Hi Sal,
I've been thinking about your model. You created the holes on the base plate, then you added revolutions and their clones to the exact coordinates of the holes. This is rather tedious.
I would go a different route: pad the plate without the holes, and make it a lot thicker; then instead of adding revolutions, subtract grooves that create the hole at the same time.
Once a first groove is created, repeat it with multiple PartDesign LinearPatterns. This is something that was not possible in 0.16, as a PartDesign tree had to remain linear, with Transformation features only working with the feature before it. Now in 0.17 we can not only make transformation features from more than a single sketch-based feature, we can make multiple successive transformation features based on the same sketch-based feature.
After that, simply create a PartDesign Thickness feature to remove excess material from the bottom and all sides.
I made a test file to validate this method. Unfortunately, due to the weakness of the thickness feature, I wasn't able to cut the groove right through and produce a flange with perfect tangent faces underneath. So I had to punch holes through blind flanges at the end with a Pocket. Still, the upside is that you can use external geometry to locate the holes.
Let me know if you need more details on my process.
By the way, there's something really odd with your model: when I edit Sketch (under Body/Pad), the 3D view is completely empty, I don't see anything. Once I quit the sketch edit mode, the sketch is visible again.
When I copy the sketch to another file, everything is fine.
Can someone with the same version as me confirm?
OS: Ubuntu 14.04.5 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8775 (Git)
Build type: None
Branch: master
Hash: 761d684c79afe4a5758e782bc4c4fb88864701a5
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
I didn't have this problem at work with the old 0.17_pre version from last July on Windows 64-Bit...
I've been thinking about your model. You created the holes on the base plate, then you added revolutions and their clones to the exact coordinates of the holes. This is rather tedious.
I would go a different route: pad the plate without the holes, and make it a lot thicker; then instead of adding revolutions, subtract grooves that create the hole at the same time.
Once a first groove is created, repeat it with multiple PartDesign LinearPatterns. This is something that was not possible in 0.16, as a PartDesign tree had to remain linear, with Transformation features only working with the feature before it. Now in 0.17 we can not only make transformation features from more than a single sketch-based feature, we can make multiple successive transformation features based on the same sketch-based feature.
After that, simply create a PartDesign Thickness feature to remove excess material from the bottom and all sides.
I made a test file to validate this method. Unfortunately, due to the weakness of the thickness feature, I wasn't able to cut the groove right through and produce a flange with perfect tangent faces underneath. So I had to punch holes through blind flanges at the end with a Pocket. Still, the upside is that you can use external geometry to locate the holes.
Let me know if you need more details on my process.
By the way, there's something really odd with your model: when I edit Sketch (under Body/Pad), the 3D view is completely empty, I don't see anything. Once I quit the sketch edit mode, the sketch is visible again.

When I copy the sketch to another file, everything is fine.
Can someone with the same version as me confirm?
OS: Ubuntu 14.04.5 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8775 (Git)
Build type: None
Branch: master
Hash: 761d684c79afe4a5758e782bc4c4fb88864701a5
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
I didn't have this problem at work with the old 0.17_pre version from last July on Windows 64-Bit...
- Attachments
-
- F017-separate-patterns-based-on-same-feature-test.fcstd
- (31.93 KiB) Downloaded 75 times
Re: Using PartDesignNext correctly
I don't see the Sketch in the 3D view until it's opened for editing in Sketcher. Running macro_ForceRecompute first didn't help either.NormandC wrote:By the way, there's something really odd with your model: when I edit Sketch (under Body/Pad), the 3D view is completely empty, I don't see anything.
Same result here.NormandC wrote:Once I quit the sketch edit mode, the sketch is visible again.
Confirmed using:NormandC wrote:When I copy the sketch to another file, everything is fine.
Can someone with the same version as me confirm?
OS: Ubuntu 16.04.1 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.17.8775 (Git)
Build type: None
Branch: master
Hash: 761d684c79afe4a5758e782bc4c4fb88864701a5
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Re: Using PartDesignNext correctly
Thanks. I've had a similar problem with a different file, from this post. Pick either file which was created in 0.16.670x, open it in 0.17, then migrate the file (Part Design --> Migrate menu). After the migration, you can't see any sketch element in the 3D view when in sketch edit mode. The sketches open fine if I don't migrate the file. Something weird is going on.
While I'm at it, can you confirm that everytime you open FreeCAD Daily 0.17 and try to open a file (from the menu, icon or shortcut), the dialog window opens in /usr/lib/freecad-daily ?
OS: Ubuntu 14.04.5 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8775 (Git)
Build type: None
Branch: master
Hash: 761d684c79afe4a5758e782bc4c4fb88864701a5
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
While I'm at it, can you confirm that everytime you open FreeCAD Daily 0.17 and try to open a file (from the menu, icon or shortcut), the dialog window opens in /usr/lib/freecad-daily ?
OS: Ubuntu 14.04.5 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8775 (Git)
Build type: None
Branch: master
Hash: 761d684c79afe4a5758e782bc4c4fb88864701a5
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Re: Using PartDesignNext correctly
I just noticed that myself when opening the file in the OP using the same daily build as in my last post above:NormandC wrote:While I'm at it, can you confirm that everytime you open FreeCAD Daily 0.17 and try to open a file (from the menu, icon or shortcut), the dialog window opens in /usr/lib/freecad-daily ?
OS: Ubuntu 16.04.1 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.17.8775 (Git)
Build type: None
Branch: master
Hash: 761d684c79afe4a5758e782bc4c4fb88864701a5
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Re: Using PartDesignNext correctly
Update, I had to give up on trying to use the PartDesign workbench (I couldn't get the work flow straight in my head). So I used the Part work bench to create the different pieces and then join them together. I read you follow up comments, and wanted to say thanks for taking the time help understand this.
I am continuing the learn the Part Design workbench, but its difficult trying to decide which work bench is the best tool for the job.
OS: Linux Mint 18 Sarah
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8778 (Git)
Build type: None
Branch: master
Hash: bd8a296be6e214dafff95dbcdf64d544b9351a32
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
I am continuing the learn the Part Design workbench, but its difficult trying to decide which work bench is the best tool for the job.
OS: Linux Mint 18 Sarah
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.8778 (Git)
Build type: None
Branch: master
Hash: bd8a296be6e214dafff95dbcdf64d544b9351a32
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
- Attachments
-
- 32T067_Spar_UsingPart_v001.fcstd
- (310.27 KiB) Downloaded 67 times