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.

Offset Mate in assembly by Z axis in postive direction requires negative value

ryan_mcgoldrickryan_mcgoldrick Member Posts: 66 ✭✭✭

Hi just trying to understand the behaviour,

I have two mate connectors aligned with Z up as to global origin using a fastened mate when I input an offset I(I am desiring they move away from one another which is a positive value in terms of XYZ to global orientation) it requires me to enter a negative value.


Could someone explain the reasoning to this? Cheers

Answers

  • Arunabha_NagArunabha_Nag Member, Onshape Employees, Developers Posts: 17

    Applying an offset should be viewed as moving the second mate connector from the first mate connector by the offset amount in the direction you specify the offset for.

  • matthew_stacymatthew_stacy Member Posts: 487 PRO
    @ryan_mcgoldrick, if it irks you to no end to have to key in a negative offset to get your parts to move in the direction that you want, there is a work-around.

    I observe that all of the default mate connectors are oriented normal to the surface, with positive-Z pointing OUT.  As a consequence of this when you mate faces of two parts together the Z-axis of the mate connectors will be pointing 180 degrees opposite of one another. Hence when you prescribe a positive Z-offset the parts move toward each other (and overlap).  Entering a negative Z offset causes the parts to back away from each other.  You indicated that you would like to reverse this behavior.

    If you create your own custom mate connector on one of the parts you can FLIP PRIMARY AXIS on that mate connector.  I did this in the Part Studio, but it should also work if you create the mate connector in the assembly.

    In the assembly mate your custom mate connector (which is oriented INTO rather than OUT of the part) to a default mate connector on the other part.  Now the two mate connectors are pointing in the same direction.  Positive Z offset will move the parts away from one another rather than forcing them to overlap.  This is more work than what @Ar@Arunabha_Nag suggested, but will behave the way that you want it to.  Unfortunately I have not been able to accomplish this without using a custom mate connector.  Flipping the primary axis on a default mate connector flips the entire part over (useful in certain circumstances, but not what you are looking for here).




  • ryan_mcgoldrickryan_mcgoldrick Member Posts: 66 ✭✭✭
    Maybe I'm missing something here, but for me I always set up my mate connectors for parts in the PS then bring them in to the assembly.

    and I find that if I have 8 parts in total 4 of two different types and the mate connectors are all the same setup for each part as they are just a copy paste that sometimes i have to enter a positive value and sometimes a negative it changes randomly.

  • ryan_mcgoldrickryan_mcgoldrick Member Posts: 66 ✭✭✭
    In my mind the z,x,y axis offset should be to in reference to the global workspace
  • matthew_stacymatthew_stacy Member Posts: 487 PRO
    @ryan_mcgoldrick if you have two parts in the studio, Flip Primary Axis on one (and only one) of them so that the Z-axis of that mate connector points into the part.  If the two mate connectors are oriented in the same direction (e.g. both up) then a positive-Z-offset should move separate the parts in the assembly.  If the mate connectors point toward or away from one another, then your positive-Z-offset will cause the parts to overlap.

    I understand your preference to specify offsets relative to the global coordinate axes ... but how would that work for parts that are rotated (e.g. diagonal to the global axes)?  Face or edge based coordinates seem like the only possible consistent frame of reference.
Sign In or Register to comment.