top of page

Macro4BIM Dynamo Package

 

The Dynamo package "Macro4BIM" is structured with categories that represent the main environment of the relative nodes.

𝑀⁴𝐵 Areas.GroupElements

𝑀⁴𝐵 Document.GetWordOccurences

𝑀⁴𝐵 Document.LinkRevitFiles

𝑀⁴𝐵 Element.AtElement

𝑀⁴𝐵 Element.FilterByGroup

𝑀⁴𝐵 Element.GetGroup

𝑀⁴𝐵 Family.AllInActiveDoc

𝑀⁴𝐵 Family.ReplaceWithSharedParameter

𝑀⁴𝐵 FilledRegion-GetMaterialBelow

𝑀⁴𝐵 FilledRegion.LineStyle

𝑀⁴𝐵 RayIntersector.ByOriginAndDirection

𝑀⁴𝐵 RayIntersector.ByOriginAndDirection_Link

𝑀⁴𝐵 RayIntersector.ByOriginAndDirection_Material

𝑀⁴𝐵 Views.KeyElements

𝑀⁴𝐵 Views.KeySchedule

𝑀⁴𝐵 Views.ScheduleColumnWidth

𝑀⁴𝐵 Warnings.Elements

Revit
ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

areas: var[]..[]
elems: var[]..[]
areas_height: var[]..[]

OUTPUT

areas: var[]..[]
groups: var[]..[]
outside: var[]..[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

typeToPlace: FamilyType[]
element: FamilyInstance[]..[]
parameterName: string[]..[]

OUTPUT

element: list of new elements

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

OUTPUT

allFamilies: a collection of all the families loaded in the active document

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

filledRegion: FilledRegion[]..[]
LineStyle_name: string

OUTPUT

result: the edit FilledRegions

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

view: View3D
origin: Point[]
direction: Vector[]
categories: categories[]

OUTPUT

distances: num[]
points: Point[]
elements: FamilyInstance[]
materials: Material[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

schedule: ViewSchedule
field_name: original field name
width: desired width in mm

OUTPUT

schedule: ViewSchedule

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

word: string

OUTPUT

result: organized list showing what is the Id, the Name, the Parameter Name, and its Value, where the word has been found.

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

elems: var[]..[]

OUTPUT

modelGroup: elements in model groups.
detailGroup:element in detail groups.
out: element not grouped.

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

families: var[]
includeNested: bool
par_toBeReplaced: string
par_toReplacedWith: string
refresh: bool

OUTPUT

editFamilies: list of the edited family names.
editNested: list of the "path" of each edited nested family
exceptions: all the exceptions that have been occurred.

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

view: View3D
origin: Point[]
direction: Vector[]
categories: categories[]
nrOfIntersections: int

OUTPUT

distances: num[]
points: Point[]
elements: FamilyInstance[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

KeySchedule: View

OUTPUT

elements: var[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

source: string[]
refresh: bool[]

OUTPUT

elements: var[]..[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

files: var[], path of the Revit files to be linked
relative: bool, relative or absolute path type (defined once and applied to all the provided files)
placement: string, choose between "Site", "Origin", "Centered" or "Shared".

OUTPUT

links: Revit link instances

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

elems: var[]..[]

OUTPUT

groups: group where each element is grouped.

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

filledRegion: var[]..[]
view3D: View3D

OUTPUT

materials: var[]..[]
elements: var[]..[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

view: View3D
origin: Point[]
direction: Vector[]
categories: categories[]
nrOfIntersections: int
onlyLinks: bool

OUTPUT

distances: num[]
points: Point[]
elements: FamilyInstance[]

ProtoGeometry-𝑀⁴𝐵 PolyCurves-Simplify.
INPUT

KeySchedule: View
data: var[]

OUTPUT

schedule: View
errors: string[]
unknown: string[]

𝑀⁴𝐵 Curves.CentralizedParameters

𝑀⁴𝐵 Curves.Group

𝑀⁴𝐵 Point.StructuralPosition

𝑀⁴𝐵 PolyCurves.Simplify

ProtoGeometry
Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

curves: Curves[]..[]
pattern: double[]

OUTPUT

parameters: parameters justified as per node description

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

polyCurves: var[]..[]

OUTPUT

PolyCurves: list containing simplified polycurves

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

curves: list of curves to be collected together

OUTPUT

CGrouped: list containing sub-lists representing the set of joinable curve

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

points: var[]..[]

OUTPUT

above: grids[]
below: grids[]
left: grids[]
right: grids[]

Utilities

𝑀⁴𝐵 CentralModel.DetachAndSave

𝑀⁴𝐵 Colors.HLS_to_RGB

𝑀⁴𝐵 Colors.RGB_to_HLS

𝑀⁴𝐵 Selection-Selection

𝑀⁴𝐵 Selection.ById

𝑀⁴𝐵 Selection.GetElements

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

files: the path of all the Revit Central files you need to open as detach preserving worksets and saving in the target directory
targetDir: The directory where to save as new central all the models

OUTPUT

success: list of True and False.

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

elements: var[]..[]
refrefh: bool

OUTPUT

elements: var[]..[]
summary: String

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

hue: int[]..[]
lightness: int[]..[]
saturation: int[]..[]

OUTPUT

RGB: color[]..[]

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

_id: int[]

OUTPUT

result: the selected elements

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

RGB: color[]..[]

OUTPUT

hue: int[]..[]
lightness: int[]..[]
saturation: int[]..[]
(for each color)

Revit-𝑀⁴𝐵 Document-AllFamiliesInActive
INPUT

refresh: bool

OUTPUT

elements: currently selected elements

bottom of page