Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. 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.


Creating multiple parts that vary only in input variables?

brooks_talleybrooks_talley Member Posts: 27
I'm building a cabinet which will have 24 drawers. Of them, 20 have unique dimensions.

My prototype drawer part studio can produce all 20 of them by just varying width & height parameters; everything else is parametric and works out beautifully.

Now... is there some better way to produce my 20 unique parts than just making 20 copies of that part studio, each with those two variables changed? I've heard "configurations" used in this context, but I'm not sure that's what I'm looking for (and it doesn't seem to exist today, anyway).

I don't really mind the "20 copies" approach, but it is a pain, and it means that a minor design change that would otherwise be painless has to be propagated by deleting 19 of those part studios, re-creating them, and re-entering their unique variables. There must be a better way, right?

Best Answer


  • Options
    john_mcclaryjohn_mcclary Member, Developers Posts: 3,910 PRO
    until we get configurations, you will need to use a workaround such as 20 copies, or 20 versions.. sorry

    I hear "Configurations are comming.." or "It's our most requested thing" but until then I'm patiently waiting it's arrival
  • Options
    brooks_talleybrooks_talley Member Posts: 27
    Configurations will be a way to do it, but in the meantime, a feature pattern that includes a variable could work, though it's a bit tricky/obscure.
    Basically your feature list would look something like this:
    1. Set variable #index = -1
    2. Set variable #index = #index + 1
    3. Set variable #width = [12 in, 16 in, 14 in, 15 in, 16 in][#index]  (you'll need 20 widths in the array for 20 copies)
    4. Set variable #height = [6 in, 6 in, 5 in, 5.5 in, 4.5 in][#index]  (you'll need 20 heights in the array for 20 copies)
    5-30 Model your drawer, using #width and #height
    31. Feature pattern features 2-30 20 times.

    Hope this helps -- post if you need an example of something like this.
    That incrementing variable as part of the feature pattern is very clever. I'll also use that to move the drawers to a nice layout. Thanks!
  • Options
    pbcpbc Member Posts: 10
    I've followed this with a list of 3 unit lengths per variable - however when I feature pattern (linear pattern), in both the part studio, as well as the assembly the part's are all the same - using the first item in the list.

    Is this an obsolete workaround or am i just missing something?
  • Options
    ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 1,179
    No, this workaround should still work -- be sure you pattern the variable increment and not the initialization.  If you're having trouble, post a link to your document and someone will take a look.
    Ilya Baran \ VP, Architecture and FeatureScript \ Onshape Inc
  • Options
    3dcad3dcad Member, OS Professional, Mentor Posts: 2,470 PRO
    I suppose drawers are not completely unique? I mean if they share same sidepanels and have similar bottom & backpanel you could create everything in single studio and derive standard parts (which are shared among drawers). This would enable the possibility to run the whole thing with x, y, z variables.

    Usually if I make things with custom design I use single studio for easier and faster design & check but if there is a possibility that same parts could be reused in other products later then I create drawers into library and create separate assembly. 

    Difficult to say without seeing the design and not knowing if you are aiming for efficient desing & produce or just learning Onshape functions.
  • Options
    pbcpbc Member Posts: 10
    edited July 2017
    Take a look; the part studio with the drawers is labeled "iterative drawer".

  • Options
    paul_brittonpaul_britton Member Posts: 37 ✭✭
    edited July 2017
    pbc... you have selected 'Part Pattern' in the Linear pattern feature , you need to select 'Feature Pattern', and select all the features in the lefthand feature tree from the second #index assignment, upto 'Extrude 5'
    Then you will get two different sized box instances...

    BUT you'll need to alter Sketch 2 slightly to give the correctly sized bottom part... (and at the moment I can't work out why the inferred/derived/projected/convert size isn't working!)

  • Options
    paul_brittonpaul_britton Member Posts: 37 ✭✭
    The only way I can make the bottom work is by making it part of sketch 1 and changing the extrude to add a secone end point to give the offset extrude...

Sign In or Register to comment.