This tool  lets you coordinate the openings for MEP service across disciplines and linked files.

Main features of the tool are:

  • The function can be used by all disciplines to create provisions for voids and actual voids. The actual void is created when the provision gets an Accepted status, provided the provision element is in the same file as the building element that needs the opening.
  • A "provision for void" is typically made by MEP engineers. It is a solid object representing a void request in a building element. This provision is created as a family which can be communicated back to the structural engineer through Revit model.
  • The function can be used with IFC linked files. When exported to IFC these families become IfcProvisionForVoids. They can be imported into softwares such as Tekla Hole Reservation Manager.

User Interface

Create Provisions

There are different ways to create the provisions depending of structural type and group modes.

For the structure type analyses there are three selection options:

  • Both - includes all structure types within a model
  • Structural - includes only the structural category types 
  • Architectural - includes only the architectural category types

For the group modes analyses there are two selection options:

  • Parameter
  • Selection

The Parameter group mode analyses enables:

  • Create provisions for all elements within categories.
  • Pre-select one or more MEP elements to create provisions for only the selected MEP elements.
  • To group provisions just assign the same "PFV Group ID" to the MEP elements
  • Use Scopeboxes to limit the area for which to create provisions for.
  • An active sectionbox in the current view will override the scopebox UI selection.

The Selection group mode analyses enables:

  • Create common provisions for all pre-selected MEP elements


The create provisions in MEP project workflow consists of the following steps:

  1. Run command Provision for Voids,
  2. Select a interference project containing service element categories for which you need to create voids or provisions for void – it’s current project,
  3. Select a building project containing building element categories for which you need to check for void requirements – it’s Revit or IFC linked project,
  4. Select the structure type,
  5. Select the group modes,
  6. Select the building targets,
  7. Select the provision targets,
  8. Select the intersect mode,
  9. Select the Create command.

The create provisions in structural project workflow consists of the following steps:

  1. Run command Provision for Voids,
  2. Select a interference project containing service element categories for which you need to create voids or provisions for void – it’s Revit linked project,
  3. Select a building project containing building element categories for which you need to check for void requirements – it’s current project,
  4. Select the structure type,
  5. Select the building targets,
  6. Select the provision targets,
  7. Select the intersect mode,
  8. Select the Create command.

Provision Status

Approving provisions is typically done by the structural engineer which owns the building elements.

  • Provision status "Accepted" will create the actual opening
  • Provision status "Conditional" will not create the opening and requires a comment.
  • Provision status "Rejected" will reject the provision.


Status is transferred along with the provisions to MEP engineers when using the "ProvisionSyncronizer" and "Import Provision" functions.

Provision Family

The tool will create unhosted families for rectangular provisions and facebased for circular provisions.

- For rectangular profiles you will get a rectangular provision.
- For circular profiles you will get a circular provision.

When a circular profile hits a face at an angle the resulting cross section will be elliptical. Where the largest elliptical diameter increases the more slope you have.
To avoid a very large circular provision we have set a 1,5 ratio limit.
So if the provision diameter gets to more than 1,5 of the MEP diameter you will get a rectangular provision

Note that you at any time can override a circular profile to generate a rectangular provision, 
This is done with the parameter "PFV Rectangular Override" found on Pipes, Ducts and Conduits.


This mode requires a usable 3D view in the selected building document where the building elements are visible.
If we can’t find a suitable 3D view you will need to create one:

- If you have a linked RVT file (either from Open RVT or Open IFC) just open the file a create a 3D view.

- If you have a linked IFC file (Link IFC) use an IFC import template that contains a 3D view.
The IFC import/link template is set in Open->IFC Options -> "Default Template for IFC Import".

Non-Intersecting Cable Trays and Conduits

You can create Void Provisions for Cable Trays and Conduits even if they don't physically intersect the building elements.
If the distance from the Cable Tray / Conduits endpoint to the wall is inside the specified range you will get a void provision.

