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.

Options

Transform Faces or Features

javl0p_2javl0p_2 Member Posts: 56 ✭✭
I'm using the Transform command within a Part Studio and I can only select entities such as bodies. Is it possible to select Faces or Features to which apply the transformation?

To me, that option seems way more convenient than applying the transform command to entities only. Specially in the context of a Part Studio.

Comments

  • Options
    javl0p_2javl0p_2 Member Posts: 56 ✭✭
    Ok thanks. It is a pitty that transform can not be applied to features. Specially convenient for holes, patterns... 

    I might add an IR based on that.

    Cheers!
  • Options
    _anton_anton Member, Onshape Employees Posts: 278
    Easy way to copy a hole is with the Linear Pattern feature, which is more robust (if we stick to best practices) than the Transform feature.
  • Options
    nick_papageorge073nick_papageorge073 Member, csevp Posts: 670 PRO
    javl0p_2 said:
    Ok thanks. It is a pitty that transform can not be applied to features. Specially convenient for holes, patterns... 

    I might add an IR based on that.

    Cheers!
    Make the feature (or many groups of features) as "new" instead of "add". Then you can move it, pattern it, copy it, etc, at will. When finished, union it to the main body. This is a very common technique in many of the cad systems.
  • Options
    javl0p_2javl0p_2 Member Posts: 56 ✭✭
    javl0p_2 said:
    Ok thanks. It is a pitty that transform can not be applied to features. Specially convenient for holes, patterns... 

    I might add an IR based on that.

    Cheers!
    Make the feature (or many groups of features) as "new" instead of "add". Then you can move it, pattern it, copy it, etc, at will. When finished, union it to the main body. This is a very common technique in many of the cad systems.
    Nice workaround. Thanks!
  • Options
    billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,015 PRO
    edited June 2023
    Let's say you have an image on a part. Then, derive the part into another part and try to transform it into place. You can't move the image inside the new part because you can't transform it. 

    Seems like the whole idea of part in part inheritance, you need to make transforms be more complete.


  • Options
    S1monS1mon Member Posts: 2,382 PRO
    Super derive will let you use parts and sketches from another studio wherever you want.
  • Options
    billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,015 PRO
    Image doesn't come over:

    It's an image issue and not the sketch or the sketch is there but no image. I like the warning when you add 2 derived, "use an assembly".

    Do you know what this means?



  • Options
    billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,015 PRO
    S1mon never mind, it's a new insertion point for the part you're bringing in. That's cool.


  • Options
    Evan_ReeseEvan_Reese Member Posts: 2,066 PRO
    @javl0p_2 There is a custom Transform Pattern feature by @konstantin_shiriazdanov that can do this. 
    Evan Reese / Principal and Industrial Designer with Ovyl
    Website: ovyl.io
  • Options
    javl0p_2javl0p_2 Member Posts: 56 ✭✭
    @javl0p_2 There is a custom Transform Pattern feature by @konstantin_shiriazdanov that can do this. 
    Beautiful! Thanks!!
  • Options
    billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,015 PRO
    Transform pattern is nice once you get the derived part inside your part. But it won't move sketches and other stuff like images.


    What would make super derive "super" is to add a boolean subtraction to the importing derived part. Any body with the color red "FF0000" can be subtracted in the same feature.



    Forever, people have been asking for this and I believe part in part (derived) is a great place to achieve this request. Inside super derive you could add an option to subtract, which in the case above would not only bring in the screw, but would include a hole for the screw. 

    I'm not against part in part project structures, I'm just trying to justify them to myself. There are some good things about this workflow ie.. it always updates, but it is slow, featurescript works everywhere so you can achieve infinite control without relying on configurations. There are no BOM's for part studios, has anyone created a table for to generate a bom inside a part studio?


  • Options
    javl0p_2javl0p_2 Member Posts: 56 ✭✭
    billy2, regarding BOMs within Part Studio, you can use Custom Tables and a bit a code to actually output a BOM like table.

    Here's a link with a tutorial to customize it yourself.

    https://www.onshape.com/en/resource-center/tech-tips/tech-tip-how-to-build-a-custom-table-using-featurescript

  • Options
    billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,015 PRO
    edited June 2023
    @javl0p_2

    Thanks for the link, I was hoping someone else would do it. My current thinking is that every deliverable should be an assembly which has a BOM. Doing everything inside a studio has been debatable since day 1 of OS. No one inside the SW world designs multi-body inside a part although they could. 

    There's a lot of people designing in a studio because it's easier, but it's got some issues.

    I did spend yesterday reviewing the superderive & transferpattern FS code. Super derive is doing a lot more than I gave it credit for and makes me think differently about part in part (derive). With super derive you can actually derive features vs. parts. This means you could create an external library of PCB bosses, plastic tabs or any set of features that you use in a design. Also, you could create a library of cavities that could be super derived into your design creating standardized cavities in your design. The variables in super derive allow you to control reference id's for features created allowing you to attach your feature to a sketch and then controlling your design through a sketch. 

    transferpattern is pretty cool and around 100 lines of code. It's interesting because you can specify vertices or MCs. Be careful using vertices because they don't have direction. 

    last try in his stack handling vertices:
        try silent
        {
            const origin = evVertexPoint(context, { "vertex" : query });
            return coordSystem(origin, vector(1, 0, 0), vector(0, 0, 1));
        }
      
    I do like the way he drops down trying to build coordinate systems, but vector(1,0,0) & vector(0,0,1) are world which forces everything along world Z. If you're going to use transferpattern, and I do, stick to using MCs vs. vertices unless everything in your life is aligned to Z.

    After reviewing these 2 feature scripts closely, I don't think you can copy an image around making a part in part more attractive.


    Here's my use case for designing in an assembly:


    -I have a pcb studio to create a pcb part
    -I add a pcb image to help me remember what the pcb part looks like
    -I create an assembly of these 2 items so I don't have to deal with a part & image in the assembly
    -I position one pcb in the assembly
    -I then replicate it using a linear pattern in the assembly
    -My BOM is correct




Sign In or Register to comment.