Save 15% On All Single Licences! Loading... GET OFFER

How to Use Mechanical Blocks, Xrefs and 3D Solids in BricsCAD Mechanical

Quick answer: Mechanical blocks, Xrefs, and 3D solids are regular entities carrying assigned mechanical data (name, physical material, BOM status, custom properties), treated like mechanical blocks: they show in the Mechanical Browser, appear in Bills of Materials, accept a specific physical material, and factor into mass calculations. Since they’re still regular entities, virtually every BricsCAD command still works on them, block editor for local blocks, reference editor for in-place Xref changes, or BIM linear solids to model structural shapes while remaining BOM-includable, this bridges directly to the BIM linear solids concept covered in this hub’s earlier BIM section. Parametric blocks, parametric external references, and arrays of these objects are all supported too, enabled by default, and hybrid assemblies mixing all three types are possible.

Fully Supported Commands

Mechanical browser; Bill of materials (BMBOM and BOM manager); Mass properties (BMMASSPROP); Drawing views; BMMECH; BMUNMECH; BMOPEN; BMOPENCOPY; BMDISSOLVE; BMBALLOON; BMEXPLODE; BMEXPLODEMOVE; SMUNFOLD (mechanical solids); SMEXPORTOSM (mechanical solids); BMLISPGET (except component parameter options); the BRX Components API; BMPROPERTIES; BMNEW; BMFORM (or BLOCK instead); BMINSERT; BMCONNECT; SMASSEMBLYEXPORT; BMREPLACE (or BLOCKREPLACE for blocks); SMREPLACE; BMLOCALIZE (or XBIND for blocks); BMEXTERNALIZE (or BLOCKTOXREF for blocks); BMTRAILINGLINES.

Commands That Don’t Support Them

BMCONVERT (which converts BIM Linear solids with circular profiles into Mechanical assemblies, the specific bridge between this hub’s BIM and Mechanical sections); BMCREATECOMPONENT; BMDEPENDENCIES; BMHIDE; BMSHOW; BMRECOVER; BMUPDATE; CONVERTCOMPONENTSTOBLOCKS.

Creating Mechanical Blocks, Xrefs, and 3D Solids

Convert named block references, external references, and 3D solids placed directly in model space into a Mechanical block from the current drawing, or from a local block opened in the block editor.

  1. Run BMMECH. In model space, type the desired Mechanical block name (defaults to the document name).
  2. Select the block references, external references, and/or solids to convert. Choose Yes to convert everything into mechanical objects, Blocks to convert only block references and external references, or No to convert just the document (or block being edited) itself.

Any blocks containing these mechanical blocks or entities convert to mechanical too, and vice versa, ensuring the document keeps a valid mechanical structure.

Inserting Mechanical Blocks

Use BMINSERT or INSERT to insert a Mechanical block into another document. To attach a document with a root Mechanical block as an external reference instead, use XATTACH (if the current document has no root Mechanical block, one creates automatically).

Removing Mechanical Structure

From a document: run BMUNMECH and confirm Yes.

From a local named block: open it with BEDIT, run BMUNMECH, and confirm Yes.

From a mechanical entity: select it in the Mechanical Browser, right-click, and choose Unmech.

Assigning Properties to Selected Instances

Set properties both on a block itself and on individual instances, letting you assign different physical materials to different inserts of the same Mechanical block, for example; an instance without its own value inherits the block’s.

  1. Select the required instances in the Mechanical Browser.
  2. Go to the Properties section.
  3. Set the desired value.

This only affects the specific block references, external references, or solids selected, not their source blocks or documents, even if every insert happens to be selected. To set a property on a local block itself, open it in the block editor, select the root Mechanical block, and set the value there; to set it for every external reference of a document, open that document and change the root Mechanical block’s properties directly.

Bill of Materials Grouping

BOMs group mechanical blocks, Xrefs, and solids purely by name and properties, not geometry. Two different blocks sharing the same name and identical parameters and properties (physical material included) group into the same BOM row, done intentionally for performance and flexibility. This matters especially for solids: each gets a unique, automatically assigned name by default, so copying one gives the copy a new name, treating it as a completely different entity in a separate BOM row, unless you assign both the same name, in which case they group together regardless of their actual geometry. The same applies to blocks and external references.

Since V23, individual instances of mechanical blocks and solids can carry their own BOM status, respected by the Bill of Materials; the Mechanical Browser panel supports setting this for top-level instances.

Copying Mechanical Blocks, Xrefs, and 3D Solids

By default, a copied entity gets a different name and counts as a completely separate entity. If you set a name yourself, though, it carries over to the copy, and the copy then counts as another instance of the same entity in the Bill of Materials.

Frequently Asked Questions

Can I include a BIM linear solid in a Bill of Materials while still modeling it as a structural shape? Yes, that’s exactly the kind of workflow this system supports, though converting it fully to a Mechanical assembly (via BMCONVERT) isn’t supported for these object types.

Why do two solids with identical geometry sometimes end up in different rows of my BOM? Because BOM grouping is based on name and properties, not geometry, each solid gets a unique auto-generated name by default, so copies need a matching assigned name to group together.

Can I assign a different material to just one insert of a mechanical block, without affecting the others? Yes, select that specific instance in the Mechanical Browser and set its Material property directly; instances without an explicit value simply inherit the block’s.

Does BMUPDATE work on mechanical blocks, Xrefs, and 3D solids created this way? No, BMUPDATE is among the commands that don’t support these object types.

Powered by Full Pelt Ltd