Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Looking for a method to create swept volume of a moving assembly

I have an assembly that moves, and I need to create a volume of all space the moving parts occupy along the whole range of movement. The move is of course not linear, nor rotational, but a hybrid of both. It is controlled by two non-parrallel slots sliding on two pins.
I can't imagine this is the first time such is required. Is there possibly a tool existing that can do that, and which I am not aware of?
Here's a simplified sample. The grey part moves. The original assembly has way more parts and different dimensions, though:
https://cad.onshape.com/documents/32520a0e2a226330185ad2c5/w/3d62121d28258c15f9d2a76a/e/3a4051b822ff1f8c201401ce?renderMode=0&uiState=68a4e19d8364e24e3ffe8bbb
What might be the best way to create such volume?
Comments
You need a body sweep feature, which hasn't yet been fully implemented by anyone that I've seen so far. CADSharp has a couple of features that are partly what you're asking for but not quite all there.
Body sweep in Solidworks exists, but it doesn't create very clean results.
Depending on what you're looking to accomplish, there is a FeatureScript which will trace a path for a linkage. You might be able to do that for the furthest out edge on the moving part.
I don't fully know how to optimize this, but I think you can solve the 2D problem with Curve Generator.
Simon Gatrall | Staff Mechanical Engineer | Carbon, Inc.
@S1mon ooh that linkage script hasn't made it into my collection yet. I might be able to extend that into a better body sweep implementation. Got a link?
@Derek_Van_Allen_BD the text should be linked above, but…
https://cad.onshape.com/documents/d8aab1e0e7ae10038a6830e0/w/9dfdd631d025960813b8f2df/e/621b5be97d38074a1f1546e5
Simon Gatrall | Staff Mechanical Engineer | Carbon, Inc.
@S1mon
Looks like it is an enterprise link.
@wayne_sauder
Thanks. I missed that. Should be fixed now. I wish the Forum would warn us when we make that mistake.
Simon Gatrall | Staff Mechanical Engineer | Carbon, Inc.
Hey @martin_kopplow,
Have a look if you can do it with this custom feature from Neil: https://cad.onshape.com/documents/408b473b45dbdc2c1ea6f956/w/1d3090ad84ff6ff900bec08c/e/397b5c9a4764bb333502a3e4
@David_YL_Nguyen @S1mon @Derek_Van_Allen_BD
Hi everybody,
thank you all for your replies and sorry for staying submerged for a few days after my posting: It's the work.
Creating curves for select points was my first approach, too. It is good enough for visualisations and presentations. I went for the volumetric approach because that would allow to put a "forbidden" volume into the design, add a safety offset to it and then check the intersection with all other parts that may be come into existance in the area. Ideally the volume would be associative and adapt whenever changes are made to the moving subassembly.
So, I took a look at Neil's FS and found it a bit hard to figure out what is going on and what the preconditions are. I would have expected some variables for the linkage movements and limits. Then, there is a single line that is made into a composite part, maybe just to make it 'stiff'. Anyway, the feature appears to move the parts according to the mates assigned, in increments, each time copying everything in place and later apply a boolean to all copies created. While that kind of works, it leaves gaps.
I believe I'll get closer to the goal by using a combination of the Curve Generator approach at key points and then create surfaces on these curves that envelop a volume.