How to Create a Custom Window or Door in BricsCAD BIM
Quick answer: Any geometry or component can be built from scratch and inserted into a BIM model, refined further at any time. The process breaks into four parts: create the file, create the subtractor solid, create the frame, and create the glass panes.
Step 1: Creating the File
- Choose New from the File menu.
- Select one of the predefined templates for the unit system you want: BIM-Window-imperial or BIM-Window-metric, DWT files that already contain the required layers and properties.
- Set the
BC_SUBTRACTlayer as current, via the Drawing Explorer or the layer field in the Properties or Layers panel, the same layer concept covered on this hub’s mechanical blocks and BIM window creation pages. - Draw a closed polyline (a rectangle, for example) representing the shape of the opening.
- Save the file. User-defined components live in the Components folder, whose path is set by
COMPONENTSPATH(defaulting toC:\ProgramData\Bricsys\Components, with more folders addable in Settings). The predefined component library sits atC:\Program Files\Bricsys\BricsCAD V26 en_US\UserDataCache\Support\en_US\Bim\Components.
Step 2: Creating the Subtractor Solid
Make sure BC_SUBTRACT is the current layer.
- Use the outline you drew earlier, positioned in the first quadrant of the WCS’s XY-plane, with its lower-left corner at the origin (0,0,0).
- Select Extrude and move the cursor downward (negative Z) to extrude the outline into a solid.
- Either click a point, or type a value in the dynamic dimension fields and press Enter.
Make sure the extrusion’s height is greater than the width of the wall this component will insert into.
Step 3: Creating the Fixed Frame
The frame’s outline coincides with, or runs parallel to (for a rebate), the subtractor solid’s outline.
- Set the
WINDOW_FRAMElayer as current. - Highlight the subtractor solid’s top face.
- Extrude that top face downward (negative Z), using Extrude’s Create option (press
Ctrlonce). - Type a value for the fixed frame’s thickness in the dynamic dimension field.
- Turn off
BC_SUBTRACTby clicking its light bulb icon. - Use Offset to create a parallel offset of the frame’s outline, at a distance equal to the frame’s width.
- Hover over the inside boundary of that offset and choose Extrude from the Quad.
- With extrude mode set to Subtract, move the cursor downward to cut an opening in the frame.
- Either click a point, or type a value in the dynamic dimension fields and press Enter.
Step 4: Creating the Glass Panes
- Set the
GLASSlayer as current. - Use
DMEXTRUDEto extrude the inside boundary of the window frame, with a height equal to the glass pane’s thickness; select the Create option fromDMEXTRUDE‘s tooltip. - Move the glass pane down (negative Z) if the frame’s outside face doesn’t coincide with the outside face of the wall it’ll be placed in.
- Optionally classify the whole drawing as a BIM window element: type
BIMCLASSIFY, pressIfor window and Enter, then pressDfor Drawing and Enter until the command finishes. It’ll now be automatically recognized as a BIM Window element when inserted into another drawing. - Save the drawing.
- Optionally assign more information after inserting it elsewhere, using the Window Common category in the Properties panel, thermal transmittance coefficient, fire rating, and similar details.
Adding 2D Entities (Door Swing)
Optional 2D symbols either replace or supplement the 3D solid section, depending on their layer’s prefix:
BRX_2D_orBRX_2D+_: added to the section block without analytical hidden line removal (HLR) when the section plane intersects the components, or with HLR when it doesn’t.BIM_2D_SECT_orBIM_2D_SECT+_: added only when the section plane intersects the components, always with HLR.BIM_2D_BACK_orBIM_2D_BACK+_: always added, always with HLR.- A
+suffix shows both the 2D symbol and the 3D solid section in the result; without it, only the 2D content shows, and every solid is ignored for section generation.
BRX_2D remains available for backwards compatibility only.
- Add a new layer named
BRX_2D+_*and set it active; geometry here becomes visible when you cut a section through the component and generate it onto a sheet, alongside the cut-through 3D representation. - Before drawing, make sure the Z-axis is perpendicular to the component’s bottom plane and pointing upward, either by rotating your UCS 90 degrees over the X-axis, or by enabling Dynamic UCS.
- Switch to Top view using the LookFrom control.
- Draw the 2D geometry on that layer, using only polyline entities, lines won’t be recognized when generating the component’s section.
- Switch back to a 3D view and confirm the
BC_SUBTRACTsolids, the component’s own solids, and your new 2D geometry are all visible.
Parametrizing Your Component
Parametrize the 3D geometry first, then the 2D geometry (for more depth, see this hub’s separate coverage on parametrizing and working with parameters and constraints).
- Select all the component’s 3D geometry, including the
BC_SUBTRACTlayer’s geometry (turn that layer on first). - Run
PARAMETRIZEand check the resulting constraints in the Mechanical Browser panel. - Optionally rename parameters (for example,
Length_XtoWidth), or adjust constraints and parametric behaviour. - Use
UCSto reposition it so the 2D geometry lies in the UCS’s XY-plane. - Select that 2D geometry.
- Run
PARAMETRIZE2Dand check the resulting constraints in the Mechanical Browser panel. - Repeat step 3 for the 2D parameters, and connect the new 2D X-direction parameter to the 3D
Widthparameter by typing that 3D parameter’s name as the 2D parameter’s value. 2D constraining works differently from 3D constraining, but shared parameter names let you control both together. - Switch your UCS back to World, to avoid undesired results when the component is inserted elsewhere.
- Turn
BC_SUBTRACToff. - Save the drawing.
- Insert the component from the Library panel or with
BMINSERT, the same mechanical block insertion command covered on this hub’s mechanical blocks page, then select it and adjust its parameters in the Properties panel to confirm everything behaves as expected.
Frequently Asked Questions
What layer must be current when creating the subtractor solid? BC_SUBTRACT.
Why does my 2D door swing symbol not show up when generating a section? Check both the layer prefix (which controls when it appears) and whether you drew it with polylines specifically, line entities aren’t recognized.
How do I link a 2D parameter to control a 3D parameter together? Type the 3D parameter’s name directly as the value of the corresponding 2D parameter, connecting them under the same shared name.
How does BricsCAD automatically recognize a custom drawing as a BIM window when it’s inserted elsewhere? Classify the drawing first with BIMCLASSIFY, choosing window and drawing scope, before saving it.