About files with the extension .mpif
The file with the .mpif extension is a special installation file of the ModPlus (ModPlus Install File).
These files allow you to install and update all ModPlus components using
the auto-update module in case you do not have access to the internet or modplus.org
Icon
Related news and articles
Using
The plugin contains a set of tools to perform a apartment building layout. The tools are presented as tabs in a logical sequence of execution:
- set basic settings
- create or map parameters
- check and correct invalid rooms
- complete the collection of apartments
- calculate areas and apartments typology
- number the apartments
Each tab contains switchable instructions.
The "Functional purpose" parameter, to be completed manually, is used for identification of rooms to be processed.
Example Excel file with the room matrix and apartment types - download.
Settings

Apartment identifier - sets the value of the "Functional purpose" parameter, by which the rooms to be processed will be defined. The default value is "Apartment".
Allowed identifiers - the list of values that can be in the "Functional purpose" parameter, but must not be processed by the plugin algorithms.
Restore hidden instructions - restores hidden instructions on all tabs.

Rounding areas - specifies parameters for rounding the area when calculating. Rounding is taken into account at each step of the calculation (room area is rounded, then the calculated apartment areas are rounded).
Below there are drop-down lists indicating which area - rounded without/by coefficient - to use for calculating living area, apartment area and total apartment area.
Parameters

This tab contains a list of parameters that are required for the plugin to work. The list specifies the parameter name, parameter data type, and parameter description. On the right side of the list you can specify custom common parameters from the current document (parameter mapping). Parameter mapping data is stored in the document.
Parameter data types - text, area, currency - allow you to work with rooms that are in groups.
Use system parameter "Number" instead of "RM_Room number" parameter - if checked, the room number will be written to the system parameter "Number". In this case, the parameter "Room_Number" may not be added to the project.
Open parameter list in notepad - displays a list of parameters in notepad, allowing you to add parameters to the file of general parameters.
Create missing parameters - creation of all parameters missing from the list in the current document
Save as default - saves the current parameter mapping as default. If you run the plugin in another document that has parameters from the mapping, they will be automatically selected in the list.
All subsequent tabs become available if two conditions are met: all the necessary parameters are present in the document and the apartment identifier is specified in the settings.
Sources
The sources contain the data needed to calculate the areas of the apartments and to determine apartment types.
You can create and store in the plugin several source variants (several room matrices and several tables of apartment types). The processing will be performed on the current sources. That is, the sources selected in the drop-down lists.
You can export the current sources - the current matrix and the current table of apartment types - to a single Excel file using the Export current sources to Excel button, and you can export all existing sources to a single Excel file using the Export all sources to Excel button.

The table contains the data used for calculating the apartment areas:
- Room Name (the value of the built-in parameter "Name") is the key by which the values below are matched
- Finishing thickness - thickness of rough finish of compartment in millimeters, which enables taking the finishing layer into account without modeling. It is written to the room parameter (AP_ Finishing thickness) and taken into account when calculating the area of the room (AP_Rounded area).
- Room type - drop-down list that specifies room type (Residential/Non-residential/Non-heated). It is written to the room parameter (AP_Room Type).
- Area factor - a decreasing coefficient with a valid value from 0.1 to 1.0. It is written in the room parameter (AP_Area Factor). It is taken into account when calculating the area with a coefficient (AP_Area with factor) and the area of unheated rooms with a coefficient (AP_Non-heated rooms area). It can also be taken into account when calculating the apartment area, living area and total area, if the corresponding option is specified in the settings (tab " Apartment areas").
- Numbering priority - specify the numbering priority within the apartment
Export, Import - export/import of room matrix to/from Excel. When importing, it is possible both to overwrite the current table in full and to supplement it.

The table contains the data used to determine apartment types when calculating the area of apartments according to the following criteria:
- Number of living rooms
- Minimum area - if a value of 0 is specified, will not be taken into account
- Maximum area - if a value of 0 is entered, will not be taken into account
- Contains rooms - the list of rooms that must be present in the apartment. The rooms are to be separated by semicolons. Optional
- Not contains rooms - a list of rooms that are to be absent in the apartment. The rooms are to be separated by semi-colons. Optional
Below the list there is a drop-down list, indicating what kind of area (floor, living area, total area), the value of which is specified in columns "Minimum area" and "Maximum area" must be used when defining the type of apartment.
Export, Import - export/import of apartment types to/from Excel. When importing, it is possible both to overwrite the current table in full and to supplement it.
Initial Check

It includes checking if there are unplaced rooms in the project, checking if the "Functional purpose" parameter is filled in correctly and if the pair of "Functional purpose" + "Name" parameter values correspond to the ones defined in the room matrix.
 |
- deleting of selected rooms in the "Unplaced rooms" table |
 |
- deletion of all rooms in the table "Unplaced rooms" |
 |
