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.

Prioritized or hierarchical mates.

bill_danielsbill_daniels Member Posts: 278 ✭✭✭
With full awareness that I may not know what I'm talking about - here goes.

I have noticed that subsequent mates will sometimes break prior ones which makes modeling manifolds difficult.

Imagine a string of street tees on a pipe making up a manifold.  The behavior I expect is that if I used cylindrical or revolute mates to make all the tees concentric with the pipe, they will stay that way even if I later attempt to mate a misaligned pipe that isn't at right angles to the 1st pipe - i.e I expect the new mate to break, not the older ones - or the 2nd mate will force the misaligned pipe into alignment.  Put still another way, I want those street tees to remain concentrically aligned with the 1st pipe no matter what mistakes I might subsequently make.

I imagine one way to do this is with a "lock" symbol with check box in the mate dialog.  If "lock" is checked, no subsequent manipulations can dislodge the mate.  In the case of a cylindrical mate, this is sort of like "Fix" but still allowing rotation and sliding.
Tagged:

Comments

  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,935 PRO
    The mates should be solving in the order they appear on the tree, like everything else.

    Usually when this happens It's trying to tell you, you messed up and need to take a step back and here is where to look.
    It's not actually breaking the previous mate, just showing you the conflicts.

    What I've seen done before in other CAD is. It will warn you before it tries to solve the mate you are creating, and then gives you a couple options.
    "Break other mates to satisfy this mate"
    "Add this mate and leave suppressed"
    "Delete this mate"

    Or something like that. I'm going from memory, I usually just chose delete the mate and try to debug my assembly myself. 

    Honestly I like it when CAD screams bloody murder when I mess something up. Keeps me focused and aware of how everything is intertwined, and forces me to make smarter / cleaner assemblies.
  • bill_danielsbill_daniels Member Posts: 278 ✭✭✭
    Let me try an example.

    I have a sub-assembly with 4 studs that must fit into 4 holes in a frame.  The holes in the frame are not orthogonal - i.e. not aligning with the XYZ axes. However when I insert the sub-assembly into the main assembly it appears aligned with the XYZ axes.    Of course, to keep the parts of the sub-assembly in their correct relative positions, I must group the sub-assembly before moving it.  To fit the sub-assembly into the holes, it must be precisely rotated around the X axis as it is mated to the frame.  The rotation of the sub-assembly must be precisely controlled by the holes.

    Perhaps I am using the wrong approach but the behavior I expect is that if I fit one stud to its hole in the frame with a revolute mate, I than then fit another stud to its hole with another mate, the sub-assembly will rotate around the 1st revolute mate aligning all studs with their holes.  Instead, I see the 1st revolute mate break as the 2nd stud mates into its hole.
  • lougallolougallo Member, Moderator, Onshape Employees, Developers, csevp Posts: 2,005
    edited March 2017
    This appears to be a bug.  Sorry I have confused this with another discussion I was working on.  Yes we solve everything, all mates all the time.  Today if you add something we solve the entire system so it can be harder to troubleshoot if you have come into a broken mate system and are not sure where to start.

    As far as the approach here, adding a group mate will negate the mates and let you treat it as one unit.  Let me back up and ask this:

    What is the problem you would like to solve by having this order of solving?  In the end, nobody really wants to know (in general) they just want to know it is working.  Is this more of a way to determine what went wrong more than a request of solving order?
    Lou Gallo / PD/UX - Support - Community / Onshape, Inc.
  • bill_danielsbill_daniels Member Posts: 278 ✭✭✭
    Well, not exactly, Lou. (I still could be all wet here)

    What appears to be happening in the 4-stud example above is the sub-assembly is preferentially aligning itself with the 2nd mate's orthogonal ordinates while ignoring the 1st revolute mate.  I would prefer it to ignore the 2nd mate's ordinates and preferentially use the revolute mate to position the sub-assembly.

    The workaround I used was to go to the 2D drawing of the frame bracket to get the angular alignment of the holes.  I then went to the sub-assembly model and placed a mate connector on the sub-assembly stud rotated to that angle.  Then I went back to the main assembly where the sub assembly then aligned with the holes when re-inserted.
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,935 PRO
    I'm sorry, but this really does sound like you're adding too many mates, or you don't have enough degrees of freedom in your sub assembly.

    It's hard to picture all of this is my mind. Can you make a public version of the document?
  • 3dcad3dcad Member, OS Professional, Mentor Posts: 2,475 PRO
    @bill_daniels
    Are you seeing this while creating new mate or also after confirming it? Onshape will ignore other mates while you create new one to show you what you are doing - after confirm it solves all other mates and repositions parts, you can also use button 'solve' to see the final result before confirm.
    //rami
  • bill_danielsbill_daniels Member Posts: 278 ✭✭✭
    This is after confirm.
Sign In or Register to comment.