What it does
Does what the "Analyze" button of the "Move level" window does: it reads the model and counts the model elements tied to the level, without changing anything.
- Move whole: elements that depend on this level only. Revit moves them with the level, keeping their offsets. Of these, it tells how many are hosted by another element (for example a window in a wall) and follow their host.
- Stretch or shrink: elements with one end on this level and the other on another level (for example a wall with its top constraint on another level). They change height.
- In use by others: in workshared models, the tied elements owned by other users. Revit may refuse the change.
- By category: for each category, how many move whole and how many stretch.
If you give the new elevation (or the offset), it also tells from where to where the level would go, whether it goes up or down, and by how much. If no element is tied to the level it says so: only the level would move, with its views.
Spot elevations and fixed annotations are not checked.
How it works
- Your AI calls the tool with the level (name or id) and, if you like, the new elevation or the offset. Without a level it uses the one selected in Revit or the active view's level.
- BIMit asks Revit for the elements that reference the level with a fast filter; with "full analysis" it reads every element of the model instead (slower, same expected result).
- Your AI gets the counts, the table by category, how many elements were read and the seconds taken and, on request, the element ids. So you know what happens before you ask for the move.
Example requests
- "If I take Level 1 to 3.20 m, what moves?"
- "Analyze moving the Roof level by +300 mm and tell me which walls change height."
- "How many elements are tied to the selected level, category by category?"
What changes and how to undo
Nothing: the tool only reads and changes neither the model nor any file. The actual move is done by Move level.
Limits
- Works on a project with at least one level, not on a family.
- Give
quotaorsposta_di, not both. - Counts model elements only: annotations, views and grids are not counted.
Parameters
| Parameter | Meaning |
|---|---|
livello | Level name. Without livello and livello_id: the level selected in Revit, or the active view's level. |
livello_id | Level id. |
quota | New elevation in project units (comma or point; you can type the unit, e.g. "3500 mm", "3.50", 10' 6"). Measured from the level's own point, unless riferimento says otherwise. |
riferimento | Where quota is measured from: livello (default: the level's own point, as in the window), punto_base_progetto (Project Base Point), punto_rilievo (Survey Point), origine_interna (Internal Origin). |
sposta_di | Instead of quota: how far to move, signed, in project units (e.g. "+300 mm", "-0.5"). |
analisi_completa | true to read every element of the model instead of Revit's fast filter (slower, same expected result). |
elenca_ids | true to get the ids of the elements that move whole, that stretch and that are in use by others (default false). |