How to create a custom part with auto cut hole?

Hello,

This has probably be asked a million times, but after a couple of hours searching, I could not manage to find the answer.

I am creating a custom part (let imagine a screw for the example), that needs a hole, so that when I insert the screw in an other drawing, it makes the hole in the target part.

1) I created a new DWG, where I created the part.
2) In the Library panel, I add my part as a custom part.
3) I insert it in the target project.

This works fine.

But how to create a hole with a given shape?
I created the shape of the hole and experimented with several incomplete indications that I found around:

1) Creating a BC_SUBTRACT layer, or BC_Subtract layer, and adding the hole to it.
2) Using BMMECH, not sure what it does.


None seems to work, I just get the hole as a standard entity in the target project.

Comments

  • Hello.

    The subtracting 3D solids - the hole - need to be placed on the BC_SUBTRACT layer.
    An existing component could be used as reference, to see exactly how the layers are created.

    The other solids - the screw - should be placed on another layer, 0 for example.

    Then, the drawing can be converted to a library block.

    The CREATELIBRARYBLOCK command can be used for this task.

    https://help.bricsys.com/en-us/document/command-reference/c/createlibraryblock-command?version=V26&id=165079064173

    With this, the new block is available for inserting in a new drawing.

    It is important to note that the BC_SUBTRACT feature works when:

    • The subtracting solids are inside a block,
      and
    • The entity affected by the subtraction is a 3D solid.

    So, in the main drawing, you need to place a block over a 3D solid for the subtraction to have an effect.

    If, for some reason, the hole is not created in the 3D solid, you could use the BMLINK command to make sure the block is linked to the 3D solid.

    https://help.bricsys.com/en-us/document/command-reference/b/bmlink-command?version=V26&id=165079057581

  • Hi,

    Thank you for your answer.

    I don't really know what I was doing wrong, but since I started saving the part with a new name instead of updating one existing, I managed to get it as I want.

    Thank you for your help.