- in line: highlighting and zooming in a non-invalid room. To the right of the table - highlighting and zooming in all non-invalid rooms in the current view |
Note: if a invalid room has the problem "Functional purpose parameter has invalid value", but the value of this parameter is necessary for current project, this value should be added to the list " Allowed identifiers" on the tab "Settings".
Note: Checking of unenclosed rooms is not performed at this stage.
LOCKED APARTMENTS

Displays the apartments whose rooms have been locked. Locked rooms will be ignored when collecting apartments, regardless of the "Functional purpose" parameter value. The locking of apartments is done on the "Collecting apartments" tab.
To unlock the apartments, select the apartments and press the
button.
Collecting apartments

Automated collection of apartments, which is made through geometrical characteristics of rooms, taking into consideration the connection of rooms through doors and room dividers.
If the window has zero Sill Height and the Head Height more than 2m, then it is considered a door.
During apartment collection all rooms belonging to one apartment are assigned a common value in parameter "AP_Apartment ID". The value of the parameter can change when collecting apartments again.
Apartment collection can be performed on the current view, on the entire project, or on selected rooms.
The collection of apartments allows to identify unenclosed rooms, rooms without openings, as well as spaces without rooms in the project. Such rooms will be displayed in the list of "Invalid rooms".
Several apartments can be merged into one. To do this, select the apartments in the list and click
button to the right of the list. If the selected apartments are on different levels, they will not be merged.
Apartments can be locked. The rooms of the locked apartments will be ignored during the next apartment collection, regardless of the value of the "Functional purpose" parameter. To lock the apartments, select the apartments in the list and press the
button. The locked apartments will be removed from the current list and added to the list on the "Blocked" tab.
Note: it is recommended to perform a visual inspection of this stage by means of color schemes.
Calculate apartments

Apartment calculation includes: filling in the data from the "Room matrix" source, calculating the apartment areas, numbering the rooms in the apartment, taking into account the numbering priority, and defining the apartment type from the "Apartment types" source. All obtained values are assigned to the parameters of compartments included in the apartment.
When calculating the apartment areas, the "AP_Apartment tag" parameter is also filled in: the room of the apartment with the largest area is filled in with "1" value, the other rooms are filled in with "0" value.
Apartment calculation can be performed on the current view, on the entire project, or on selected rooms.
The plugin has a built-in automatic recalculation service that:
- performs apartment area recalculation and apartment type definition when the geometry of the rooms included in the apartment changes
- performs full recalculation (completion according to the room matrix, area calculation, calculation of number of living rooms, numbering of rooms, defining the type of apartment) after deletion of rooms, included in the apartment
The automatic recalculation service only processes rooms with a filled in " AP_Apartment ID" parameter.
The automatic recalculation service works even after the license validity period has expired, as long as the rooms have a full " AP_Apartment ID" parameter.
The automatic recalculation service only processes apartments whose functional purpose is equal to the current "Apartment identifier". For example, if the function purpose of the apartment is "Office" and the current identifier in the settings is " Apartments", the apartment will not be recalculated.
Apartment editor

The apartment editor allows you to make manual changes to the values of the apartment areas, as well as to merge multilevel apartments. When merging multilevel apartments, the areas are recalculated and the value of the "AP_Levels count" parameter is filled in.
IMPORTANT: When recalculating apartments on a particular level, the parameter values of rooms belonging to the multilevel apartment, but located on another level, will not be recalculated.
Numbering

Numbering can be done by grouping the apartments by Housings and/or Sections by enabling the corresponding options and by specifying the parameter names from which to take the value of the Housing and/or Sections. In this case, it is considered that the sections are subgroups for the housings. The " End-to-end numbering" property means that the numbering in the next group will continue, not start from the value set in the "Initial number" property.
If you select the Point option in the Start of numbering property, then you will have to select the room determining from which apartment the numbering will start for each group of apartments:

If the Parameter value to number option is enabled, a prefix with the specified parameter value (if any), separated by a hyphen, is added to the apartment number. If the Housing to number and Section to number options are enabled, the same prefixes will be added, according to the parameters specified in the grouping. All values are added in the sequence "Housing-Section-Parameter-Number".
You can number the apartments in the current view or in the whole project.
Numbering by curve - allows to number the apartments, along the curve that crosses the apartments. The curve can be a Detail line or a Model line. When numbering by curve, the grouping by Housings and Sections, as well as the Numbering direction and Start of numbering are not taken into account. When numbering throughout the project, the selected curve will be used on all floors.
The number of the apartments is set to the parameter "AP_Apartment Number".
Views of apartments

Creating apartment views is done by duplicating the current view, followed by cropping along the contour of the apartment. First of all, an attempt is made to create a crop contour considering the thickness of the enclosing walls (only for Revit 2020 and higher). If unsuccessful, an attempt is made to create a crop contour taking into account the thickest of the enclosing walls. If the crop contour is not created, the apartment contour obtained from the room boundaries will be used. If the option "Try to use apartment type as view name" is enabled, the created views will be given a name of the type "LEVEL_NAME - Apartment APARTMENT_TYPE".