Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape, CAD, maker project and design.

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.

Why are Part Studio Mate Connectors not features of the part geometry it was built from?

StephenGStephenG Member Posts: 142 ✭✭
I created a Mate Connector to facilitate creating an assembly Mate.

The Mate Connector was created using geometry selected from a part.

Subsequently, a Transform feature was used to move the part the Mate Connector was "attached" to; the Mate Connector did not move with the part.

I am having trouble understanding why/how this behavior is a benefit. It certainly wasn't what I was expecting. 

Based on a strict rule interpretation of how history based modeler work, I can see how this might happen, but only if the Mate Connector is not considered a feature of the part.

Why isn't a Mate Connector considered a feature that "adds" geometry to the part?        

Answers

  • john_mcclaryjohn_mcclary Member, Developers Posts: 742 PRO
    You will need to move your mate connector after the transform in the tree.

    Yea, it seems weird; but I can see a few occasions where I wouldn't want it to move with the part.
    I use them as a fixed point on the origin when I import a part into an assembly.
    So if I want to slide a part over, I don't have to remember to adjust the mate connector later.
  • philip_thomasphilip_thomas Member, Onshape Employees, Developers Posts: 943
    edited May 16
    John is right, that is one solution.
    The other is to include the Mate Connector in the transform.
    Philip Thomas - Onshape
  • bruce_williamsbruce_williams Member, Developers Posts: 250 PRO
    StephenG said:

    Why isn't a Mate Connector considered a feature that "adds" geometry to the part?        
    The beauty of OS is you have options.  The Mate connector is owned (or assigned) to a part but is not added to the part's geometry.  We had a discussion sometime ago about our policy of never moving imported geometry (mostly automotive applications).  That way we can rely on 'world coordinate' being car position. 

    However, we also need tooling coordinates for fixtures, molds, or components.  That is where Mate Connectors shine. They give us choice of moving with a part or not.  World coordinate is always fixed and Mate Connectors are more flexible.  
  • mahirmahir Member, Developers Posts: 737 ✭✭✭✭
    edited May 16
    I think everyone else has given you options for getting the desired results. But to answer your question more literally, the mate connector is indeed directly connected to the geometry used to create it at time. Technically, the mate connector is a separate feature and the time/context of its creation corresponds to just before the mate connector in the feature tree. Anything below that has no effect on the mate connector. A MC is basically just a local coordinate system. You can even completely blow away the entire geometry, and the MC will still be there. This is the nature of all history-based modelers like OS. A feature can reference other features before it, but not after.
  • StephenGStephenG Member Posts: 142 ✭✭
    @john_mcclary, @philip_thomas I appreciate the suggestions (work around) on how to get Mate Connectors to move with the part geometry they are  created from, but my question is why doesn't OS treat Mate Connectors as an associated feature of the part.


    @john_mcclary
       "I can see a few occasions where I wouldn't want it [Mate Connector] to move with the part.
        I use them as a fixed point on the origin when I import a part into an assembly.
        So if I want to slide a part over, I don't have to remember to adjust the mate connector later."

    I do not understand this particular use case. Would you mind walking me through how the current behavior actually benefits you? It seems you have found a clever use that leverages what I would consider a product design limitation, or bug in OS. (Have you tried using Mate w/offsets to impart a "Slide over" effect?)


    @bruce_williams
       "The beauty of OS is you have options."

    I love options too, but I do not see any options here. Where is the option to make the Mate Connector follow the part? It follows the geometry at the feature level, that is, if the feature geometry in which the Mate Connector was based on changes the Mate Connector follows the change.

    Note: If the Mate Connector is added on the assembly part instance it moves when the instance is moved.

    I do not comprehend your "imported geometry", or "tooling" arguments that just MC's current behavior. Could you elaborate?


    @mahir
      "Technically, the mate connector is a separate feature and the time/context of its creation corresponds to just before
        the mate connector in the feature tree. Anything below that has no effect on the mate connector."

    I concur with you observation, Mate Connectors currently operate as "separate features" and are not affected by downstream operations against the part geometry it was created from.  But why? This behavior is illogical based on my understanding of what Mate Connectors are used for.

    If a Mate Connector in a Part Studio is a separate thing then entries for them should appear in the Feature List summary area similar to way it does for parts, curves, and surfaces.


    @Everyone
    Here is an excerpt from OS Online Help...

              "Mate connectors are local coordinate system entities located on or between entities and
               used within a mate to locate and orient instances with respect to each other."

    It is my understanding is that Mate Connectors exist to facilitate the creation of assembly mates. Adding them at the Part Studio level allows the designer to "flag" key locations on the part geometry where features in other part instances are designed to interface in the context of an assembly. Therefore, it follows that a Mate Connector should follow the part geometry. I can accept there might be some reason (at the moment that completely escapes me) for this to not be the case, but the default behavior should be to follow (the money) the part.

    After struggling with the inefficiencies of using implicit mate connectors to create assy mates I have learned the value of adding MC to parts in the context of the Part Studio only to be surprised by their behavior.

    OS's Online Help states "Mate connectors are local coordinate systems", but this is not true. While Mate Connectors might visually resemble a coordinate system and can be leveraged in some non mate functions (ex. to quickly change the viewing angle to view normal to the primary (blue) with the secondary axis (red, or green) rotated horizontal/vertical) they fail the coordinate system test. To pass the test, a coordinate system's geometric attributes (origin, axis, and planes), must be referenceable wherever a point, line, or plane is information is queried for; this cannot be done with Mate Connectors. 

    When I 1st started using OS one of the things I noticed was the lack of 3D reference entities typically found in other MCAD systems: Coordinate Systems, 3D Lines/Curves, 3D Points; things that allowed modeling at a more abstract level. I learned to make do with 3D Plane features and 2D Sketches. I think I understand why OS purposely choose not provide all the traditional 3D reference entities (building blocks), but I really miss coordinate systems, especially the ability to create a "null" part were the base feature is just a coordinate system.

    In short, I am still struggling to understand the benefit for Mate Connectors, created in Part Studios, to behave this way.

  • Jake_RosenfeldJake_Rosenfeld Moderator, Onshape Employees, Developers Posts: 814
    @StephenG

    I love options too, but I do not see any options here. Where is the option to make the Mate Connector follow the part? It follows the geometry at the feature level, that is, if the feature geometry in which the Mate Connector was based on changes the Mate Connector follows the change.

    As @philip_thomas said above, if you select the Mate connector as an additional selection in the "Entities to transform or copy" selection, they will move with your part.


    Jake Rosenfeld - Modeling Team
  • john_mcclaryjohn_mcclary Member, Developers Posts: 742 PRO
    @StephenG
    2LDR

    I'm sorry you feel like it's a design flaw unfortunately many of us consider it to be a benefit.
     
    There's no way they can make that an option because it completely changes the behavior of a mate connector in a part studio and that means there's no way that two or more people can edit the same document and expect the same result.
     
    And in these situations the current setting usually wins out;
     jus sayin
  • Jake_RosenfeldJake_Rosenfeld Moderator, Onshape Employees, Developers Posts: 814
    @StephenG @john_mcclary

    John is correct that user settings cannot directly affect regeneration (for the reason he mentioned).  What is possible, though, would be a check box in the Transform feature along the lines of "Also transform owned mate connectors" (or something a lot better sounding originating from our design team).

    If you feel strongly about a checkbox like this Stephen, please submit an Improvement Request from the Improvement Requests section of the forum.  If other users feel similarly to you and vote on your request, we could end up prioritizing this work. 
    Jake Rosenfeld - Modeling Team
  • john_mcclaryjohn_mcclary Member, Developers Posts: 742 PRO
    @Jake_Rosenfeld oh; didn't think about an option there,

    sure, that should work just fine for both camps
  • StephenGStephenG Member Posts: 142 ✭✭
    @Jake_Rosenfeld

    It is against my "religious convictions" to submit Improvement Requests (it is a long story) and it would be inappropriate given my limited experience with OS. I do not feel I have sufficient grasp of the OS product philosophy and targeted market to submit an IR at this time. Which brings me back to the original purpose of this discussion question:

          Why are Part Studio Mate Connectors not features of the part geometry it was built from?

    My desire is to gain better insight into the inner workings (philosophy) of OS so I can leverage the tool in the best possible way.  So far I have not received a coherent answer to this question. There have been claims the behavior is a benefit but the claims have not been substantiated, at least in a way I understand.

    So far the responses have focused on fact that OS gives me the ability to either include them in the transformation (by manual selection), or let them remain at their original created 3D location. Given the purpose of a Mate Connector is to facilitate creation of Mates in an assembly I do not see not how not moving associated Mate Connectors by default is a benefit, but a potential source of error. The only logical reason I can think of for this behavior is to create a spatial relationship between the Part entity and the MC where the MC is no longer coincident to any part geometry. If this was the situation I would apply the transform to the MC not the part, or simply use the Move/Realign options in the Mate Connector feature in the first place.

    Clearly, I am missing the key reason why OS works the way it does here in terms of seeing the behavior as a "benefit".   I think my question would now be better stated:

       What is the practical benefit of not including Mate Connectors which belong to a Part entity being transformed from the Transform feature?

    The one reason I have given: "to create a spatial relationship between the Part entity and the MC where the MC is no longer coincident to any part geometry" is probably not the only reason.

    I am looking for other reasons that would help me better understand how to take advantage of this "benefit". 


         


  • konstantin_shiriazdanovkonstantin_shiriazdanov Member Posts: 596 ✭✭✭✭
    edited May 17
    StephenG said:
    I am looking for other reasons that would help me better understand how to take advantage of this "benefit".
    Transform feature transforms bodies that you selected, and doesn't transform those which you didn't select. Body types that exist in part studio are - solids, sheets, wires, points and TADAAAM - mate connectors. So they implemented mate connector as separate body type. Actually I think it is something like a point body with special graphich representation and attributes. So when you apply transfrom it works just how one would expect. Though in some other cases MC's behave not like real bodies but that is another story.
  • mahirmahir Member, Developers Posts: 737 ✭✭✭✭
    @StephenG  said:
    What is the practical benefit of not including Mate Connectors which belong to a Part entity being transformed from the Transform feature?
    The practical benefit is that everything in the feature tree, including mate connectors, is a separate "feature". Features are really just functions - functions that take previously built geometry/information as input and output new geometry/information based on that input.

    Variables (another "information" function) behave this way as well. I can set #x=1in, set an extrusion depth equal to #x, and then add another variable declaration for #x=2in. Just because #x is now 2in, doesn't mean I want that extrusion depth to be 2in, and it isn't.

    It's a matter of consistency. If you're going to make mate connectors act differently than every other feature in a part studio, there would have to be a very good reason. The way mate connectors work now does not hamper anyone from placing them exactly where they need to be. Just like any other feature/function there has to be some logic involved (i.e. transform before MC vs MC before transform), but nothing is keeping you from getting the desired results.

    In the end, yes, one could conceivably build a model that does not behave well where mate connectors are all over the place, but that's not any different than any other CAD software. It's not Onshape's job, nor is it feasible, to force good modeling practices on everyone. It just provides the tools.
  • owen_sparksowen_sparks Member, Developers Posts: 1,287 PRO
    edited May 17
    Yup, I mean no disrespect but I believe there could be some over thinking here.  We can place mates exactly where we want and we can chose to transform them with their associated part or chose to move the part and leave the mate where it is.  That's enough for me to be productive. :)

    One workflow where I've left mates alone when moving a part is whilst looking at a factory layout. Stick a mate on datum for a "building origin" and then transform the bits of equipment where I want.  All parts then mate to one origin.  This is rare, I'm far more likely to add an offset to the mate and keep it transformed with the part.

    One thing I'd prefer to see is a check box within the transform feature stating "Transform all associated mates"  with the default to on.  (IMHO It's currently too easy to hide the mates and therefore not remember to transform them.)

    Cheers 'n' all,

    Owen S.
    Production Engineer
    HWM-Water Ltd
  • StephenGStephenG Member Posts: 142 ✭✭
    I think it is time to close down this discussion question post. Let me summarize what I learned a how I benefited.

    To be honest, I was becoming frustrated because everyone was telling me how to work around the issue, or how OS works instead of answering the why it works the way it does question, and why this behavior is a benefit to me.

    The presupposition behind my original question was:

       Mate Connectors exist to facilitate the creation of assembly mates. Adding them at the Part Studio level allows the
       designer to "flag" key locations on the part geometry where features in other part instances are designed to interface
       in the context of an assembly.

    Therefore, it naturally follows that Mate Connector should by default follow the transformed (Owner part) entity they belong to.

    The fact that no one could provide me a practical example (a design scenero) that extolled the benefits of not automatically including Mate Connectors troubled me. @owen_sparks provided one, but he even admits that what he did in the context of a Part Studio using Transform is better accomplished in the context of an assembly using mates with offsets. 

    I have come to the conclusion there is no benefit from the perspective of supporting the design process; the benefit of this behavior is related to OS's history modeling philosophy working in a logical consistent manner.

    My understanding of what a MC is was overly simplistic and incomplete. I thought a MC was equivalent to other feature tools that "modified" the geometry. Now I know OS treats them as separate entities; this subtly was not obvious to me. I now know that what appears in the Feature operations list may contain features that create entities in the Part Studio that are not accounted for in the bottom area of the Feature list. (Planes are another instance of being a separate entity.)

    Here is an analogy that helped me understand how OS treats MC added to part entities in a Part Studio (the behavior is different with a part instance). A MC is a entity primarily used with part entities to facilitate interaction with other parts in a assembly. This makes MC similar to a prosthetic device, ex. hearing-aid, or artificial arm/hand, to enhance a person's interaction ability. While the prosthetic "belongs" to the person much like a MC belongs to the part, they are separate entities. To be effective the person needs to bring them along with him much like a MC needs to be included with any transform of the part. My original (flawed) thinking was to treat a MC as an "implant" to the part.

    Regarding adding an option to have Mate Connectors included with a Transform, I would vote against it. My issue was one of misunderstanding; there is no need to change the behavior of OS.

    If a check box option was to be added, it would be better located in the create Mate Connector feature form: [ ] Moves with geometry. 
         

            


       



     
Sign In or Register to comment.