Parameters of provisions

You can set the provision oversize in the properties of the family and/or in the service targets drop down menu.
In the Type Properties you will find a "Oversize Size" parameter.
This will set size for all instances of that type.

When the family is placed it has parameters for oversize both on Type and Instance Properties.

                                      

                           Type Properties                                                                                              Provision Targets


You can further override this per instance.
In Instance Properties there’s "Oversize Override".

There’s also a "Actual Oversize" parameter.
The "Actual Oversize" will display the actual oversize in current use, type or instance in that order.
If overridden per instance it will display the overridden value.
Giving you clear schedulable oversize from one single parameter overridden or not.

Provision parameters on MEP elements

A Cable Trays, Conduits, Ducts and Pipes has these parameters to allow you more control.

"PFV Group ID"
If you have a number of smaller runs close you might want to create just one void covering them all, to do this just assign them to the same PFV Group ID.

In the example below we have assigned 2 ducts to "PFV Group ID": "pfv-1".
Doing so will create common provision for two ducts as shown here:


"PFV Exclude"

Use the PFV Exclude checkbox to exclude the service or building element from provisional void calculation.

"PFV Rectangular Override"

Use the PFV Rectangular Override checkbox to force a rectangular shaped void provision for circular service runs.

If you want to examine in detail what the function does there’s a log file created in %TEMP%. The log file is named "ProvisionForVoid_FileName.log".


Other Improvements:

Round provisions are now created parallel to the intersecting element instead of parallel to the wall, floor, ceiling or roof. For elements with a small slope like sewerage pipes the openings is still created parallel to the building element but with a slightly bigger diameter.


Insulation on MEP elements are now included when creating provisions.
You now get a message about new and updated Provisions (or errors) when Creating provisions

Provisions Synchronize

Use the Synchronize function to synchronize the imported provisions between projects. This function give us preview of imported provisions into working project and provisions in linked projects, so we can see difference between them. 


The Synchronize UI is divided in two repository:

- Opened document/project is repository where we are working

- Linked document/project is external repository and it contain provisions created in linked project

Either repository can be used by all projects depending of the provision creating/importing stage, and the repository position can be switched vice versa.


The provisions preview in the Synchronize UI can be filtered by the ScopeBox function or synchronized for entire building.

The preview in repository can be filtered by: Discipline, Shape and Status, or clicking on/off buttons for preview provisions existing in one or both repository.

The selected provision in repository will be highlighted in project also we can do multiple selection using the Shift or Ctrl button.

If we want create or remove the SectionBox for selected provision in project using the create or remove SectionBox buttons.

Also there are options for create SectionBox and zoom by:

  • Double Click to zoom to element
  • Shift – DblClick create ScopeBox
  • Alt – DblClick create ScopeBox and Zoom


If the provisions already has a comment, new comment will be appended to existing.(e.g. "Existing Comment [New Comment]").


Provision Status

 The function provides the ability to see status on the elements causing a collision on the provision element to be able to filter provisions when synchronizing between projects. 


This is implemented by specifying the Parameter that contain the status of the building elements in the projects. The value from the colliding elements are copied to two parameters on the provision when creating provisions.


Import/copy provisions from external repository can be done using the arrow buttons at the synchronize dialog.

We can set deviation range for import new provisions using the rounding parameter.

Import Provisions

Use the Import command for importing provisions from other linked RVT and/or IFC files.

The copy provisions can be filtered by:

1. Scopebox selection
    and/or

2. ProvisionStatus selection options

(ProvisionStatus cannot be used if you import provisions from an IFC file.)

Provision Schedules

The Schedule command creates two provision schedules:

  • Pset_ProvisionStatusItemized scheduled by items with revision status
  • ProvisionStatusByDiscipline scheduled by system and count
  • Provisions_ExcludePipesByDiameter scheduled by pipe diameter

(The "Pset" prefix allows you to export the schedule as a propertyset to IFC)


  • No labels