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.

Best Workflow for Symmetric Assemblies

steve_cohensteve_cohen Member Posts: 27 EDU
I'm working on an assembly that has planar symmetry without mirroring, i.e. all the parts on the left are the same on the right, with each part the same distance from the center as its twin.  I tried linear patterns, but every distance is different, and I need to change two different dimensions to move both parts.  Symmetry is not easily preserved.

I can just make two instances and offset a fastened mate for both from a central mate connector, but then when I move one side, I have to find the other side and change that mate too.   I can't use variables to make them consistent, since that is not available in assemblies, but at least the distances are the same.

Is there a better way?

And is there a better way to simulate a central plane?

Best Answer

  • steve_cohensteve_cohen Member Posts: 27 EDU
    edited February 2019 Answer ✓
    I think the answer might be what John said.

    Layout sketches (in a PartStudio) can have symmetry, and can then be inserted in to an assembly.  The symmetrical parts can then be mated to the sketch in the assembly.  One dimension moves both parts, keeping them symmetric.  It is a little awkward, but it works.

    Even better would be a way to make planes symmetric in a part studio.

Answers

  • Cris_BowersCris_Bowers Member Posts: 281 PRO
    Could you share the assembly you are trying to work with?
    I will often add a mate connector at the origin or the center of the part if you can and use that to make an assembly circular patter with two instances. Only requires mating one side and works just like a mirror.
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,890 PRO
    edited January 2019
    you could make a sketch with mirror symmetry using points.

    then use a transform/copy in the part studio using two adjacent points.

    or use those points to create mate connector offsets.

  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,890 PRO
    edited January 2019
    edit: double post.. forum glitched and I posted the image twice... ignore this
  • dick_van_der_vaartdick_van_der_vaart Member Posts: 51 PRO
    @steve_cohen Here is another solution.
    After creating the parts on the left, use Transform by XYZ and check Copy parts.
    When using configurations you can adjust the parameters and toggle on and off
  • steve_cohensteve_cohen Member Posts: 27 EDU
    Transform by XYZ is just in Part Studios?
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,890 PRO
    In an assembly you would use a mate to do the same work as a transform
  • steve_cohensteve_cohen Member Posts: 27 EDU
    In an assembly you would use a mate to do the same work as a transform
    Looking back, I don't think the Transform addresses the issue either.  I would like a way to make sure that two of the same part are the same distance from a center plane/Mate Connector in an assembly.  Two unlinked dimensions do not do this, as far as I can tell.
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,890 PRO
    If you want to link dimensions and do it with equations, try measure value
    https://cad.onshape.com/documents/77baa8153589a7fc5f289829/v/f34206305bd673c93758b47b/e/181cb871f3008e6b885df46a

    it lets you take a measurement of pretty much anything, then saves the result in a variable
  • steve_cohensteve_cohen Member Posts: 27 EDU
    Can you do equations in assemblies?
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,890 PRO
    No

    But you could make an in-context reference
  • steve_cohensteve_cohen Member Posts: 27 EDU
    So I should make two mates, e.g. fasten mates, with offsets. Then I use the FeatureScript function Measure Value, which saves it in a variable.  But as far as I know, variables are not available in assemblies.  So I need to make an in-context reference to the assembly, so in that in-context part studio, I get two variables from the Measure Value, then use equations to make them equal?  That doesn't seem like it would drive the mates.

    Could you please explain the process from beginning to end?  Thank you for your patience.
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,890 PRO
    I assumed you needed to measure something in the assembly.

    If you just want something like a global variable:

    Create a blank featurescript, 

    FeatureScript 736;
    import(path : "onshape/std/geometry.fs", version : "736.0");

    annotation { "Feature Type Name" : "Globals" }
    export const globalsFeature = defineFeature(function(context is Context, id is Id, definition is map)
    precondition
    {
    }
    {
      // Global variables here

     setVariable(context,"NameOfVar", 7);
    };

    Then you insert that featurescript at the top of every partstudio that you want to reference that global variable #NameOfVar 

    you can do all of your calculations in the featurescript and store all of your variables there if you like.
    Then output the results using setVariable();
    You can have as many as you like.
    ---------------------------------

    Otherwise, you can create a layout sketch:
    Make a partstudio that contains layout sketches that you can mate to
    all your calculations would be done in this part studio, then derive this layout sketch into any partstudio/assembly that you want to attach to.

    Dose that make any sense?
    Here is a video from Onshape showing how it works
    https://www.youtube.com/watch?v=Rvu9763-2I4

  • steve_cohensteve_cohen Member Posts: 27 EDU
    edited February 2019 Answer ✓
    I think the answer might be what John said.

    Layout sketches (in a PartStudio) can have symmetry, and can then be inserted in to an assembly.  The symmetrical parts can then be mated to the sketch in the assembly.  One dimension moves both parts, keeping them symmetric.  It is a little awkward, but it works.

    Even better would be a way to make planes symmetric in a part studio.
  • Lucas_KuhnsLucas_Kuhns Member, csevp Posts: 88 PRO
    Here's a link where you can vote on this improvement request: https://forum.onshape.com/discussion/5763/mirror-feature-for-assembly-workflow/p1
Sign In or Register to comment.