Files
IfcOpenShell/src/ifcsverchok

IfcSverchok

IfcSverchok is a Sverchok plugin that allows you to create native IFC models alongside your parametric Sverchok geometry.

Packaged installation

IfcSverchok is packaged like a regular Blender add-on, so installation is the same as any other Blender add-on. You can download the package for installation at the Get BlenderBIM website.

Like all Blender add-ons, they can be installed using Edit > Preferences > Addons > Install > Choose Downloaded ZIP > Enable Add-on Checkbox. You can enable add-ons permanently by using Save User Settings from the Addons menu.

Before installing, you will also need to install the BlenderBIM Add-on and install Sverchok.

Nodes

List of nodes (nodes not listed here are not concidered ready for use). If you find bugs/unexpected behaviour in any of them, please open an issue or get in touch otherwise.

Node name Inputs Outputs Description
IFC Create Entity - Names
- Descriptions
- IfcClass
- Representations
- Locations
- Properties
- Entities Ids Create IFC Entity. Takes one or multiple inputs.
If 'Representation(s)' is given, that determines number of output entities. Otherwise, 'Names' is used.
IFC Read Entity - Entity Id - Id
- is_a
- Other entity attributes (dynamic)
Decompose an IfcEntity into its attributes. Takes one entity id as input, returns attribute values.
IFC BMesh to IFC Repr - Context type
- Context identifier
- Target View
- Blender Objects
- Representations
- Locations
Blender mesh to IfcShapeRepresentation. Takes one or multiple geometries.
Deconstructs joined geometries and creates a separate representation for each.
IFC Sverchok to IFC Repr - Context type
- Context identifier
- Target View
- Vertices
- Edges
- Faces
- Representations Sverchok geometry to IfcShapeRepresentation. Takes one or multiple nested lists of inputs.
IFC Create Blender Shape - Entity Id(s) - Blender Object(s) Create Blender shape from IfcEntity Id. Takes one or multiple IfcEntity Ids.
Creates shapes in scene and returns them in output socket.
IFC Add Spatial Element - Names
- IfcClass
- Elements
- Entity Id(s) Add IfcElements to an IfcSpatialElement. Takes one or multiple nested lists of inputs.
Input can also be a (list of) spacial elements to be aggregated.
IFC Write File - path Writes active Ifc model to path.
N.B.! It's recommended to use the 'Write File' panel under the "IfcSverchok" tab instead.
IFC Class Picker - IfcProduct (from drop-down)
- IfcClass (from drop-down)
- IfcClass Pick an IfcClass from drop-down list.
IFC By Id - Id - Entities Get IfcElement by step id. Takes one or multiple step ids.
IFC By Guid - Guid - Entities Get IfcElement by guid. Takes one or multiple guids.
IFC By Type - IfcProduct (from drop-down)
- IfcClass (from drop-down)
- Custom IfcClass
- Entities
- Entity Ids
Get IFC element(s) in file by type. Pick an IfcProduct and an IfcClass or give a custom IfcClass.
IFC Add Pset - Name
- Properties
- Element Ids
- (Pset) Entities Add a property set and corresponding properties, in a JSON key:value format, to IfcElements.
IFC Generate Guid - Guid Generate a unique GUID.
IFC Get Property - Entity Ids
- Pset name
- Prop name
- Value Get the value of a property of an IfcEntity. Can take multiple entity ids.
IFC Get Attribute - Entity Ids
- Attribute Name
- Value Get the value of an attribute of an IfcEntity. Can take multiple entities.

IfcSverchok panel

IfcSverchok creates a "IfcSverchok" tab in the Nodes panel. It includes a "Re-run all nodes" button that creates a fresh IFC File and a "Write File" button. It's recommended to re-run all nodes before saving the file either through the panel or the "Write File" node.