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.
"Best Practice" assemblies.
matt_juric
Member Posts: 7 ✭
So I come from an Inventor/Solidworks background. I've used several other systems as well but essentially they function the same. Assemblies = Collection of parts. Parts =...well part, maybe a multi-bodied part, but when you put it into an assembly it's still a single part.
Also every system I have used has assembly level modifications available, most of the time almost as much as is available in the part.
I'm struggling with how Onshape deals with these.
My current example is a paver patio/Fire pit.
If I make individual parts, like each stone, place them in the assembly I can't cut the parts as there is no assembly level features. So if I have a block that needs to be cut, can't or at least I can't figure it out. I tried "In context" and for the life of me I couldn't figure that out.
If I make the sketch in a part studio and extrude it, first problem is that it does not recognize "Similar" parts so you end up with multiple parts that are the same...but different. Then if I insert that part studio into an assembly it inserts all the individual parts and all of a sudden they aren't tied together in any way.
My assumption here is that I'm missing something obvious because something this simple just can't be that hard. So what is the "Best practice" here from an Onshape approach. Granted this is not my day job as I use Solidworks all day, but I tend to get a bit particular even about things like my paver patio. So what's the best way to have an assembly that one could pull a BOM from that showed "X BLOCK1, Y BLOCK2" and so on while also being able to pattern, cut blocks etc.
So if I were doing this in IV or SW I would just draw up all the single blocks, design whatever pattern in an assembly by inserting blocks, arraying them etc. I would then trim the blocks and again array/pattern etc until my heart was content. I'd drop a BOM on a drawing and it would tell me how many full blocks including the cut ones.
Any help would be appreciated.
Also every system I have used has assembly level modifications available, most of the time almost as much as is available in the part.
I'm struggling with how Onshape deals with these.
My current example is a paver patio/Fire pit.
If I make individual parts, like each stone, place them in the assembly I can't cut the parts as there is no assembly level features. So if I have a block that needs to be cut, can't or at least I can't figure it out. I tried "In context" and for the life of me I couldn't figure that out.
If I make the sketch in a part studio and extrude it, first problem is that it does not recognize "Similar" parts so you end up with multiple parts that are the same...but different. Then if I insert that part studio into an assembly it inserts all the individual parts and all of a sudden they aren't tied together in any way.
My assumption here is that I'm missing something obvious because something this simple just can't be that hard. So what is the "Best practice" here from an Onshape approach. Granted this is not my day job as I use Solidworks all day, but I tend to get a bit particular even about things like my paver patio. So what's the best way to have an assembly that one could pull a BOM from that showed "X BLOCK1, Y BLOCK2" and so on while also being able to pattern, cut blocks etc.
So if I were doing this in IV or SW I would just draw up all the single blocks, design whatever pattern in an assembly by inserting blocks, arraying them etc. I would then trim the blocks and again array/pattern etc until my heart was content. I'd drop a BOM on a drawing and it would tell me how many full blocks including the cut ones.
Any help would be appreciated.
0
Comments
And related parts are designed in one part studio, a fire pit is not that many parts, so they could be in 1 partstudio.
https://www.youtube.com/watch?v=CNmRghXLnmo
I'm assuming you have a bunch of pavers and you need some of them to trimmed to fit (or some similar situation)...
If you just have a few different sizes (for example a brick pattern that needs 1/2 pavers (or 1/3 or whatever) on the ends, then you can create the shorter version by using a context to trim them. What I would do is to create a configuration for that cut so that you can change only this(ese) specific instance(s) in the assembly to have to that cut. And repeat the process for each different trim (i.e. create a new context for each different trim).
This way you could get a BOM calling out the right number of each trimmed part.
Another approach If there are more bricks and too many cuts and you just want to show the finished pattern, you could pattern the bodies in the part studio and do one big trim to generate all the cut ones. If you don't care about the BOM just create a composite part of all the pavers and insert that in you assembly.
Or, delete (or just ignore) all the "full" bricks from you part studio and insert all the trimmed ones. The main downside here is that it might generate geometrically identical ones as different parts so it's up to you to identify these...
You can insert them at once by inserting the entire part studio in your assembly (but you have to "group" them afterwards as they are not going to be constrained) or create a composite in the part studio to bring them as one entity.
I tried it out and forget about creating configurations for each cut paver, that's pretty labor intensive...
The brute force of pattern in the part studio and create a composite is the quickest option if you want to just show the end result... (see "pavers composite" assembly)
The more elegant way is to still pattern in the part studio but use a context to trim as shown in the "assembly from context" example:
https://cad.onshape.com/documents/2941640257854b7d69903720/w/7fc2c35f2f86f6f8569fa6a6/e/85b683f7dadf5d6e181ad8a9?bomType=flattened&renderMode=0&rightPanel=BOMPanel&uiState=62d06339e9e3c16ef4f99635
https://cad.onshape.com/documents/9f9f08dd4941153010c82191/w/837d9a4cc39f7b5274185ef6/e/2be8adca2b60d172b6b9dfbe
Take a look at Assembly 1 in the document directly above
There is a BOM on all the UNCUT parts
I made the cut parts into a composite because it was easy to handle
You can easily count how many pavers would be needed tor these cut parts
Within the linear patterns of the assembly, you will notice some surpressed parts
These are parts that went through the center of the fire pit. Those pavers needed to be suppressed so they wouldn't show in the assembly and also in order to keep them out of the BOM
@steve_shubin, nice patio, I like the sketch layout!
I had another thought a bout leveraging the frames feature.
I did a quick test here and although it has a hard time with figuring out really small bits, it looks promising. I used whatever profile but you could use something solid. One downside is that you won't have bevels on the "cut ends".
The nice thing is that the cutlist automatically recognizes geometrically identical cut parts and groups them for you, as well as shows you how long of a piece you need (so if it's less than 1/2 the length of a full paver you know you can make another of the same from the "leftover"), which is pretty helpful...
https://cad.onshape.com/documents/2941640257854b7d69903720/w/7fc2c35f2f86f6f8569fa6a6/e/376aa1b16764bd71ba47c841?renderMode=0&rightPanel=cutlistPanel&uiState=62d0b0a8323be25853c30845
That is a very interesting approach, in using FRAMES
I've not spent much time with that FS
It would be interesting to see how it would work on a 100% modular layout, where there was no need to cut any pavers
For instance on something like this, where every single paver was the same size, such as 9 x 9 in this case
Or I'm sure a layout could have a mix of 9 x 9 and 9 x 18 pavers, where again, there would be no cut pavers
Here's a better way to do this:
Use the "Texture" featurescript to fill a defined area:
https://cad.onshape.com/documents/46897a2d60ade8dbb04077f3/v/fd618404d70d644d45e12f84/e/68452f8ffdcc0b0f041ffe43
You have to do the math as you give it a number of rows and columns but that's not too bad if you use variables or the "measure" FS.
I also just realized you can use a "cutlist" on parts not created by the frame tools! Which means you can get your count of parts that way to identify the different ones and group all identical ones together.
See this example:
https://cad.onshape.com/documents/2941640257854b7d69903720/w/7fc2c35f2f86f6f8569fa6a6/e/a2bcb96ae8bf1068edbeb4d3?renderMode=0&rightPanel=cutlistPanel&uiState=62d0fca1be317052dc9a2474
Using the texture tool
Impressive !!
And it took just a few features to get the job done
Nice
Thanks for the tip Eric
I went the group approach. Still a couple things I think I'm missing.
1) Why would you need to "Group" a "Part".
2) If there is some advantage to inserting all the parts separately, one would think that most people would want a part inserted as one.
3) When you insert the part you no longer have access to the defining features of the part, Origin, Top, Right left planes? In my case I wanted to insert part, mate origin to origin.
I'm sure this is all just because I'm used to other CAD systems and missing something, but this approach seems clunky unnecessarily difficult.
I have not tried you composite approach yet, maybe that would be easier.
https://cad.onshape.com/documents/cbc356c0d69cb9dfa232ce81/w/6428fc64ba50d7b87d87bada/e/367235b2b09e5a29c7c0dc96
That's looking pretty neat, the composite lets you insert a bunch of parts as one entity so (they can't move relative to each other).
The group relation just locks the parts relative to each other in the assembly (instead of mating them one by one). Regarding parts in assemblies not bringing in their ref. geometry, I didn't like at first but it really does cleanup the assembly environment.
You just need to get more comfortable with manipulating mate connectors, I suggest looking at some of the training material as it will help (and also doing some experimenting with them on your own). Once you master it it will make way more sense and you won't miss having these extra planes and origins...
This might be a good one to start with:
https://learn.onshape.com/learn/video/using-assembly-mates-in-onshape
https://cad.onshape.com/documents/97c3faa07618d3e6860c55df/w/95439d983db3ffafdba8c068/e/7dbc36acabdd224072d1fc47
A lot of good stuff in your document
Thumbs up on your fire pit
I especially like the design of the walk coming down to the pool
Nice pattern on those pavers
Twitter: @BryanLAGdesign
Fire pit will go on the other side of the deck and lead down to the pool as well.
I then wanted to put a Grill/Grate on top that could be removed to use the fire pit or could remain and would have natural gas run too it as a fire feature.