Files
dynamo-scripts/README.md

9.0 KiB

Dynamo scripts

Notes

Branches

On master branch only 2.x scripts are available.

For 1.x scripts see 1.x branch!

Naming codes

DS: Datashape ui

DP: DynamoPlayer ui

No suffix: no ui

Script state emojis

Stable

☑️ Mostly working

🐛 Some bugs

🚧 Not finished, under developement

Removed from master branch

🔻 Not upgraded to 2.x yet

Scripts

AddParametersToFamily-DS

Add multiple parameters to a currently opened family with one click. All data of the new parameters have to be the same, only the name can differ.

Required packages
  • Data-Shapes

AddSpotElevationToSelectedElements-DS ☑️ 🚧 🐛

Add spot elevations to slected elements. Select the display type of elevation (top, bottom...)

Required packages
  • Data-Shapes

AddTitleblockAsParameterToAllSheets-DP

Adds the type name of the titleblocks to each sheet as a parameter.

More info

Useful for showing the sheet size in a sheet list. The parameter have to be created beforehand, can be shared or project, must be instance and text. The name of the parameter can be modified in Player. The default parameter name is "Titleblock".

No packages requires

AppendTextToParameterValue-DP

Append text to the end of a selected parameter.

No packages requires

BuildingPadsFromElements-DS ☑️ 🚧

Create building pad from selected elements.

More info

Required packages:

  • data-shapes

Acknowledgements

The python script is written by BIMadmin and kennyb6. Source: forum.dynamobim.com.

CalculateDepartmentArea-DP

Calculate department sum area, and write it to a selected parameter.

CategoryPresentation 🚧 🔻

Places all loaded families from the selected category on a line for presentation.

TODO: ui

CreateFloorsUnderElements-DS ☑️

Same as BuldingPadsFromElements, but for floors.

Required packages:

  • data-shapes

CheckUnlimitedViewDepths

List views which has unlimited view range set

Required packages
  • Genius Loci
  • Clockwork

CopyParameterValuesToParameter-DP 🐛 🚧

Copy parameter values of a selected family to another parameter of the same family

TODO: docs

CopySectionBox-DP

Copy a section box from one view to another

Required packages
  • Rhythm

DeleteAllRefPlanes

Delete all reference planes from the project

Required packages
  • Archi-lab

DeleteRandomElements-DP

Delete random elements from selected ones. Option to add how many percent should remain.

Required packages
  • Archi-lab

DisallowJoinSelectedFrames-DP

Disallow join on both end on the selected frames

DuplicateMultipleViews-DS

Select multiple views and duplicate them

Required packages
  • Data-Shapes

DwgImportCleaner

Removes all imported dwgs

Required packages
  • Bimorph nodes
  • Archilab

ExportHeightFromPbp-DP

Exports selected category's all objects' elevation from PBP to excel. You can add an offset value for making the bounding box smaller.

FlipGridBubbles-DP

Disable the bubble on one side of the selected grids and enable on the other side. No logic, if nothing changes, change the Invert parameter.

Required packages
  • OpenStrc

FloorPresentation-DP

Places all floor types in the project

Required packages
  • Clockwork

Grid3DTo2D

Change all grids in the current view to 2D extents.

Required packages
  • OpenStrc

GridBubbleOffset-DP 🚧

Offset grid bubble heads.

ImportDwgBatch 🚧

State: same as importobj, just with dwg

ImportObjBatch-DP

Imports all objs from a folder to separate rfa files. Designed to be used with Revit Batch Processor. Also works with DinamoPlayer

More info

Required Packages

  • MeshToolkit

Batch usage

  1. Copy the .bat and the .rfa to the same folder as the objs
  2. Run obj-copy.bat
  3. If you want to change settings for the import script open the script in dynamo and modify the input values and save.
  4. In Revit batch processor select the created filelist and the dynamo script and it will create the objs inside the rfa files.

KimaiExportParser

Removed from master, see 1.x branch!

ListAllInplaceElements

Lists all inplace elements in model

Required packages
  • Clockwork
  • Spring nodes

PickNewHostMultipleRailings-DP

Pick new host for multiple railings

PrefixLoadedFamiliesBatch 🔻

Add a prefix to all loaded families' names from a selected category. Designed to be used with Revit Batch Processor

TODO: UI, docs

RenumberSheetsFromSelected-DS

Add +1 to numbers starting from the selected

More info

Add +1 to sheets from the selected, so you can add a new sheet inbetween.

Example

Your sheets numbered like this:

  • A01
  • A02
  • A03
  • ...

You want to add a new sheet numbered A02.

Run the script, select the current sheet A02, write "A" to the prefix box (without the quotation marks).

Your new sheet numbers will look like this: (Note the missing A02)

  • A01
  • A03
  • A04
  • ...

Now you can add sheet A02. It won't touch those sheets wich don't start with the aforementioned prefix.

Requirements

  • Data shapes

Revisions

AddAllRevisionsToAllSheets

Automatically add all revisions to all sheets

Required packages
  • Archi-lab

AddOneRevisionsToAllSheets-DP

Automatically add a selected revisions to all sheets

Required packages
  • Archi-lab

QuickRevisionSchedule-DP

List all revisions to a table in a new window

Required packages
  • Clockwork
  • Springs if they accept my PR...

SectionBoxToDetailLines-DP 🚧

Convert the section box of a selected 3D view to detail lines in the current view. Make sure the active view is a plan view!

Note: not working on rotated section boxes!

SubregionsToDetailLines

Convert all subregions to deatil lines in the active view.

More info

With too big numbers it freezes! Set units to meters!

Make sure the active view is not 3d

Optional packages:

  • Springs

TemporaryIsolateLevel-DP ☑️

Select a Level and isolate elements on the Level

VariableFloorToTopography-DP

Converts a selected floor to topography. Make sure the floor's height is variable!

WallPresentation-DP

Place all wall types in the project

Required packages

Clockwork

Nodes

WeekDayNumber

Deprecated nodes as prerequeites, see 1.x branch

CompoundStructureLayerWidths

Updated Clockwork's FamilyType.CompoundStructureLayers to work with Revit API 2022.

ConvertToMeter

Convert from Revit display unit to meter

Python script based on Document.LengthDisplayUnit from Data-Shapes.

GetDisplacedElements

Lists all displaced elements of a view.

ReplaceFollowingElements

Replace same elements follow each other

Documentation

Input:

  • list: a list of lists
  • searchFor: the value you want to replace if follows each other
  • replacement: string to replace the following elements
  • countUnit: on the replaced list append this value to the count of the same elements

Output:

  • replacedList: A list where all of the found following same elements replaced with the replacement
  • firstReplacedList: Only the first element is replaced, others counted and appended by the countUnit

ReplaceFollowingSameElements

Replace all following same elements in a list of lists. The differences between this and the previous node thet here you don't have to add a searchfor, itt will replace all following elements

Documentation

Input:

  • list: a list of lists
  • replacement: string to replace the following elements
  • countUnit: on the replaced list append this value to the count of the same elements

Output:

  • allReplaced: A list where all of the found following same elements replaced with the replacement
  • firstCounted: The first element replaced by the number of following elements, others replaced by the replacement
  • firstOriginal: First element is the same as before, others replaced by the replacement

Python source is included next to the .dyf